while (entries.hasNext()) { LedgerEntry ledgerEntry = entries.next(); lastEntry = ledgerEntry.getEntryId(); if (log.isDebugEnabled()) { log.debug(" Read entry {} from ledger {} for cursor {}", lastEntry, ledgerId, cursorName);
private void simpleReadEntries(LedgerHandle lh, long fromEntryId, long untilEntryId) throws Exception { Enumeration<LedgerEntry> entries = lh.readEntries(fromEntryId, untilEntryId); long i = fromEntryId; System.out.println("Entries:"); while (entries.hasMoreElements()) { LedgerEntry entry = entries.nextElement(); System.out.println("\t" + i + "(eid=" + entry.getEntryId() + ")\t: "); Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(0L, 0L) .setEntryId(entry.getEntryId()) .setInputStream(entry.getEntryInputStream()) .setEnvelopeEntry(LogSegmentMetadata.supportsEnvelopedEntries(metadataVersion)) .buildReader(); printEntry(reader); ++i; } }
&& (nextReadAheadPosition.getEntryId() == entry.getEntryId()) && (nextReadAheadPosition.getLedgerId() == entry.getLedgerId())) { if (lastConfirmed <= 4 && conf.getTraceReadAheadMetadataChanges()) { LOG.info("Hit readLastConfirmedAndEntry for {} at {} : entry = {}, lac = {}, position = {}.", new Object[] { fullyQualifiedName, System.currentTimeMillis(), entry.getEntryId(), lastConfirmed, nextReadAheadPosition }); readAheadCache.set(new LedgerReadPosition(entry.getLedgerId(), currentLH.getLogSegmentSequenceNo(), entry.getEntryId()), entry, null != ctx ? ctx.toString() : "", currentMetadata.getEnvelopeEntries(), currentMetadata.getStartSequenceId()); new Object[] { currentMetadata, fullyQualifiedName, entry.getEntryId() });
nextReadAheadPosition.advance(); LedgerEntry e = seq.nextElement(); LedgerReadPosition readPosition = new LedgerReadPosition(e.getLedgerId(), currentMetadata.getLogSegmentSequenceNumber(), e.getEntryId()); readAheadCache.set(readPosition, e, null != ctx ? ctx.toString() : "", currentMetadata.getEnvelopeEntries(), currentMetadata.getStartSequenceId());
} else { LedgerEntry lastEntry = entries.get(entries.size() - 1); lastEntryId = lastEntry.getEntryId();
@Test public void simpleTest() throws Exception { LedgerHandle ledger = bkc.createLedger(DigestType.MAC, SECRET.getBytes()); long ledgerId = ledger.getId(); log.info("Writing to ledger: {}", ledgerId); for (int i = 0; i < 10; i++) { String content = "entry-" + i; ledger.addEntry(content.getBytes(Encoding)); } ledger.close(); ledger = bkc.openLedger(ledgerId, DigestType.MAC, SECRET.getBytes()); Enumeration<LedgerEntry> entries = ledger.readEntries(0, 9); while (entries.hasMoreElements()) { LedgerEntry entry = entries.nextElement(); String content = new String(entry.getEntry(), Encoding); log.info("Entry {} lenght={} content='{}'", entry.getEntryId(), entry.getLength(), content); } ledger.close(); }
Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(segment.getLogSegmentSequenceNumber(), segment.getStartSequenceId()) .setEntryId(lastEntry.getEntryId()) .setEnvelopeEntry(LogSegmentMetadata.supportsEnvelopedEntries(segment.getVersion())) .setInputStream(lastEntry.getEntryInputStream())
.setLogSegmentInfo(metadata.getLogSegmentSequenceNumber(), metadata.getStartSequenceId()) .setEntryId(entry.getEntryId()) .setEnvelopeEntry( LogSegmentMetadata.supportsEnvelopedEntries(metadata.getVersion()))
Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(readPosition.getLogSegmentSequenceNumber(), startSequenceId) .setEntryId(ledgerEntry.getEntryId()) .setEnvelopeEntry(envelopeEntries) .deserializeRecordSet(deserializeRecordSet)
Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(logSegmentSeqNo, metadata.getStartSequenceId()) .setEntryId(entry.getEntryId()) .setEnvelopeEntry(metadata.getEnvelopeEntries()) .setInputStream(entry.getEntryInputStream())
@SneakyThrows(IOException.class) ReadItem(LedgerEntry entry, LedgerMetadata ledgerMetadata) { this.address = new LedgerAddress(ledgerMetadata, entry.getEntryId()); this.payload = entry.getEntryInputStream(); this.length = this.payload.available(); }
public static EntryImpl create(LedgerEntry ledgerEntry) { EntryImpl entry = RECYCLER.get(); entry.ledgerId = ledgerEntry.getLedgerId(); entry.entryId = ledgerEntry.getEntryId(); entry.data = ledgerEntry.getEntryBuffer(); entry.data.retain(); entry.setRefCnt(1); return entry; }
while (entries.hasNext()) { LedgerEntry ledgerEntry = entries.next(); lastEntry = ledgerEntry.getEntryId(); if (log.isDebugEnabled()) { log.debug(" Read entry {} from ledger {} for cursor {}", lastEntry, ledgerId, cursorName);
private void simpleReadEntries(LedgerHandle lh, long fromEntryId, long untilEntryId) throws Exception { Enumeration<LedgerEntry> entries = lh.readEntries(fromEntryId, untilEntryId); long i = fromEntryId; System.out.println("Entries:"); while (entries.hasMoreElements()) { LedgerEntry entry = entries.nextElement(); System.out.println("\t" + i + "(eid=" + entry.getEntryId() + ")\t: "); Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(0L, 0L) .setEntryId(entry.getEntryId()) .setEntry(entry.getEntryBuffer()) .setEnvelopeEntry(LogSegmentMetadata.supportsEnvelopedEntries(metadataVersion)) .buildReader(); entry.getEntryBuffer().release(); printEntry(reader); ++i; } }
/** * Format the entry into a readable format. * * @param entry * ledgerentry to print * @param printMsg * Whether printing the message body */ private void formatEntry(LedgerEntry entry, boolean printMsg) { long ledgerId = entry.getLedgerId(); long entryId = entry.getEntryId(); long entrySize = entry.getLength(); System.out.println("--------- Lid=" + ledgerIdFormatter.formatLedgerId(ledgerId) + ", Eid=" + entryId + ", EntrySize=" + entrySize + " ---------"); if (printMsg) { entryFormatter.formatEntry(entry.getEntry()); } }
void processReadEntries(int rc, LedgerHandle lh, Enumeration<LedgerEntry> entries, Object ctx) { if (isDone()) { return; } if (!checkReturnCodeAndHandleFailure(rc, false)) { return; } LedgerEntry entry = null; while (entries.hasMoreElements()) { // more entries are returned if (null != entry) { completeExceptionally(BKException.Code.UnexpectedConditionException); return; } entry = entries.nextElement(); } if (null == entry || entry.getEntryId() != entryId) { completeExceptionally(BKException.Code.UnexpectedConditionException); return; } complete(entry); }
public static LastConfirmedAndEntryImpl create(long lac, org.apache.bookkeeper.client.LedgerEntry entry) { LastConfirmedAndEntryImpl entryImpl = RECYCLER.get(); entryImpl.lac = lac; if (null == entry) { entryImpl.entry = null; } else { entryImpl.entry = LedgerEntryImpl.create( entry.getLedgerId(), entry.getEntryId(), entry.getLength(), entry.getEntryBuffer()); } return entryImpl; }
Entry.Reader processReadEntry(LedgerEntry entry) throws IOException { return Entry.newBuilder() .setLogSegmentInfo(lssn, startSequenceId) .setEntryId(entry.getEntryId()) .setEnvelopeEntry(envelopeEntries) .deserializeRecordSet(deserializeRecordSet) .setEntry(entry.getEntryBuffer()) .buildReader(); }
Entry.Reader processReadEntry(LedgerEntry entry) throws IOException { return Entry.newBuilder() .setLogSegmentInfo(lssn, startSequenceId) .setEntryId(entry.getEntryId()) .setEnvelopeEntry(envelopeEntries) .deserializeRecordSet(deserializeRecordSet) .setEntry(entry.getEntryBuffer()) .buildReader(); }
Entry.Reader reader = Entry.newBuilder() .setLogSegmentInfo(segment.getLogSegmentSequenceNumber(), segment.getStartSequenceId()) .setEntryId(lastEntry.getEntryId()) .setEnvelopeEntry(LogSegmentMetadata.supportsEnvelopedEntries(segment.getVersion())) .setEntry(lastEntry.getEntryBuffer())