HBASE-8998 TestSnapshotCloneIndependence.testOnlineSnapshotMetadataChangesIndependent fails

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1504933 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2013-07-19 16:28:36 +00:00
parent 49368f26d6
commit 54c1e1b517
3 changed files with 15 additions and 7 deletions

View File

@ -293,7 +293,7 @@ public class Procedure implements Callable<Void>, ForeignExceptionListener {
* @param member
*/
public void barrierAcquiredByMember(String member) {
LOG.debug("member: '" + member + "' joining prepared barrier for procedure '" + procName
LOG.debug("member: '" + member + "' joining acquired barrier for procedure '" + procName
+ "' on coordinator");
if (this.acquiringMembers.contains(member)) {
synchronized (joinBarrierLock) {

View File

@ -164,14 +164,15 @@ public class ProcedureCoordinator {
Future<Void> f = null;
try {
synchronized (procedures) {
f = this.pool.submit(proc);
// if everything got started properly, we can add it known running procedures
this.procedures.put(procName, proc);
f = this.pool.submit(proc);
}
return true;
} catch (RejectedExecutionException e) {
LOG.warn("Procedure " + procName + " rejected by execution pool. Propagating error and " +
"cancelling operation.", e);
// Remove the procedure from the list since is not started
this.procedures.remove(procName);
// the thread pool is full and we can't run the procedure
proc.receive(new ForeignException(procName, e));
@ -258,9 +259,12 @@ public class ProcedureCoordinator {
*/
void memberAcquiredBarrier(String procName, final String member) {
Procedure proc = procedures.get(procName);
if (proc != null) {
proc.barrierAcquiredByMember(member);
if (proc == null) {
LOG.warn("Member '"+ member +"' is trying to acquire an unknown procedure '"+ procName +"'");
return;
}
proc.barrierAcquiredByMember(member);
}
/**
@ -271,9 +275,11 @@ public class ProcedureCoordinator {
*/
void memberFinishedBarrier(String procName, final String member) {
Procedure proc = procedures.get(procName);
if (proc != null) {
proc.barrierReleasedByMember(member);
if (proc == null) {
LOG.warn("Member '"+ member +"' is trying to release an unknown procedure '"+ procName +"'");
return;
}
proc.barrierReleasedByMember(member);
}
/**

View File

@ -182,6 +182,8 @@ public class ZKProcedureCoordinatorRpcs implements ProcedureCoordinatorRpcs {
ZKUtil.getNodeName(path));
} else if (isAbortPathNode(path)) {
abort(path);
} else {
LOG.debug("Ignoring created notification for node:" + path);
}
}
};