Skip to content

Debugger can cause expressions to exhaust #5

@theodox

Description

@theodox

Not quite sure what to do about this one. However I've noticed that the pyCharm debugger will force an early evaluation of a stream if you are stepping through code -- which can mean that the stream does not properly pass along it's resuilts. Here's a test example:

        markup_objects =   MarkupNode.find_markup() +  LadderMarkupNode.find_markup()
        return set(markup_objects.foreach(lambda x: x.index))

where the find_markup functions are minq queries yielding table streams. if you run this without stepping through a debugger, it works. If you step through. the first line will look like it has the proper values -- but it will return an empty set, because after you step to the second line the stream -- which is a compound of two other streams that are now out of scope -- will be exhausted.

This may be an unavoidable gotcha. Any clever ideas?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions