Missing scope for frame
arosien opened this issue · 4 comments
arosien commented
Consistently happens in jpeg.dfdl.xsd with works.jpg.
arosien commented
Log prior to error:
2021-06-17 12:22:13,057 [io-compute-6] DEBUG d.d.d.DAPodil - R> #34 next {"threadId":1}
2021-06-17 12:22:13,058 [io-compute-6] DEBUG d.d.d.DAPSession - <R #34 next null
2021-06-17 12:22:13,059 [io-compute-1] DEBUG d.d.d.DAPSession - <E stopped step
2021-06-17 12:22:13,061 [io-compute-3] DEBUG d.d.d.Parse - post-control await
2021-06-17 12:22:13,062 [io-compute-4] DEBUG d.d.d.DAPSession - <E output
2021-06-17 12:22:13,063 [io-compute-5] DEBUG d.d.d.DAPodil - R> #35 threads null
2021-06-17 12:22:13,064 [io-compute-5] DEBUG d.d.d.DAPSession - <R #35 threads {"threads":[{"id":1,"name":"daffodil"}]}
2021-06-17 12:22:13,068 [io-compute-5] DEBUG d.d.d.DAPodil - R> #36 stackTrace {"threadId":1,"startFrame":0,"levels":20}
2021-06-17 12:22:13,068 [io-compute-5] DEBUG d.d.d.DAPSession - <R #36 stackTrace {"stackFrames":[{"id":3,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":52,"column":0,"name":"DataBlob"},{"id":2,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":49,"column":0,"name":"Segment"},{"id":1,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":2,"column":0,"name":"JFIF"},{"id":0,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":2,"column":0,"name":"JFIF"}],"totalFrames":4}
2021-06-17 12:22:13,070 [io-compute-6] DEBUG d.d.d.Parse - pre-offer
2021-06-17 12:22:13,070 [io-compute-6] DEBUG d.d.d.Parse - pre-checkBreakpoints
2021-06-17 12:22:13,070 [io-compute-6] DEBUG d.d.d.Parse - pre-control await
2021-06-17 12:22:13,087 [io-compute-6] DEBUG d.d.d.DAPodil - R> #37 scopes {"frameId":3}
2021-06-17 12:22:13,088 [io-compute-6] DEBUG d.d.d.DAPSession - <R #37 scopes null
arosien commented
There's a race: frame 3 was popped off and frame 4 was pushed on, but the UI then fetched frame 3. pre-offer
is where the push happened, but where's the pop?
arosien commented
Parse.Debugee.step
invokes control.step
and then delivers the Debugee.State.Stopped
event, but control.step
shouldn't return until the data from the step has been committed (currently it races it).
arosien commented
Reopening, happens on frame 4 consistently now:
2021-07-07 15:27:59,413 [io-compute-7] DEBUG d.d.d.DAPodil - R> #42 threads null
2021-07-07 15:27:59,414 [io-compute-7] DEBUG d.d.d.DAPSession - <R #42 threads {"threads":[{"id":1,"name":"daffodil"}]}
2021-07-07 15:27:59,424 [io-compute-3] DEBUG d.d.d.DAPodil - R> #43 stackTrace {"threadId":1,"startFrame":0,"levels":20}
2021-07-07 15:27:59,425 [io-compute-3] DEBUG d.d.d.DAPSession - <R #43 stackTrace {"stackFrames":[{"id":4,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":52,"column":0,"name":"DataBlob"},{"id":3,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":49,"column":0,"name":"Segment"},{"id":2,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":2,"column":0,"name":"JFIF"},{"id":1,"source":{"name":"jpeg.dfdl.xsd","path":"file:///Users/arosien/nteligen/example-daffodil-debug/src/main/resources/jpeg.dfdl.xsd","sourceReference":0},"line":2,"column":0,"name":"JFIF"}],"totalFrames":4}
2021-07-07 15:27:59,435 [io-compute-5] DEBUG d.d.d.Parse - pre-offer
2021-07-07 15:27:59,435 [io-compute-5] DEBUG d.d.d.Parse - pre-checkBreakpoints
2021-07-07 15:27:59,435 [io-compute-5] DEBUG d.d.d.Parse - pre-control await
2021-07-07 15:27:59,436 [io-compute-5] DEBUG d.d.d.Parse - waiting to be continued...
2021-07-07 15:27:59,450 [io-compute-4] DEBUG d.d.d.DAPodil - R> #44 scopes {"frameId":4}
2021-07-07 15:27:59,453 [io-compute-4] WARN d.d.d.DAPodil - couldn't find scopes for frame 4: List((Id(5),Fill), (Id(3),Segment), (Id(2),JFIF), (Id(1),JFIF))
2021-07-07 15:27:59,453 [io-compute-4] DEBUG d.d.d.DAPSession - <R #44 scopes null