Skip to content

Commit ea3b294

Browse files
fix(metadataimage): fix getObjects not complete cf when throw exception (AutoMQ#1764)
* fix(controller): npe when cleanup scale in node * fix(metadataimage): fix getObjects not complete cf when throw exception * fix(metadataimage): fix getObjects not complete cf when throw exception * fix(metadataimage): fix getObjects not complete cf when throw exception * fix(metadataimage): fix getObjects not complete cf when throw exception fix comment
1 parent 9665ffb commit ea3b294

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

metadata/src/main/java/org/apache/kafka/image/S3StreamsMetadataImage.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import java.util.Optional;
3838
import java.util.Set;
3939
import java.util.concurrent.CompletableFuture;
40+
import java.util.concurrent.ConcurrentHashMap;
4041
import java.util.stream.Collectors;
4142
import org.apache.kafka.common.Uuid;
4243
import org.apache.kafka.common.metadata.AssignedStreamIdRecord;
@@ -258,6 +259,7 @@ void fillObjects0(
258259
} else {
259260
streamSetObjects = Collections.emptyList();
260261
}
262+
261263
CompletableFuture<Integer> startSearchIndexCf = getStartSearchIndex(node, nextStartOffset, ctx);
262264
final int finalLastRangeIndex = lastRangeIndex;
263265
final long finalNextStartOffset = nextStartOffset;
@@ -643,7 +645,7 @@ static class GetObjectsContext {
643645
LocalStreamRangeIndexCache indexCache;
644646

645647
CompletableFuture<InRangeObjects> cf = new CompletableFuture<>();
646-
Map<Long, Optional<StreamOffsetRange>> object2range = new HashMap<>();
648+
Map<Long, Optional<StreamOffsetRange>> object2range = new ConcurrentHashMap<>();
647649
List<String> debugContext = new ArrayList<>();
648650

649651
GetObjectsContext(long streamId, long startOffset, long endOffset, int limit,

0 commit comments

Comments
 (0)