Skip to content

Commit 227d50c

Browse files
committed
BOOKKEEPER-879: Record ledger creation time
1 parent 94cdee6 commit 227d50c

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerMetadata.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -366,9 +366,9 @@ public static LedgerMetadata parseConfig(byte[] bytes, Version version, Long zkC
366366
LedgerMetadataFormat data = builder.build();
367367
lc.writeQuorumSize = data.getQuorumSize();
368368
if (data.hasCtime()) {
369-
lc.ctime=data.getCtime();
369+
lc.ctime = data.getCtime();
370370
} else if (zkCtime != null) {
371-
lc.ctime=zkCtime;
371+
lc.ctime = zkCtime;
372372
}
373373
if (data.hasAckQuorumSize()) {
374374
lc.ackQuorumSize = data.getAckQuorumSize();

bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -352,10 +352,14 @@ public void processResult(int rc, String path, Object ctx, byte[] data, Stat sta
352352
readCb.operationComplete(BKException.Code.ZKException, null);
353353
return;
354354
}
355-
355+
if (stat == null) {
356+
LOG.error("Could not parse ledger metadata for ledger: " + ledgerId+". Stat object is null");
357+
readCb.operationComplete(BKException.Code.ZKException, null);
358+
return;
359+
}
356360
LedgerMetadata metadata;
357361
try {
358-
metadata = LedgerMetadata.parseConfig(data, new ZkVersion(stat.getVersion()),stat.getCtime());
362+
metadata = LedgerMetadata.parseConfig(data, new ZkVersion(stat.getVersion()), stat.getCtime());
359363
} catch (IOException e) {
360364
LOG.error("Could not parse ledger metadata for ledger: " + ledgerId, e);
361365
readCb.operationComplete(BKException.Code.ZKException, null);

bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MSLedgerManagerFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,7 @@ public void complete(int rc, Versioned<Value> value, Object ctx) {
408408
LedgerMetadata metadata;
409409
try {
410410
metadata = LedgerMetadata
411-
.parseConfig(value.getValue().getField(META_FIELD), value.getVersion(),null);
411+
.parseConfig(value.getValue().getField(META_FIELD), value.getVersion(), null);
412412
} catch (IOException e) {
413413
LOG.error("Could not parse ledger metadata for ledger " + ledgerId + " : ", e);
414414
readCb.operationComplete(BKException.Code.MetaStoreException, null);

0 commit comments

Comments
 (0)