@InterfaceAudience.Private @InterfaceStability.Evolving class RootProcedureState<TEnvironment> extends Object
Long rootProcId = getRootProcedureId(proc); rollbackStack.get(rootProcId).acquire(proc) rollbackStack.get(rootProcId).release(proc) ...
Modifier and Type | Class and Description |
---|---|
private static class |
RootProcedureState.State |
Modifier and Type | Field and Description |
---|---|
private static org.slf4j.Logger |
LOG |
private boolean |
rollbackSupported |
private int |
running |
private RootProcedureState.State |
state |
private Set<Procedure<TEnvironment>> |
subprocs |
private ArrayList<Procedure<TEnvironment>> |
subprocStack |
Constructor and Description |
---|
RootProcedureState() |
Modifier and Type | Method and Description |
---|---|
protected void |
abort() |
protected boolean |
acquire(Procedure<TEnvironment> proc)
Called by the ProcedureExecutor to mark the procedure step as running.
|
protected boolean |
addRollbackStep(Procedure<TEnvironment> proc)
Called by the ProcedureExecutor after the procedure step is completed, to add the step to the
rollback list (or procedure stack).
|
protected void |
addSubProcedure(Procedure<TEnvironment> proc) |
protected RemoteProcedureException |
getException() |
protected long[] |
getSubprocedureIds() |
protected List<Procedure<TEnvironment>> |
getSubproceduresStack() |
protected Collection<Procedure<TEnvironment>> |
getSubprocs() |
protected boolean |
isFailed() |
protected boolean |
isRollbackSupported() |
protected boolean |
isRollingback() |
protected boolean |
isValid()
Called on store load by the ProcedureExecutor to validate the procedure stack.
|
protected void |
loadStack(Procedure<TEnvironment> proc)
Called on store load by the ProcedureExecutor to load part of the stack.
|
protected void |
release(Procedure<TEnvironment> proc)
Called by the ProcedureExecutor to mark the procedure step as finished.
|
protected boolean |
setRollback()
Called by the ProcedureExecutor to mark rollback execution
|
protected void |
setRollbackSupported(boolean rollbackSupported) |
protected void |
unsetRollback()
Called by the ProcedureExecutor to mark rollback execution
|
private static final org.slf4j.Logger LOG
private Set<Procedure<TEnvironment>> subprocs
private ArrayList<Procedure<TEnvironment>> subprocStack
private RootProcedureState.State state
private int running
private boolean rollbackSupported
RootProcedureState()
protected boolean isFailed()
protected boolean isRollingback()
protected boolean setRollback()
protected void unsetRollback()
protected void setRollbackSupported(boolean rollbackSupported)
protected boolean isRollbackSupported()
protected long[] getSubprocedureIds()
protected Collection<Procedure<TEnvironment>> getSubprocs()
protected List<Procedure<TEnvironment>> getSubproceduresStack()
protected RemoteProcedureException getException()
protected boolean acquire(Procedure<TEnvironment> proc)
protected void release(Procedure<TEnvironment> proc)
protected void abort()
protected boolean addRollbackStep(Procedure<TEnvironment> proc)
Return whether we successfully added the rollback step. If the root procedure has already crossed the PONR, we do not need to maintain the rollback step,
protected void addSubProcedure(Procedure<TEnvironment> proc)
protected void loadStack(Procedure<TEnvironment> proc)
protected boolean isValid()
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.