Package org.apache.bookkeeper.client
Class ReadOpBase
- java.lang.Object
-
- org.apache.bookkeeper.client.ReadOpBase
-
- All Implemented Interfaces:
java.lang.Runnable
- Direct Known Subclasses:
BatchedReadOp,PendingReadOp
public abstract class ReadOpBase extends java.lang.Object implements java.lang.Runnable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classReadOpBase.LedgerEntryRequestprotected static classReadOpBase.ReadContext
-
Field Summary
Fields Modifier and Type Field Description protected booleanallowFailFastprotected ClientContextclientCtxprotected java.util.concurrent.atomic.AtomicBooleancomplete(package private) longendEntryIdprotected java.util.concurrent.CompletableFuture<LedgerEntries>futureprotected java.util.Set<BookieId>heardFromHostsprotected java.util.BitSetheardFromHostsBitSetprotected booleanisRecoveryRead(package private) LedgerHandlelh(package private) longnumPendingEntriesprotected longrequestTimeNanosprotected intrequiredBookiesMissingEntryForRecoveryprotected java.util.Set<BookieId>sentToHostsprotected java.util.concurrent.ScheduledFuture<?>speculativeTaskprotected longstartEntryId
-
Constructor Summary
Constructors Modifier Constructor Description protectedReadOpBase(LedgerHandle lh, ClientContext clientCtx, long startEntryId, long endEntryId, boolean isRecoveryRead)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) voidallowFailFastOnUnwritableChannel()protected voidcancelSpeculativeTask(boolean mayInterruptIfRunning)(package private) java.util.concurrent.CompletableFuture<LedgerEntries>future()protected LedgerMetadatagetLedgerMetadata()java.util.concurrent.ScheduledFuture<?>getSpeculativeTask()(package private) abstract voidinitiate()voidrun()voidsubmit()protected abstract voidsubmitCallback(int code)
-
-
-
Field Detail
-
speculativeTask
protected java.util.concurrent.ScheduledFuture<?> speculativeTask
-
future
protected final java.util.concurrent.CompletableFuture<LedgerEntries> future
-
heardFromHosts
protected final java.util.Set<BookieId> heardFromHosts
-
heardFromHostsBitSet
protected final java.util.BitSet heardFromHostsBitSet
-
sentToHosts
protected final java.util.Set<BookieId> sentToHosts
-
lh
LedgerHandle lh
-
clientCtx
protected ClientContext clientCtx
-
startEntryId
protected final long startEntryId
-
requestTimeNanos
protected long requestTimeNanos
-
requiredBookiesMissingEntryForRecovery
protected final int requiredBookiesMissingEntryForRecovery
-
isRecoveryRead
protected final boolean isRecoveryRead
-
complete
protected final java.util.concurrent.atomic.AtomicBoolean complete
-
allowFailFast
protected boolean allowFailFast
-
numPendingEntries
long numPendingEntries
-
endEntryId
final long endEntryId
-
-
Constructor Detail
-
ReadOpBase
protected ReadOpBase(LedgerHandle lh, ClientContext clientCtx, long startEntryId, long endEntryId, boolean isRecoveryRead)
-
-
Method Detail
-
getLedgerMetadata
protected LedgerMetadata getLedgerMetadata()
-
cancelSpeculativeTask
protected void cancelSpeculativeTask(boolean mayInterruptIfRunning)
-
getSpeculativeTask
public java.util.concurrent.ScheduledFuture<?> getSpeculativeTask()
-
future
java.util.concurrent.CompletableFuture<LedgerEntries> future()
-
allowFailFastOnUnwritableChannel
void allowFailFastOnUnwritableChannel()
-
submit
public void submit()
-
run
public void run()
- Specified by:
runin interfacejava.lang.Runnable
-
initiate
abstract void initiate()
-
submitCallback
protected abstract void submitCallback(int code)
-
-