Skip to content

Commit decc815

Browse files
committed
[improve][ml] Optimization method getNumberOfEntries
1 parent 1ab6345 commit decc815

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

Diff for: managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1149,7 +1149,7 @@ public boolean hasMoreEntries() {
11491149

11501150
@Override
11511151
public long getNumberOfEntries() {
1152-
if (readPosition.compareTo(ledger.getLastPosition().getNext()) > 0) {
1152+
if (readPosition.compareTo(ledger.getLastPosition()) > 0) {
11531153
if (log.isDebugEnabled()) {
11541154
log.debug("[{}] [{}] Read position {} is ahead of last position {}. There are no entries to read",
11551155
ledger.getName(), name, readPosition, ledger.getLastPosition());

Diff for: managed-ledger/src/test/java/org/apache/bookkeeper/mledger/impl/ManagedCursorTest.java

+4
Original file line numberDiff line numberDiff line change
@@ -444,6 +444,10 @@ void readFromClosedLedger() throws Exception {
444444
void testNumberOfEntries() throws Exception {
445445
ManagedLedger ledger = factory.open("my_test_ledger", new ManagedLedgerConfig().setMaxEntriesPerLedger(2));
446446

447+
ManagedCursor c0 = ledger.openCursor("c0");
448+
assertEquals(c0.getNumberOfEntries(), 0);
449+
assertFalse(c0.hasMoreEntries());
450+
447451
ManagedCursor c1 = ledger.openCursor("c1");
448452
ledger.addEntry("dummy-entry-1".getBytes(Encoding));
449453
ManagedCursor c2 = ledger.openCursor("c2");

0 commit comments

Comments
 (0)