This is an automated email from the ASF dual-hosted git repository.
kturner pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/main by this push:
new e786409dc5 Removes coordinator cancel RPC (#6243)
e786409dc5 is described below
commit e786409dc520ed956c223fd7bb1f25105b047c3c
Author: Keith Turner <[email protected]>
AuthorDate: Wed Mar 25 10:03:51 2026 -0700
Removes coordinator cancel RPC (#6243)
Modified the command that calls this to instead reach out directly to
the compactor. This change is made in support of #6217, it removes a
useage of the running cahce and it simplifies the coordinators RPCs.
---
.../util/compaction/ExternalCompactionUtil.java | 28 +
.../thrift/CompactionCoordinatorService.java | 1271 --------------------
core/src/main/thrift/compaction-coordinator.thrift | 9 -
.../accumulo/server/util/CancelCompaction.java | 28 +-
.../coordinator/CompactionCoordinator.java | 24 -
5 files changed, 43 insertions(+), 1317 deletions(-)
diff --git
a/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
b/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
index b526150c50..b11285c0e3 100644
---
a/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
+++
b/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
@@ -19,6 +19,7 @@
package org.apache.accumulo.core.util.compaction;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
+import static
org.apache.accumulo.core.metadata.schema.TabletMetadata.ColumnType.ECOMP;
import static
org.apache.accumulo.core.util.threads.ThreadPoolNames.COMPACTOR_RUNNING_COMPACTIONS_POOL;
import static
org.apache.accumulo.core.util.threads.ThreadPoolNames.COMPACTOR_RUNNING_COMPACTION_IDS_POOL;
@@ -47,6 +48,8 @@ import
org.apache.accumulo.core.lock.ServiceLockData.ThriftService;
import org.apache.accumulo.core.lock.ServiceLockPaths.AddressSelector;
import org.apache.accumulo.core.lock.ServiceLockPaths.ResourceGroupPredicate;
import org.apache.accumulo.core.lock.ServiceLockPaths.ServiceLockPath;
+import org.apache.accumulo.core.metadata.schema.Ample;
+import org.apache.accumulo.core.metadata.schema.CompactionMetadata;
import org.apache.accumulo.core.metadata.schema.ExternalCompactionId;
import org.apache.accumulo.core.rpc.RpcFuture;
import org.apache.accumulo.core.rpc.ThriftUtil;
@@ -313,4 +316,29 @@ public class ExternalCompactionUtil {
ThriftUtil.returnClient(client, context);
}
}
+
+ public static Optional<HostAndPort>
findCompactorRunningCompaction(ClientContext context,
+ ExternalCompactionId ecid) {
+ for (var level : Ample.DataLevel.values()) {
+ var compactor = findCompactorRunningCompaction(context, level, ecid);
+ if (compactor.isPresent()) {
+ return compactor;
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ private static Optional<HostAndPort>
findCompactorRunningCompaction(ClientContext context,
+ Ample.DataLevel level, ExternalCompactionId ecid) {
+ try (var tablets =
context.getAmple().readTablets().forLevel(level).fetch(ECOMP).build()) {
+ Optional<Map.Entry<ExternalCompactionId,CompactionMetadata>> ecomp =
+ tablets.stream().flatMap(tm ->
tm.getExternalCompactions().entrySet().stream())
+ .filter(e -> e.getKey().equals(ecid)).findFirst();
+ return ecomp.map(entry ->
HostAndPort.fromString(entry.getValue().getCompactorId()));
+ } catch (Exception e) {
+ throw new IllegalStateException("Exception calling cancel compaction for
" + ecid, e);
+ }
+ }
+
}
diff --git
a/core/src/main/thrift-gen-java/org/apache/accumulo/core/compaction/thrift/CompactionCoordinatorService.java
b/core/src/main/thrift-gen-java/org/apache/accumulo/core/compaction/thrift/CompactionCoordinatorService.java
index 927f26b84b..5117723ee0 100644
---
a/core/src/main/thrift-gen-java/org/apache/accumulo/core/compaction/thrift/CompactionCoordinatorService.java
+++
b/core/src/main/thrift-gen-java/org/apache/accumulo/core/compaction/thrift/CompactionCoordinatorService.java
@@ -39,8 +39,6 @@ public class CompactionCoordinatorService {
public TExternalCompactionMap
getRunningCompactions(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials) throws
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException,
org.apache.thrift.TException;
- public void cancel(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId) throws
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException,
org.apache.thrift.TException;
-
public void
recordCompletion(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId) throws org.apache.thrift.TException;
}
@@ -57,8 +55,6 @@ public class CompactionCoordinatorService {
public void
getRunningCompactions(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
org.apache.thrift.async.AsyncMethodCallback<TExternalCompactionMap>
resultHandler) throws org.apache.thrift.TException;
- public void cancel(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws
org.apache.thrift.TException;
-
public void
recordCompletion(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws
org.apache.thrift.TException;
}
@@ -248,35 +244,6 @@ public class CompactionCoordinatorService {
throw new
org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT,
"getRunningCompactions failed: unknown result");
}
- @Override
- public void cancel(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId) throws
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException,
org.apache.thrift.TException
- {
- send_cancel(tinfo, credentials, externalCompactionId);
- recv_cancel();
- }
-
- public void send_cancel(org.apache.accumulo.core.clientImpl.thrift.TInfo
tinfo, org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId) throws org.apache.thrift.TException
- {
- cancel_args args = new cancel_args();
- args.setTinfo(tinfo);
- args.setCredentials(credentials);
- args.setExternalCompactionId(externalCompactionId);
- sendBase("cancel", args);
- }
-
- public void recv_cancel() throws
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException,
org.apache.thrift.TException
- {
- cancel_result result = new cancel_result();
- receiveBase(result, "cancel");
- if (result.sec != null) {
- throw result.sec;
- }
- if (result.tnase != null) {
- throw result.tnase;
- }
- return;
- }
-
@Override
public void
recordCompletion(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId) throws org.apache.thrift.TException
{
@@ -555,48 +522,6 @@ public class CompactionCoordinatorService {
}
}
- @Override
- public void cancel(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws
org.apache.thrift.TException {
- checkReady();
- cancel_call method_call = new cancel_call(tinfo, credentials,
externalCompactionId, resultHandler, this, ___protocolFactory, ___transport);
- this.___currentMethod = method_call;
- ___manager.call(method_call);
- }
-
- public static class cancel_call extends
org.apache.thrift.async.TAsyncMethodCall<Void> {
- private org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo;
- private org.apache.accumulo.core.securityImpl.thrift.TCredentials
credentials;
- private java.lang.String externalCompactionId;
- public cancel_call(org.apache.accumulo.core.clientImpl.thrift.TInfo
tinfo, org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler,
org.apache.thrift.async.TAsyncClient client,
org.apache.thrift.protocol.TProtocolFactory protocolFactory,
org.apache.thrift.transport.TNonblockingTransport transport) throws
org.apache.thrift.TException {
- super(client, protocolFactory, transport, resultHandler, false);
- this.tinfo = tinfo;
- this.credentials = credentials;
- this.externalCompactionId = externalCompactionId;
- }
-
- @Override
- public void write_args(org.apache.thrift.protocol.TProtocol prot) throws
org.apache.thrift.TException {
- prot.writeMessageBegin(new
org.apache.thrift.protocol.TMessage("cancel",
org.apache.thrift.protocol.TMessageType.CALL, 0));
- cancel_args args = new cancel_args();
- args.setTinfo(tinfo);
- args.setCredentials(credentials);
- args.setExternalCompactionId(externalCompactionId);
- args.write(prot);
- prot.writeMessageEnd();
- }
-
- @Override
- public Void getResult() throws
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException,
org.apache.thrift.TException {
- if (getState() !=
org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
- throw new java.lang.IllegalStateException("Method call not
finished!");
- }
- org.apache.thrift.transport.TMemoryInputTransport memoryTransport =
new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
- org.apache.thrift.protocol.TProtocol prot =
client.getProtocolFactory().getProtocol(memoryTransport);
- (new Client(prot)).recv_cancel();
- return null;
- }
- }
-
@Override
public void
recordCompletion(org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
java.lang.String externalCompactionId,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws
org.apache.thrift.TException {
checkReady();
@@ -656,7 +581,6 @@ public class CompactionCoordinatorService {
processMap.put("updateCompactionStatus", new updateCompactionStatus());
processMap.put("compactionFailed", new compactionFailed());
processMap.put("getRunningCompactions", new getRunningCompactions());
- processMap.put("cancel", new cancel());
processMap.put("recordCompletion", new recordCompletion());
return processMap;
}
@@ -831,40 +755,6 @@ public class CompactionCoordinatorService {
}
}
- public static class cancel<I extends Iface> extends
org.apache.thrift.ProcessFunction<I, cancel_args> {
- public cancel() {
- super("cancel");
- }
-
- @Override
- public cancel_args getEmptyArgsInstance() {
- return new cancel_args();
- }
-
- @Override
- protected boolean isOneway() {
- return false;
- }
-
- @Override
- protected boolean rethrowUnhandledExceptions() {
- return false;
- }
-
- @Override
- public cancel_result getResult(I iface, cancel_args args) throws
org.apache.thrift.TException {
- cancel_result result = new cancel_result();
- try {
- iface.cancel(args.tinfo, args.credentials,
args.externalCompactionId);
- } catch
(org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException sec) {
- result.sec = sec;
- } catch
(org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException
tnase) {
- result.tnase = tnase;
- }
- return result;
- }
- }
-
public static class recordCompletion<I extends Iface> extends
org.apache.thrift.ProcessFunction<I, recordCompletion_args> {
public recordCompletion() {
super("recordCompletion");
@@ -910,7 +800,6 @@ public class CompactionCoordinatorService {
processMap.put("updateCompactionStatus", new updateCompactionStatus());
processMap.put("compactionFailed", new compactionFailed());
processMap.put("getRunningCompactions", new getRunningCompactions());
- processMap.put("cancel", new cancel());
processMap.put("recordCompletion", new recordCompletion());
return processMap;
}
@@ -1287,80 +1176,6 @@ public class CompactionCoordinatorService {
}
}
- public static class cancel<I extends AsyncIface> extends
org.apache.thrift.AsyncProcessFunction<I, cancel_args, Void> {
- public cancel() {
- super("cancel");
- }
-
- @Override
- public cancel_args getEmptyArgsInstance() {
- return new cancel_args();
- }
-
- @Override
- public org.apache.thrift.async.AsyncMethodCallback<Void>
getResultHandler(final
org.apache.thrift.server.AbstractNonblockingServer.AsyncFrameBuffer fb, final
int seqid) {
- final org.apache.thrift.AsyncProcessFunction fcall = this;
- return new org.apache.thrift.async.AsyncMethodCallback<Void>() {
- @Override
- public void onComplete(Void o) {
- cancel_result result = new cancel_result();
- try {
- fcall.sendResponse(fb, result,
org.apache.thrift.protocol.TMessageType.REPLY,seqid);
- } catch (org.apache.thrift.transport.TTransportException e) {
- _LOGGER.error("TTransportException writing to internal frame
buffer", e);
- fb.close();
- } catch (java.lang.Exception e) {
- _LOGGER.error("Exception writing to internal frame buffer", e);
- onError(e);
- }
- }
- @Override
- public void onError(java.lang.Exception e) {
- byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
- org.apache.thrift.TSerializable msg;
- cancel_result result = new cancel_result();
- if (e instanceof
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException) {
- result.sec =
(org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException) e;
- result.setSecIsSet(true);
- msg = result;
- } else if (e instanceof
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException) {
- result.tnase =
(org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException) e;
- result.setTnaseIsSet(true);
- msg = result;
- } else if (e instanceof
org.apache.thrift.transport.TTransportException) {
- _LOGGER.error("TTransportException inside handler", e);
- fb.close();
- return;
- } else if (e instanceof org.apache.thrift.TApplicationException) {
- _LOGGER.error("TApplicationException inside handler", e);
- msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
- msg = (org.apache.thrift.TApplicationException)e;
- } else {
- _LOGGER.error("Exception inside handler", e);
- msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
- msg = new
org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR,
e.getMessage());
- }
- try {
- fcall.sendResponse(fb,msg,msgType,seqid);
- } catch (java.lang.Exception ex) {
- _LOGGER.error("Exception writing to internal frame buffer", ex);
- fb.close();
- }
- }
- };
- }
-
- @Override
- protected boolean isOneway() {
- return false;
- }
-
- @Override
- public void start(I iface, cancel_args args,
org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws
org.apache.thrift.TException {
- iface.cancel(args.tinfo, args.credentials,
args.externalCompactionId,resultHandler);
- }
- }
-
public static class recordCompletion<I extends AsyncIface> extends
org.apache.thrift.AsyncProcessFunction<I, recordCompletion_args, Void> {
public recordCompletion() {
super("recordCompletion");
@@ -8344,1092 +8159,6 @@ public class CompactionCoordinatorService {
}
}
- @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
- public static class cancel_args implements
org.apache.thrift.TBase<cancel_args, cancel_args._Fields>,
java.io.Serializable, Cloneable, Comparable<cancel_args> {
- private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new
org.apache.thrift.protocol.TStruct("cancel_args");
-
- private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC =
new org.apache.thrift.protocol.TField("tinfo",
org.apache.thrift.protocol.TType.STRUCT, (short)1);
- private static final org.apache.thrift.protocol.TField
CREDENTIALS_FIELD_DESC = new org.apache.thrift.protocol.TField("credentials",
org.apache.thrift.protocol.TType.STRUCT, (short)2);
- private static final org.apache.thrift.protocol.TField
EXTERNAL_COMPACTION_ID_FIELD_DESC = new
org.apache.thrift.protocol.TField("externalCompactionId",
org.apache.thrift.protocol.TType.STRING, (short)3);
-
- private static final org.apache.thrift.scheme.SchemeFactory
STANDARD_SCHEME_FACTORY = new cancel_argsStandardSchemeFactory();
- private static final org.apache.thrift.scheme.SchemeFactory
TUPLE_SCHEME_FACTORY = new cancel_argsTupleSchemeFactory();
-
- public @org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo; // required
- public @org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials; //
required
- public @org.apache.thrift.annotation.Nullable java.lang.String
externalCompactionId; // required
-
- /** The set of fields this struct contains, along with convenience methods
for finding and manipulating them. */
- public enum _Fields implements org.apache.thrift.TFieldIdEnum {
- TINFO((short)1, "tinfo"),
- CREDENTIALS((short)2, "credentials"),
- EXTERNAL_COMPACTION_ID((short)3, "externalCompactionId");
-
- private static final java.util.Map<java.lang.String, _Fields> byName =
new java.util.HashMap<java.lang.String, _Fields>();
-
- static {
- for (_Fields field : java.util.EnumSet.allOf(_Fields.class)) {
- byName.put(field.getFieldName(), field);
- }
- }
-
- /**
- * Find the _Fields constant that matches fieldId, or null if its not
found.
- */
- @org.apache.thrift.annotation.Nullable
- public static _Fields findByThriftId(int fieldId) {
- switch(fieldId) {
- case 1: // TINFO
- return TINFO;
- case 2: // CREDENTIALS
- return CREDENTIALS;
- case 3: // EXTERNAL_COMPACTION_ID
- return EXTERNAL_COMPACTION_ID;
- default:
- return null;
- }
- }
-
- /**
- * Find the _Fields constant that matches fieldId, throwing an exception
- * if it is not found.
- */
- public static _Fields findByThriftIdOrThrow(int fieldId) {
- _Fields fields = findByThriftId(fieldId);
- if (fields == null) throw new
java.lang.IllegalArgumentException("Field " + fieldId + " doesn't exist!");
- return fields;
- }
-
- /**
- * Find the _Fields constant that matches name, or null if its not found.
- */
- @org.apache.thrift.annotation.Nullable
- public static _Fields findByName(java.lang.String name) {
- return byName.get(name);
- }
-
- private final short _thriftId;
- private final java.lang.String _fieldName;
-
- _Fields(short thriftId, java.lang.String fieldName) {
- _thriftId = thriftId;
- _fieldName = fieldName;
- }
-
- @Override
- public short getThriftFieldId() {
- return _thriftId;
- }
-
- @Override
- public java.lang.String getFieldName() {
- return _fieldName;
- }
- }
-
- // isset id assignments
- public static final java.util.Map<_Fields,
org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
- static {
- java.util.Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap
= new java.util.EnumMap<_Fields,
org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
- tmpMap.put(_Fields.TINFO, new
org.apache.thrift.meta_data.FieldMetaData("tinfo",
org.apache.thrift.TFieldRequirementType.DEFAULT,
- new
org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT,
org.apache.accumulo.core.clientImpl.thrift.TInfo.class)));
- tmpMap.put(_Fields.CREDENTIALS, new
org.apache.thrift.meta_data.FieldMetaData("credentials",
org.apache.thrift.TFieldRequirementType.DEFAULT,
- new
org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT,
org.apache.accumulo.core.securityImpl.thrift.TCredentials.class)));
- tmpMap.put(_Fields.EXTERNAL_COMPACTION_ID, new
org.apache.thrift.meta_data.FieldMetaData("externalCompactionId",
org.apache.thrift.TFieldRequirementType.DEFAULT,
- new
org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
- metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
-
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(cancel_args.class,
metaDataMap);
- }
-
- public cancel_args() {
- }
-
- public cancel_args(
- org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo,
- org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials,
- java.lang.String externalCompactionId)
- {
- this();
- this.tinfo = tinfo;
- this.credentials = credentials;
- this.externalCompactionId = externalCompactionId;
- }
-
- /**
- * Performs a deep copy on <i>other</i>.
- */
- public cancel_args(cancel_args other) {
- if (other.isSetTinfo()) {
- this.tinfo = new
org.apache.accumulo.core.clientImpl.thrift.TInfo(other.tinfo);
- }
- if (other.isSetCredentials()) {
- this.credentials = new
org.apache.accumulo.core.securityImpl.thrift.TCredentials(other.credentials);
- }
- if (other.isSetExternalCompactionId()) {
- this.externalCompactionId = other.externalCompactionId;
- }
- }
-
- @Override
- public cancel_args deepCopy() {
- return new cancel_args(this);
- }
-
- @Override
- public void clear() {
- this.tinfo = null;
- this.credentials = null;
- this.externalCompactionId = null;
- }
-
- @org.apache.thrift.annotation.Nullable
- public org.apache.accumulo.core.clientImpl.thrift.TInfo getTinfo() {
- return this.tinfo;
- }
-
- public cancel_args setTinfo(@org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.TInfo tinfo) {
- this.tinfo = tinfo;
- return this;
- }
-
- public void unsetTinfo() {
- this.tinfo = null;
- }
-
- /** Returns true if field tinfo is set (has been assigned a value) and
false otherwise */
- public boolean isSetTinfo() {
- return this.tinfo != null;
- }
-
- public void setTinfoIsSet(boolean value) {
- if (!value) {
- this.tinfo = null;
- }
- }
-
- @org.apache.thrift.annotation.Nullable
- public org.apache.accumulo.core.securityImpl.thrift.TCredentials
getCredentials() {
- return this.credentials;
- }
-
- public cancel_args setCredentials(@org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.securityImpl.thrift.TCredentials credentials) {
- this.credentials = credentials;
- return this;
- }
-
- public void unsetCredentials() {
- this.credentials = null;
- }
-
- /** Returns true if field credentials is set (has been assigned a value)
and false otherwise */
- public boolean isSetCredentials() {
- return this.credentials != null;
- }
-
- public void setCredentialsIsSet(boolean value) {
- if (!value) {
- this.credentials = null;
- }
- }
-
- @org.apache.thrift.annotation.Nullable
- public java.lang.String getExternalCompactionId() {
- return this.externalCompactionId;
- }
-
- public cancel_args
setExternalCompactionId(@org.apache.thrift.annotation.Nullable java.lang.String
externalCompactionId) {
- this.externalCompactionId = externalCompactionId;
- return this;
- }
-
- public void unsetExternalCompactionId() {
- this.externalCompactionId = null;
- }
-
- /** Returns true if field externalCompactionId is set (has been assigned a
value) and false otherwise */
- public boolean isSetExternalCompactionId() {
- return this.externalCompactionId != null;
- }
-
- public void setExternalCompactionIdIsSet(boolean value) {
- if (!value) {
- this.externalCompactionId = null;
- }
- }
-
- @Override
- public void setFieldValue(_Fields field,
@org.apache.thrift.annotation.Nullable java.lang.Object value) {
- switch (field) {
- case TINFO:
- if (value == null) {
- unsetTinfo();
- } else {
- setTinfo((org.apache.accumulo.core.clientImpl.thrift.TInfo)value);
- }
- break;
-
- case CREDENTIALS:
- if (value == null) {
- unsetCredentials();
- } else {
-
setCredentials((org.apache.accumulo.core.securityImpl.thrift.TCredentials)value);
- }
- break;
-
- case EXTERNAL_COMPACTION_ID:
- if (value == null) {
- unsetExternalCompactionId();
- } else {
- setExternalCompactionId((java.lang.String)value);
- }
- break;
-
- }
- }
-
- @org.apache.thrift.annotation.Nullable
- @Override
- public java.lang.Object getFieldValue(_Fields field) {
- switch (field) {
- case TINFO:
- return getTinfo();
-
- case CREDENTIALS:
- return getCredentials();
-
- case EXTERNAL_COMPACTION_ID:
- return getExternalCompactionId();
-
- }
- throw new java.lang.IllegalStateException();
- }
-
- /** Returns true if field corresponding to fieldID is set (has been
assigned a value) and false otherwise */
- @Override
- public boolean isSet(_Fields field) {
- if (field == null) {
- throw new java.lang.IllegalArgumentException();
- }
-
- switch (field) {
- case TINFO:
- return isSetTinfo();
- case CREDENTIALS:
- return isSetCredentials();
- case EXTERNAL_COMPACTION_ID:
- return isSetExternalCompactionId();
- }
- throw new java.lang.IllegalStateException();
- }
-
- @Override
- public boolean equals(java.lang.Object that) {
- if (that instanceof cancel_args)
- return this.equals((cancel_args)that);
- return false;
- }
-
- public boolean equals(cancel_args that) {
- if (that == null)
- return false;
- if (this == that)
- return true;
-
- boolean this_present_tinfo = true && this.isSetTinfo();
- boolean that_present_tinfo = true && that.isSetTinfo();
- if (this_present_tinfo || that_present_tinfo) {
- if (!(this_present_tinfo && that_present_tinfo))
- return false;
- if (!this.tinfo.equals(that.tinfo))
- return false;
- }
-
- boolean this_present_credentials = true && this.isSetCredentials();
- boolean that_present_credentials = true && that.isSetCredentials();
- if (this_present_credentials || that_present_credentials) {
- if (!(this_present_credentials && that_present_credentials))
- return false;
- if (!this.credentials.equals(that.credentials))
- return false;
- }
-
- boolean this_present_externalCompactionId = true &&
this.isSetExternalCompactionId();
- boolean that_present_externalCompactionId = true &&
that.isSetExternalCompactionId();
- if (this_present_externalCompactionId ||
that_present_externalCompactionId) {
- if (!(this_present_externalCompactionId &&
that_present_externalCompactionId))
- return false;
- if (!this.externalCompactionId.equals(that.externalCompactionId))
- return false;
- }
-
- return true;
- }
-
- @Override
- public int hashCode() {
- int hashCode = 1;
-
- hashCode = hashCode * 8191 + ((isSetTinfo()) ? 131071 : 524287);
- if (isSetTinfo())
- hashCode = hashCode * 8191 + tinfo.hashCode();
-
- hashCode = hashCode * 8191 + ((isSetCredentials()) ? 131071 : 524287);
- if (isSetCredentials())
- hashCode = hashCode * 8191 + credentials.hashCode();
-
- hashCode = hashCode * 8191 + ((isSetExternalCompactionId()) ? 131071 :
524287);
- if (isSetExternalCompactionId())
- hashCode = hashCode * 8191 + externalCompactionId.hashCode();
-
- return hashCode;
- }
-
- @Override
- public int compareTo(cancel_args other) {
- if (!getClass().equals(other.getClass())) {
- return getClass().getName().compareTo(other.getClass().getName());
- }
-
- int lastComparison = 0;
-
- lastComparison = java.lang.Boolean.compare(isSetTinfo(),
other.isSetTinfo());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetTinfo()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo,
other.tinfo);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
- lastComparison = java.lang.Boolean.compare(isSetCredentials(),
other.isSetCredentials());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetCredentials()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
- lastComparison = java.lang.Boolean.compare(isSetExternalCompactionId(),
other.isSetExternalCompactionId());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetExternalCompactionId()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.externalCompactionId,
other.externalCompactionId);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
- return 0;
- }
-
- @org.apache.thrift.annotation.Nullable
- @Override
- public _Fields fieldForId(int fieldId) {
- return _Fields.findByThriftId(fieldId);
- }
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol iprot) throws
org.apache.thrift.TException {
- scheme(iprot).read(iprot, this);
- }
-
- @Override
- public void write(org.apache.thrift.protocol.TProtocol oprot) throws
org.apache.thrift.TException {
- scheme(oprot).write(oprot, this);
- }
-
- @Override
- public java.lang.String toString() {
- java.lang.StringBuilder sb = new java.lang.StringBuilder("cancel_args(");
- boolean first = true;
-
- sb.append("tinfo:");
- if (this.tinfo == null) {
- sb.append("null");
- } else {
- sb.append(this.tinfo);
- }
- first = false;
- if (!first) sb.append(", ");
- sb.append("credentials:");
- if (this.credentials == null) {
- sb.append("null");
- } else {
- sb.append(this.credentials);
- }
- first = false;
- if (!first) sb.append(", ");
- sb.append("externalCompactionId:");
- if (this.externalCompactionId == null) {
- sb.append("null");
- } else {
- sb.append(this.externalCompactionId);
- }
- first = false;
- sb.append(")");
- return sb.toString();
- }
-
- public void validate() throws org.apache.thrift.TException {
- // check for required fields
- // check for sub-struct validity
- if (tinfo != null) {
- tinfo.validate();
- }
- if (credentials != null) {
- credentials.validate();
- }
- }
-
- private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
- try {
- write(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(out)));
- } catch (org.apache.thrift.TException te) {
- throw new java.io.IOException(te);
- }
- }
-
- private void readObject(java.io.ObjectInputStream in) throws
java.io.IOException, java.lang.ClassNotFoundException {
- try {
- read(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(in)));
- } catch (org.apache.thrift.TException te) {
- throw new java.io.IOException(te);
- }
- }
-
- private static class cancel_argsStandardSchemeFactory implements
org.apache.thrift.scheme.SchemeFactory {
- @Override
- public cancel_argsStandardScheme getScheme() {
- return new cancel_argsStandardScheme();
- }
- }
-
- private static class cancel_argsStandardScheme extends
org.apache.thrift.scheme.StandardScheme<cancel_args> {
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol iprot, cancel_args
struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TField schemeField;
- iprot.readStructBegin();
- while (true)
- {
- schemeField = iprot.readFieldBegin();
- if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
- break;
- }
- switch (schemeField.id) {
- case 1: // TINFO
- if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT)
{
- struct.tinfo = new
org.apache.accumulo.core.clientImpl.thrift.TInfo();
- struct.tinfo.read(iprot);
- struct.setTinfoIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
- case 2: // CREDENTIALS
- if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT)
{
- struct.credentials = new
org.apache.accumulo.core.securityImpl.thrift.TCredentials();
- struct.credentials.read(iprot);
- struct.setCredentialsIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
- case 3: // EXTERNAL_COMPACTION_ID
- if (schemeField.type == org.apache.thrift.protocol.TType.STRING)
{
- struct.externalCompactionId = iprot.readString();
- struct.setExternalCompactionIdIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
- default:
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- iprot.readFieldEnd();
- }
- iprot.readStructEnd();
-
- // check for required fields of primitive type, which can't be checked
in the validate method
- struct.validate();
- }
-
- @Override
- public void write(org.apache.thrift.protocol.TProtocol oprot,
cancel_args struct) throws org.apache.thrift.TException {
- struct.validate();
-
- oprot.writeStructBegin(STRUCT_DESC);
- if (struct.tinfo != null) {
- oprot.writeFieldBegin(TINFO_FIELD_DESC);
- struct.tinfo.write(oprot);
- oprot.writeFieldEnd();
- }
- if (struct.credentials != null) {
- oprot.writeFieldBegin(CREDENTIALS_FIELD_DESC);
- struct.credentials.write(oprot);
- oprot.writeFieldEnd();
- }
- if (struct.externalCompactionId != null) {
- oprot.writeFieldBegin(EXTERNAL_COMPACTION_ID_FIELD_DESC);
- oprot.writeString(struct.externalCompactionId);
- oprot.writeFieldEnd();
- }
- oprot.writeFieldStop();
- oprot.writeStructEnd();
- }
-
- }
-
- private static class cancel_argsTupleSchemeFactory implements
org.apache.thrift.scheme.SchemeFactory {
- @Override
- public cancel_argsTupleScheme getScheme() {
- return new cancel_argsTupleScheme();
- }
- }
-
- private static class cancel_argsTupleScheme extends
org.apache.thrift.scheme.TupleScheme<cancel_args> {
-
- @Override
- public void write(org.apache.thrift.protocol.TProtocol prot, cancel_args
struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TTupleProtocol oprot =
(org.apache.thrift.protocol.TTupleProtocol) prot;
- java.util.BitSet optionals = new java.util.BitSet();
- if (struct.isSetTinfo()) {
- optionals.set(0);
- }
- if (struct.isSetCredentials()) {
- optionals.set(1);
- }
- if (struct.isSetExternalCompactionId()) {
- optionals.set(2);
- }
- oprot.writeBitSet(optionals, 3);
- if (struct.isSetTinfo()) {
- struct.tinfo.write(oprot);
- }
- if (struct.isSetCredentials()) {
- struct.credentials.write(oprot);
- }
- if (struct.isSetExternalCompactionId()) {
- oprot.writeString(struct.externalCompactionId);
- }
- }
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol prot, cancel_args
struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TTupleProtocol iprot =
(org.apache.thrift.protocol.TTupleProtocol) prot;
- java.util.BitSet incoming = iprot.readBitSet(3);
- if (incoming.get(0)) {
- struct.tinfo = new
org.apache.accumulo.core.clientImpl.thrift.TInfo();
- struct.tinfo.read(iprot);
- struct.setTinfoIsSet(true);
- }
- if (incoming.get(1)) {
- struct.credentials = new
org.apache.accumulo.core.securityImpl.thrift.TCredentials();
- struct.credentials.read(iprot);
- struct.setCredentialsIsSet(true);
- }
- if (incoming.get(2)) {
- struct.externalCompactionId = iprot.readString();
- struct.setExternalCompactionIdIsSet(true);
- }
- }
- }
-
- private static <S extends org.apache.thrift.scheme.IScheme> S
scheme(org.apache.thrift.protocol.TProtocol proto) {
- return
(org.apache.thrift.scheme.StandardScheme.class.equals(proto.getScheme()) ?
STANDARD_SCHEME_FACTORY : TUPLE_SCHEME_FACTORY).getScheme();
- }
- }
-
- @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
- public static class cancel_result implements
org.apache.thrift.TBase<cancel_result, cancel_result._Fields>,
java.io.Serializable, Cloneable, Comparable<cancel_result> {
- private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new
org.apache.thrift.protocol.TStruct("cancel_result");
-
- private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC =
new org.apache.thrift.protocol.TField("sec",
org.apache.thrift.protocol.TType.STRUCT, (short)1);
- private static final org.apache.thrift.protocol.TField TNASE_FIELD_DESC =
new org.apache.thrift.protocol.TField("tnase",
org.apache.thrift.protocol.TType.STRUCT, (short)2);
-
- private static final org.apache.thrift.scheme.SchemeFactory
STANDARD_SCHEME_FACTORY = new cancel_resultStandardSchemeFactory();
- private static final org.apache.thrift.scheme.SchemeFactory
TUPLE_SCHEME_FACTORY = new cancel_resultTupleSchemeFactory();
-
- public @org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException sec; //
required
- public @org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException
tnase; // required
-
- /** The set of fields this struct contains, along with convenience methods
for finding and manipulating them. */
- public enum _Fields implements org.apache.thrift.TFieldIdEnum {
- SEC((short)1, "sec"),
- TNASE((short)2, "tnase");
-
- private static final java.util.Map<java.lang.String, _Fields> byName =
new java.util.HashMap<java.lang.String, _Fields>();
-
- static {
- for (_Fields field : java.util.EnumSet.allOf(_Fields.class)) {
- byName.put(field.getFieldName(), field);
- }
- }
-
- /**
- * Find the _Fields constant that matches fieldId, or null if its not
found.
- */
- @org.apache.thrift.annotation.Nullable
- public static _Fields findByThriftId(int fieldId) {
- switch(fieldId) {
- case 1: // SEC
- return SEC;
- case 2: // TNASE
- return TNASE;
- default:
- return null;
- }
- }
-
- /**
- * Find the _Fields constant that matches fieldId, throwing an exception
- * if it is not found.
- */
- public static _Fields findByThriftIdOrThrow(int fieldId) {
- _Fields fields = findByThriftId(fieldId);
- if (fields == null) throw new
java.lang.IllegalArgumentException("Field " + fieldId + " doesn't exist!");
- return fields;
- }
-
- /**
- * Find the _Fields constant that matches name, or null if its not found.
- */
- @org.apache.thrift.annotation.Nullable
- public static _Fields findByName(java.lang.String name) {
- return byName.get(name);
- }
-
- private final short _thriftId;
- private final java.lang.String _fieldName;
-
- _Fields(short thriftId, java.lang.String fieldName) {
- _thriftId = thriftId;
- _fieldName = fieldName;
- }
-
- @Override
- public short getThriftFieldId() {
- return _thriftId;
- }
-
- @Override
- public java.lang.String getFieldName() {
- return _fieldName;
- }
- }
-
- // isset id assignments
- public static final java.util.Map<_Fields,
org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
- static {
- java.util.Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap
= new java.util.EnumMap<_Fields,
org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
- tmpMap.put(_Fields.SEC, new
org.apache.thrift.meta_data.FieldMetaData("sec",
org.apache.thrift.TFieldRequirementType.DEFAULT,
- new
org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT,
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException.class)));
- tmpMap.put(_Fields.TNASE, new
org.apache.thrift.meta_data.FieldMetaData("tnase",
org.apache.thrift.TFieldRequirementType.DEFAULT,
- new
org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT,
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException.class)));
- metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
-
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(cancel_result.class,
metaDataMap);
- }
-
- public cancel_result() {
- }
-
- public cancel_result(
- org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException sec,
-
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException
tnase)
- {
- this();
- this.sec = sec;
- this.tnase = tnase;
- }
-
- /**
- * Performs a deep copy on <i>other</i>.
- */
- public cancel_result(cancel_result other) {
- if (other.isSetSec()) {
- this.sec = new
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException(other.sec);
- }
- if (other.isSetTnase()) {
- this.tnase = new
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException(other.tnase);
- }
- }
-
- @Override
- public cancel_result deepCopy() {
- return new cancel_result(this);
- }
-
- @Override
- public void clear() {
- this.sec = null;
- this.tnase = null;
- }
-
- @org.apache.thrift.annotation.Nullable
- public org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException
getSec() {
- return this.sec;
- }
-
- public cancel_result setSec(@org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException sec) {
- this.sec = sec;
- return this;
- }
-
- public void unsetSec() {
- this.sec = null;
- }
-
- /** Returns true if field sec is set (has been assigned a value) and false
otherwise */
- public boolean isSetSec() {
- return this.sec != null;
- }
-
- public void setSecIsSet(boolean value) {
- if (!value) {
- this.sec = null;
- }
- }
-
- @org.apache.thrift.annotation.Nullable
- public
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException
getTnase() {
- return this.tnase;
- }
-
- public cancel_result setTnase(@org.apache.thrift.annotation.Nullable
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException
tnase) {
- this.tnase = tnase;
- return this;
- }
-
- public void unsetTnase() {
- this.tnase = null;
- }
-
- /** Returns true if field tnase is set (has been assigned a value) and
false otherwise */
- public boolean isSetTnase() {
- return this.tnase != null;
- }
-
- public void setTnaseIsSet(boolean value) {
- if (!value) {
- this.tnase = null;
- }
- }
-
- @Override
- public void setFieldValue(_Fields field,
@org.apache.thrift.annotation.Nullable java.lang.Object value) {
- switch (field) {
- case SEC:
- if (value == null) {
- unsetSec();
- } else {
-
setSec((org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException)value);
- }
- break;
-
- case TNASE:
- if (value == null) {
- unsetTnase();
- } else {
-
setTnase((org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException)value);
- }
- break;
-
- }
- }
-
- @org.apache.thrift.annotation.Nullable
- @Override
- public java.lang.Object getFieldValue(_Fields field) {
- switch (field) {
- case SEC:
- return getSec();
-
- case TNASE:
- return getTnase();
-
- }
- throw new java.lang.IllegalStateException();
- }
-
- /** Returns true if field corresponding to fieldID is set (has been
assigned a value) and false otherwise */
- @Override
- public boolean isSet(_Fields field) {
- if (field == null) {
- throw new java.lang.IllegalArgumentException();
- }
-
- switch (field) {
- case SEC:
- return isSetSec();
- case TNASE:
- return isSetTnase();
- }
- throw new java.lang.IllegalStateException();
- }
-
- @Override
- public boolean equals(java.lang.Object that) {
- if (that instanceof cancel_result)
- return this.equals((cancel_result)that);
- return false;
- }
-
- public boolean equals(cancel_result that) {
- if (that == null)
- return false;
- if (this == that)
- return true;
-
- boolean this_present_sec = true && this.isSetSec();
- boolean that_present_sec = true && that.isSetSec();
- if (this_present_sec || that_present_sec) {
- if (!(this_present_sec && that_present_sec))
- return false;
- if (!this.sec.equals(that.sec))
- return false;
- }
-
- boolean this_present_tnase = true && this.isSetTnase();
- boolean that_present_tnase = true && that.isSetTnase();
- if (this_present_tnase || that_present_tnase) {
- if (!(this_present_tnase && that_present_tnase))
- return false;
- if (!this.tnase.equals(that.tnase))
- return false;
- }
-
- return true;
- }
-
- @Override
- public int hashCode() {
- int hashCode = 1;
-
- hashCode = hashCode * 8191 + ((isSetSec()) ? 131071 : 524287);
- if (isSetSec())
- hashCode = hashCode * 8191 + sec.hashCode();
-
- hashCode = hashCode * 8191 + ((isSetTnase()) ? 131071 : 524287);
- if (isSetTnase())
- hashCode = hashCode * 8191 + tnase.hashCode();
-
- return hashCode;
- }
-
- @Override
- public int compareTo(cancel_result other) {
- if (!getClass().equals(other.getClass())) {
- return getClass().getName().compareTo(other.getClass().getName());
- }
-
- int lastComparison = 0;
-
- lastComparison = java.lang.Boolean.compare(isSetSec(), other.isSetSec());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetSec()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec,
other.sec);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
- lastComparison = java.lang.Boolean.compare(isSetTnase(),
other.isSetTnase());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetTnase()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tnase,
other.tnase);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
- return 0;
- }
-
- @org.apache.thrift.annotation.Nullable
- @Override
- public _Fields fieldForId(int fieldId) {
- return _Fields.findByThriftId(fieldId);
- }
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol iprot) throws
org.apache.thrift.TException {
- scheme(iprot).read(iprot, this);
- }
-
- public void write(org.apache.thrift.protocol.TProtocol oprot) throws
org.apache.thrift.TException {
- scheme(oprot).write(oprot, this);
- }
-
- @Override
- public java.lang.String toString() {
- java.lang.StringBuilder sb = new
java.lang.StringBuilder("cancel_result(");
- boolean first = true;
-
- sb.append("sec:");
- if (this.sec == null) {
- sb.append("null");
- } else {
- sb.append(this.sec);
- }
- first = false;
- if (!first) sb.append(", ");
- sb.append("tnase:");
- if (this.tnase == null) {
- sb.append("null");
- } else {
- sb.append(this.tnase);
- }
- first = false;
- sb.append(")");
- return sb.toString();
- }
-
- public void validate() throws org.apache.thrift.TException {
- // check for required fields
- // check for sub-struct validity
- }
-
- private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
- try {
- write(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(out)));
- } catch (org.apache.thrift.TException te) {
- throw new java.io.IOException(te);
- }
- }
-
- private void readObject(java.io.ObjectInputStream in) throws
java.io.IOException, java.lang.ClassNotFoundException {
- try {
- read(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(in)));
- } catch (org.apache.thrift.TException te) {
- throw new java.io.IOException(te);
- }
- }
-
- private static class cancel_resultStandardSchemeFactory implements
org.apache.thrift.scheme.SchemeFactory {
- @Override
- public cancel_resultStandardScheme getScheme() {
- return new cancel_resultStandardScheme();
- }
- }
-
- private static class cancel_resultStandardScheme extends
org.apache.thrift.scheme.StandardScheme<cancel_result> {
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol iprot,
cancel_result struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TField schemeField;
- iprot.readStructBegin();
- while (true)
- {
- schemeField = iprot.readFieldBegin();
- if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
- break;
- }
- switch (schemeField.id) {
- case 1: // SEC
- if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT)
{
- struct.sec = new
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException();
- struct.sec.read(iprot);
- struct.setSecIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
- case 2: // TNASE
- if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT)
{
- struct.tnase = new
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException();
- struct.tnase.read(iprot);
- struct.setTnaseIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
- default:
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- iprot.readFieldEnd();
- }
- iprot.readStructEnd();
-
- // check for required fields of primitive type, which can't be checked
in the validate method
- struct.validate();
- }
-
- @Override
- public void write(org.apache.thrift.protocol.TProtocol oprot,
cancel_result struct) throws org.apache.thrift.TException {
- struct.validate();
-
- oprot.writeStructBegin(STRUCT_DESC);
- if (struct.sec != null) {
- oprot.writeFieldBegin(SEC_FIELD_DESC);
- struct.sec.write(oprot);
- oprot.writeFieldEnd();
- }
- if (struct.tnase != null) {
- oprot.writeFieldBegin(TNASE_FIELD_DESC);
- struct.tnase.write(oprot);
- oprot.writeFieldEnd();
- }
- oprot.writeFieldStop();
- oprot.writeStructEnd();
- }
-
- }
-
- private static class cancel_resultTupleSchemeFactory implements
org.apache.thrift.scheme.SchemeFactory {
- @Override
- public cancel_resultTupleScheme getScheme() {
- return new cancel_resultTupleScheme();
- }
- }
-
- private static class cancel_resultTupleScheme extends
org.apache.thrift.scheme.TupleScheme<cancel_result> {
-
- @Override
- public void write(org.apache.thrift.protocol.TProtocol prot,
cancel_result struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TTupleProtocol oprot =
(org.apache.thrift.protocol.TTupleProtocol) prot;
- java.util.BitSet optionals = new java.util.BitSet();
- if (struct.isSetSec()) {
- optionals.set(0);
- }
- if (struct.isSetTnase()) {
- optionals.set(1);
- }
- oprot.writeBitSet(optionals, 2);
- if (struct.isSetSec()) {
- struct.sec.write(oprot);
- }
- if (struct.isSetTnase()) {
- struct.tnase.write(oprot);
- }
- }
-
- @Override
- public void read(org.apache.thrift.protocol.TProtocol prot,
cancel_result struct) throws org.apache.thrift.TException {
- org.apache.thrift.protocol.TTupleProtocol iprot =
(org.apache.thrift.protocol.TTupleProtocol) prot;
- java.util.BitSet incoming = iprot.readBitSet(2);
- if (incoming.get(0)) {
- struct.sec = new
org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException();
- struct.sec.read(iprot);
- struct.setSecIsSet(true);
- }
- if (incoming.get(1)) {
- struct.tnase = new
org.apache.accumulo.core.clientImpl.thrift.ThriftNotActiveServiceException();
- struct.tnase.read(iprot);
- struct.setTnaseIsSet(true);
- }
- }
- }
-
- private static <S extends org.apache.thrift.scheme.IScheme> S
scheme(org.apache.thrift.protocol.TProtocol proto) {
- return
(org.apache.thrift.scheme.StandardScheme.class.equals(proto.getScheme()) ?
STANDARD_SCHEME_FACTORY : TUPLE_SCHEME_FACTORY).getScheme();
- }
- }
-
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
public static class recordCompletion_args implements
org.apache.thrift.TBase<recordCompletion_args, recordCompletion_args._Fields>,
java.io.Serializable, Cloneable, Comparable<recordCompletion_args> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new
org.apache.thrift.protocol.TStruct("recordCompletion_args");
diff --git a/core/src/main/thrift/compaction-coordinator.thrift
b/core/src/main/thrift/compaction-coordinator.thrift
index 59732c65bc..65b162ec3c 100644
--- a/core/src/main/thrift/compaction-coordinator.thrift
+++ b/core/src/main/thrift/compaction-coordinator.thrift
@@ -147,15 +147,6 @@ service CompactionCoordinatorService {
2:client.ThriftNotActiveServiceException tnase
)
- void cancel(
- 1:client.TInfo tinfo
- 2:security.TCredentials credentials
- 3:string externalCompactionId
- )throws(
- 1:client.ThriftSecurityException sec
- 2:client.ThriftNotActiveServiceException tnase
- )
-
oneway void recordCompletion(
1:client.TInfo tinfo
2:security.TCredentials credentials
diff --git
a/server/base/src/main/java/org/apache/accumulo/server/util/CancelCompaction.java
b/server/base/src/main/java/org/apache/accumulo/server/util/CancelCompaction.java
index 546b486754..14dd5463d6 100644
---
a/server/base/src/main/java/org/apache/accumulo/server/util/CancelCompaction.java
+++
b/server/base/src/main/java/org/apache/accumulo/server/util/CancelCompaction.java
@@ -18,11 +18,10 @@
*/
package org.apache.accumulo.server.util;
+import java.util.Optional;
+
import org.apache.accumulo.core.cli.ServerOpts;
-import org.apache.accumulo.core.compaction.thrift.CompactionCoordinatorService;
import org.apache.accumulo.core.metadata.schema.ExternalCompactionId;
-import org.apache.accumulo.core.rpc.ThriftUtil;
-import org.apache.accumulo.core.trace.TraceUtil;
import org.apache.accumulo.core.util.compaction.ExternalCompactionUtil;
import org.apache.accumulo.server.ServerContext;
import org.apache.accumulo.server.util.CancelCompaction.CancelCommandOpts;
@@ -33,6 +32,7 @@ import org.apache.accumulo.start.spi.KeywordExecutable;
import com.beust.jcommander.JCommander;
import com.beust.jcommander.Parameter;
import com.google.auto.service.AutoService;
+import com.google.common.net.HostAndPort;
@AutoService(KeywordExecutable.class)
public class CancelCompaction extends
ServerKeywordExecutable<CancelCommandOpts> {
@@ -62,16 +62,18 @@ public class CancelCompaction extends
ServerKeywordExecutable<CancelCommandOpts>
}
protected void cancelCompaction(ServerContext context, String ecid) {
- CompactionCoordinatorService.Client coordinatorClient = null;
- ecid = ExternalCompactionId.from(ecid).canonical();
- try {
- coordinatorClient = ExternalCompactionUtil.getCoordinatorClient(context);
- coordinatorClient.cancel(TraceUtil.traceInfo(), context.rpcCreds(),
ecid);
- System.out.println("Cancel sent to coordinator for " + ecid);
- } catch (Exception e) {
- throw new IllegalStateException("Exception calling cancel compaction for
" + ecid, e);
- } finally {
- ThriftUtil.returnClient(coordinatorClient, context);
+ System.out.println("Looking for " + ecid + " in metadata table");
+
+ Optional<HostAndPort> compactor =
ExternalCompactionUtil.findCompactorRunningCompaction(context,
+ ExternalCompactionId.of(ecid));
+
+ if (compactor.isPresent()) {
+ var addr = compactor.orElseThrow();
+ System.out.println("Asking compactor " + addr + " to cancel " + ecid);
+ ExternalCompactionUtil.cancelCompaction(context, addr, ecid);
+ System.out.println("Asked compactor " + addr + " to cancel " + ecid);
+ } else {
+ System.out.println("No compaction found for " + ecid);
}
}
diff --git
a/server/manager/src/main/java/org/apache/accumulo/manager/compaction/coordinator/CompactionCoordinator.java
b/server/manager/src/main/java/org/apache/accumulo/manager/compaction/coordinator/CompactionCoordinator.java
index b53ccdf6e6..78ecfab86e 100644
---
a/server/manager/src/main/java/org/apache/accumulo/manager/compaction/coordinator/CompactionCoordinator.java
+++
b/server/manager/src/main/java/org/apache/accumulo/manager/compaction/coordinator/CompactionCoordinator.java
@@ -60,16 +60,12 @@ import java.util.stream.Collectors;
import org.apache.accumulo.core.Constants;
import org.apache.accumulo.core.client.AccumuloSecurityException;
import org.apache.accumulo.core.client.TableDeletedException;
-import org.apache.accumulo.core.client.TableNotFoundException;
import org.apache.accumulo.core.client.admin.CompactionConfig;
import org.apache.accumulo.core.client.admin.compaction.CompactableFile;
import org.apache.accumulo.core.client.admin.servers.ServerId;
import org.apache.accumulo.core.clientImpl.thrift.SecurityErrorCode;
import org.apache.accumulo.core.clientImpl.thrift.TInfo;
-import org.apache.accumulo.core.clientImpl.thrift.TableOperation;
-import org.apache.accumulo.core.clientImpl.thrift.TableOperationExceptionType;
import org.apache.accumulo.core.clientImpl.thrift.ThriftSecurityException;
-import
org.apache.accumulo.core.clientImpl.thrift.ThriftTableOperationException;
import org.apache.accumulo.core.compaction.thrift.CompactionCoordinatorService;
import org.apache.accumulo.core.compaction.thrift.TCompactionState;
import org.apache.accumulo.core.compaction.thrift.TCompactionStatusUpdate;
@@ -78,7 +74,6 @@ import
org.apache.accumulo.core.compaction.thrift.TExternalCompactionMap;
import org.apache.accumulo.core.compaction.thrift.TNextCompactionJob;
import org.apache.accumulo.core.conf.AccumuloConfiguration;
import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.core.data.NamespaceId;
import org.apache.accumulo.core.data.ResourceGroupId;
import org.apache.accumulo.core.data.TableId;
import org.apache.accumulo.core.dataImpl.KeyExtent;
@@ -999,25 +994,6 @@ public class CompactionCoordinator
return result;
}
- @Override
- public void cancel(TInfo tinfo, TCredentials credentials, String
externalCompactionId)
- throws TException {
- var runningCompaction =
RUNNING_CACHE.get(ExternalCompactionId.of(externalCompactionId));
- var extent = KeyExtent.fromThrift(runningCompaction.getJob().getExtent());
- try {
- NamespaceId nsId = this.ctx.getNamespaceId(extent.tableId());
- if (!security.canCompact(credentials, extent.tableId(), nsId)) {
- throw new AccumuloSecurityException(credentials.getPrincipal(),
- SecurityErrorCode.PERMISSION_DENIED).asThriftException();
- }
- } catch (TableNotFoundException e) {
- throw new ThriftTableOperationException(extent.tableId().canonical(),
null,
- TableOperation.COMPACT_CANCEL, TableOperationExceptionType.NOTFOUND,
e.getMessage());
- }
-
- cancelCompactionOnCompactor(runningCompaction.getCompactor(),
externalCompactionId);
- }
-
/* Method exists to be called from test */
public CompactionJobQueues getJobQueues() {
return jobQueues;