DPL Analysis: add exception for unsorted unassigned groups#7998
Conversation
If unassigned groups are in incorrect order (or split), fast grouping is invalid due to incorrect offsets, so the execution should stop.
|
The change itself is fine, but can we remove the templating of sliceByColumn? |
|
Yes, but it needs some changes in other places, I have it on my todo list. |
There was a problem hiding this comment.
This is fine but does not catch broken groups, right?
So 1 1 1 2 2 2 -1 -1 2 2 will not trigger any assert right?
What keeping last_positive, last_negative and prev
- if cur == prev do nothing, else:
- if cur >= 0 && cur <= last_positive then assert
- if cur < 0 && cur >= last_negative then assert
- else continue and set last_positive / last_negative
|
@jgrosseo something like this? |
jgrosseo
left a comment
There was a problem hiding this comment.
Why it does not assert on startup without changing lastPos to start from -1 and lastNeg from 0?
|
I think if we start with -1, it should give an assert right away... |
|
You are right, the first iteration needs a special care. |
|
Setting all initial values to 0 should prevent any of the exceptional conditions triggering when parsing the initial |
If unassigned groups are in incorrect order (or split), fast grouping is invalid due to incorrect offsets, so the execution should stop.