Skip to content
11 changes: 6 additions & 5 deletions core/src/main/java/kafka/automq/failover/FailoverListener.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,14 +80,15 @@ private Optional<FailoverContext[]> getContexts(MetadataDelta delta) {
.map(kv -> kv.get(FailoverConstants.FAILOVER_KEY))
.map(this::decodeContexts);
}

private FailoverContext[] decodeContexts(ByteBuffer byteBuffer) {
byteBuffer.slice();
byte[] data = new byte[byteBuffer.remaining()];
byteBuffer.get(data);
private FailoverContext[] decodeContexts(ByteBuffer byteBuffer) {
ByteBuffer slice = byteBuffer.slice();
byte[] data = new byte[slice.remaining()];
slice.get(data);
return JsonUtils.decode(new String(data, StandardCharsets.UTF_8), FailoverContext[].class);
}


private void onContextsChange(FailoverContext[] contexts) {
Set<FailedNode> oldFailedNodes = recovering.keySet();
Set<FailedNode> newFailedNodes = Arrays.stream(contexts)
Expand Down
Loading