Protect OverlapWindowPlugin against empty chunks #212
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As discovered by @jorana, strax's OverlapWindowPlugin crashes with an IndexError if an empty chunk is found in the data stream. In general strax is not very robust against this case (see #162), but we are improving.
You can read how OverlapWindowPlugin works here. For an empty chunk, this PR changes strax to simply not send or discard any data; the input/output caches remain the same. The case of the last chunk (after which you must send everything even it if is empty) is already handled by the
iter
method.This escaped the property-based testing due to a spurious condition in the test (I guess I just didn't consider empty chunks would be possible) that is now removed.
(This also removes some old but totally unrelated commented code)