@InterfaceAudience.Private public abstract class ZKProcedureUtil extends ZooKeeperListener implements java.io.Closeable
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ABORT_ZNODE_DEFAULT |
protected java.lang.String |
abortZnode |
static java.lang.String |
ACQUIRED_BARRIER_ZNODE_DEFAULT |
protected java.lang.String |
acquiredZnode |
java.lang.String |
baseZNode |
static java.lang.String |
REACHED_BARRIER_ZNODE_DEFAULT |
protected java.lang.String |
reachedZnode |
watcher
Constructor and Description |
---|
ZKProcedureUtil(ZooKeeperWatcher watcher,
java.lang.String procDescription)
Top-level watcher/controller for procedures across the cluster.
|
Modifier and Type | Method and Description |
---|---|
void |
clearChildZNodes() |
void |
clearZNodes(java.lang.String procedureName) |
void |
close() |
static java.lang.String |
getAbortNode(ZKProcedureUtil controller,
java.lang.String opInstanceName)
Get the full znode path for the node used by the coordinator or member to trigger an abort
of the global barrier acquisition or execution in subprocedures.
|
java.lang.String |
getAbortZnode() |
java.lang.String |
getAbortZNode(java.lang.String opInstanceName) |
static java.lang.String |
getAcquireBarrierNode(ZKProcedureUtil controller,
java.lang.String opInstanceName)
Get the full znode path for the node used by the coordinator to trigger a global barrier
acquire on each subprocedure.
|
java.lang.String |
getAcquiredBarrier() |
java.lang.String |
getAcquiredBarrierNode(java.lang.String opInstanceName) |
java.lang.String |
getBaseZnode() |
java.lang.String |
getReachedBarrierNode(java.lang.String opInstanceName) |
static java.lang.String |
getReachedBarrierNode(ZKProcedureUtil controller,
java.lang.String opInstanceName)
Get the full znode path for the node used by the coordinator to trigger a global barrier
execution and release on each subprocedure.
|
ZooKeeperWatcher |
getWatcher() |
boolean |
isAbortPathNode(java.lang.String path)
Is this in the procedure barrier abort znode path
|
protected void |
logZKTree(java.lang.String root,
java.lang.String prefix)
Helper method to print the current state of the ZK tree.
|
nodeChildrenChanged, nodeCreated, nodeDataChanged, nodeDeleted
public static final java.lang.String ACQUIRED_BARRIER_ZNODE_DEFAULT
public static final java.lang.String REACHED_BARRIER_ZNODE_DEFAULT
public static final java.lang.String ABORT_ZNODE_DEFAULT
public final java.lang.String baseZNode
protected final java.lang.String acquiredZnode
protected final java.lang.String reachedZnode
protected final java.lang.String abortZnode
public ZKProcedureUtil(ZooKeeperWatcher watcher, java.lang.String procDescription) throws KeeperException
On instantiation, this ensures the procedure znodes exist. This however requires the passed in watcher has been started.
watcher
- watcher for the cluster ZK. Owned by this and closed via
close()
procDescription
- name of the znode describing the procedure to runKeeperException
- when the procedure znodes cannot be createdpublic void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
java.io.IOException
public java.lang.String getAcquiredBarrierNode(java.lang.String opInstanceName)
public java.lang.String getReachedBarrierNode(java.lang.String opInstanceName)
public java.lang.String getAbortZNode(java.lang.String opInstanceName)
public java.lang.String getAbortZnode()
public java.lang.String getBaseZnode()
public java.lang.String getAcquiredBarrier()
public static java.lang.String getAcquireBarrierNode(ZKProcedureUtil controller, java.lang.String opInstanceName)
controller
- controller running the procedureopInstanceName
- name of the running procedure instance (not the procedure description).public static java.lang.String getReachedBarrierNode(ZKProcedureUtil controller, java.lang.String opInstanceName)
controller
- controller running the procedureopInstanceName
- name of the running procedure instance (not the procedure description).public static java.lang.String getAbortNode(ZKProcedureUtil controller, java.lang.String opInstanceName)
controller
- controller running the procedureopInstanceName
- name of the running procedure instance (not the procedure description).public ZooKeeperWatcher getWatcher()
getWatcher
in class ZooKeeperListener
public boolean isAbortPathNode(java.lang.String path)
protected void logZKTree(java.lang.String root, java.lang.String prefix) throws KeeperException
KeeperException
- if an unexpected exception occurslogZKTree(String)
public void clearChildZNodes() throws KeeperException
KeeperException
public void clearZNodes(java.lang.String procedureName) throws KeeperException
KeeperException