mreutegg commented on code in PR #2393:
URL: https://github.com/apache/jackrabbit-oak/pull/2393#discussion_r2240032857
##########
oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/SegmentTarReader.java:
##########
@@ -129,25 +128,18 @@ public static Index loadAndValidateIndex(RandomAccessFile
file, String name) thr
}
@Override
- public Buffer getGraph() throws IOException {
+ public @NotNull SegmentGraph getGraph() throws IOException {
int end = access.length() - 2 * BLOCK_SIZE - getIndexEntrySize();
- Buffer graph = GraphLoader.loadGraph((whence, amount) ->
access.read(end - whence, amount));
- hasGraph = graph != null;
- return graph;
- }
-
- @Override
- public boolean hasGraph() {
- if (hasGraph == null) {
- try {
- getGraph();
- } catch (IOException ignore) { }
+ SegmentGraph graph = SegmentGraph.load((whence, amount) ->
access.read(end - whence, amount));
+ if (graph == null) {
+ log.warn("Recomputing missing graph for {}.", name);
+ graph = SegmentGraph.compute(this);
}
- return hasGraph;
+ return graph;
}
@Override
- public Buffer getBinaryReferences() throws IOException {
+ public @NotNull Buffer getBinaryReferences() throws IOException {
Review Comment:
Why is this annotated with `NotNull`? What happens when a tar file does not
have binary references?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]