Skip to content

oncoredocker.py write() missing return after ZMQ send, falls through to file I/O #338

@avinxshKD

Description

@avinxshKD

This is the same bug that was fixed in concore.py via #238 / PR #242, but the fix was never applied to... concoredocker.py.

In concoredocker.py write() (around line 276), after a successful ZMQ send there's no return. Execution keeps going into the file-based write block, which calls int(port_identifier) on a ZMQ string name like "FUNBODY_REP_1" and throws a ValueError, logging a bogus error on every single ZMQ write


if isinstance(port_identifier, str) and port_identifier in zmq_ports:
    zmq_p = zmq_ports[port_identifier]
    try:
        zmq_p.send_json_with_retry(val)
    except ...
    # no return — falls through

try:
    file_port_num = int(port_identifier)  # blows up on ZMQ names

Compare with concore.py line ~395 which now correctly has return after the ZMQ block.

Also, the ZMQ path here sends raw val without prepending simtime + delta , that was separately fixed in concore.py via #244 / PR #258, but again never in concoredocker.py.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions