Package org.apache.bookkeeper.client
Class ReadLastConfirmedAndEntryOp
java.lang.Object
org.apache.bookkeeper.client.ReadLastConfirmedAndEntryOp
- All Implemented Interfaces:
SpeculativeRequestExecutor,BookkeeperInternalCallbacks.ReadEntryCallback
class ReadLastConfirmedAndEntryOp
extends Object
implements BookkeeperInternalCallbacks.ReadEntryCallback, SpeculativeRequestExecutor
Long poll read operation.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static interfaceWrapper to get all recovered data from the request.(package private) class(package private) class(package private) class -
Field Summary
FieldsModifier and TypeFieldDescription(package private) final BitSet(package private) final BitSet(package private) static final org.slf4j.Logger(package private) final int(package private) boolean(package private) ReadLastConfirmedAndEntryOp.ReadLACAndEntryRequest(package private) final AtomicBoolean(package private) final long -
Constructor Summary
ConstructorsConstructorDescriptionReadLastConfirmedAndEntryOp(LedgerHandle lh, ClientContext clientCtx, List<BookieId> ensemble, ReadLastConfirmedAndEntryOp.LastConfirmedAndEntryCallback cb, long prevEntryId, long timeOutInMillis) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcancelSpeculativeTask(boolean mayInterruptIfRunning) protected LedgerMetadatavoidinitiate()com.google.common.util.concurrent.ListenableFuture<Boolean>Speculative Read Logic.(package private) ReadLastConfirmedAndEntryOpparallelRead(boolean enabled) voidreadEntryComplete(int rc, long ledgerId, long entryId, io.netty.buffer.ByteBuf buffer, Object ctx) (package private) voidsendReadTo(int bookieIndex, BookieId to, ReadLastConfirmedAndEntryOp.ReadLACAndEntryRequest entry) toString()
-
Field Details
-
LOG
static final org.slf4j.Logger LOG -
request
-
heardFromHostsBitSet
-
emptyResponsesFromHostsBitSet
-
maxMissedReadsAllowed
final int maxMissedReadsAllowed -
parallelRead
boolean parallelRead -
requestComplete
-
requestTimeNano
final long requestTimeNano
-
-
Constructor Details
-
ReadLastConfirmedAndEntryOp
ReadLastConfirmedAndEntryOp(LedgerHandle lh, ClientContext clientCtx, List<BookieId> ensemble, ReadLastConfirmedAndEntryOp.LastConfirmedAndEntryCallback cb, long prevEntryId, long timeOutInMillis)
-
-
Method Details
-
getLedgerMetadata
-
parallelRead
-
cancelSpeculativeTask
protected void cancelSpeculativeTask(boolean mayInterruptIfRunning) -
issueSpeculativeRequest
Speculative Read Logic.- Specified by:
issueSpeculativeRequestin interfaceSpeculativeRequestExecutor- Returns:
- whether more speculative requests should be issued
-
initiate
public void initiate() -
sendReadTo
void sendReadTo(int bookieIndex, BookieId to, ReadLastConfirmedAndEntryOp.ReadLACAndEntryRequest entry) throws InterruptedException - Throws:
InterruptedException
-
readEntryComplete
public void readEntryComplete(int rc, long ledgerId, long entryId, io.netty.buffer.ByteBuf buffer, Object ctx) - Specified by:
readEntryCompletein interfaceBookkeeperInternalCallbacks.ReadEntryCallback
-
toString
-