This is an automated email from the ASF dual-hosted git repository.

shoothzj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new c2cfdf3cb6 Fix incorrect metadata state in MockLedgerHandle close 
method (#4443)
c2cfdf3cb6 is described below

commit c2cfdf3cb61b0952adc36833190a6c5095441aba
Author: ZhangJian He <[email protected]>
AuthorDate: Wed Jun 19 11:41:06 2024 +0800

    Fix incorrect metadata state in MockLedgerHandle close method (#4443)
    
    Fix #1413
    
    ## Changes
    
    change ledger state to close when close metadata
---
 .../test/java/org/apache/bookkeeper/client/MockLedgerHandle.java  | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git 
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MockLedgerHandle.java
 
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MockLedgerHandle.java
index f693c78783..660bf0f80c 100644
--- 
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MockLedgerHandle.java
+++ 
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MockLedgerHandle.java
@@ -80,6 +80,14 @@ public class MockLedgerHandle extends LedgerHandle {
             return;
         }
 
+        LedgerMetadata metadata = getLedgerMetadata();
+        metadata = LedgerMetadataBuilder.from(metadata)
+                .withClosedState()
+                .withLastEntryId(lastEntry)
+                .withLength(length)
+                .build();
+        setLedgerMetadata(getVersionedLedgerMetadata(), new 
Versioned<>(metadata, new LongVersion(1L)));
+
         fenced = true;
         try {
             executeOrdered(() -> cb.closeComplete(0, this, ctx));

Reply via email to