mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 15:19:59 +07:00
+ There are cases there assert is violated, but the cases themselves are legitimate: .needsCompacting could be changed during a read (because lazy snapshot is loaded), which could run in parallel with flush() because only readLock is involved in both operations. This does not violate the container state, though: container could save its state as either full snapshot, or a diff -- both representations are correct (added tests for that). There are still doubts about possible data races presented there, but at least there are no more them than were before. GitOrigin-RevId: 527fb9b16b81094fcee1c972745687b12a9a4473