New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue 6683: LTS - Fix thread visibility issues #6687
Issue 6683: LTS - Fix thread visibility issues #6687
Conversation
Codecov Report
@@ Coverage Diff @@
## master #6687 +/- ##
=========================================
Coverage 86.35% 86.36%
- Complexity 15805 15808 +3
=========================================
Files 1024 1024
Lines 59036 59035 -1
Branches 5968 5967 -1
=========================================
+ Hits 50979 50984 +5
+ Misses 4933 4925 -8
- Partials 3124 3126 +2
Continue to review full report at Codecov.
|
Signed-off-by: Sachin Joshi <sachin.joshi@emc.com>
e2f3635
to
366b900
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you think that there could be other points in SLTS that may suffer from the same issue? Also, please run system tests on this change.
We did fix several of these during beta testing - #5665 |
@sachin-j-joshi apart from running system tests, is there anything missing from this PR? I assume you have synced up with @tkaitchuck on this change, right? |
Putting it in draft mode - |
Signed-off-by: Sachin Joshi <sachin.joshi@emc.com>
…f Collections.synchronizedList(new ArrayList<>()) Signed-off-by: Sachin Joshi <sachin.joshi@emc.com>
…e-6683-LTS-fix-system-jounal-S3-flaky-test
…s://github.com/sachin-j-joshi/pravega into issue-6683-LTS-fix-system-jounal-S3-flaky-test
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Outdated
Show resolved
Hide resolved
…ronized blocks. Signed-off-by: Sachin Joshi <sachin.joshi@emc.com>
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
...tstore/storage/src/main/java/io/pravega/segmentstore/storage/metadata/BaseMetadataStore.java
Outdated
Show resolved
Hide resolved
…nge. Signed-off-by: Sachin Joshi <sachin.joshi@emc.com>
…e-6683-LTS-fix-system-jounal-S3-flaky-test
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving with comments
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
...entstore/storage/src/main/java/io/pravega/segmentstore/storage/chunklayer/SystemJournal.java
Show resolved
Hide resolved
…e-6683-LTS-fix-system-jounal-S3-flaky-test
System tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of minor questions before merging.
Signed-off-by: Sachin Joshi sachin.joshi@emc.com
Change log description
Issue 6683: LTS - Fix possible thread visibility issue with SystemJournal serialization.
Purpose of the change
Fixes #6683
What the code does
RevisionDataInput::readCollection
returnsArrayList
which is not thread safe. ReturnVector
instead.Collections.synchronizedList(new ArrayList<ExtendedChunkInfo>());
withnew Vector()
in all SLTS codeFutures.loop
more thread-safeNote -
Vector
) data guaranteed to be flushed correctly.How to verify it
All tests should pass.