diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/ThriftUtilities.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/ThriftUtilities.java index 9b13909d7c2..9b42bcead4a 100644 --- a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/ThriftUtilities.java +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/ThriftUtilities.java @@ -37,6 +37,7 @@ import org.apache.hadoop.hbase.HRegionLocation; import org.apache.hadoop.hbase.PrivateCellUtil; import org.apache.hadoop.hbase.ServerName; import org.apache.hadoop.hbase.client.Append; +import org.apache.hadoop.hbase.client.Consistency; import org.apache.hadoop.hbase.client.Delete; import org.apache.hadoop.hbase.client.Durability; import org.apache.hadoop.hbase.client.Get; @@ -55,6 +56,7 @@ import org.apache.hadoop.hbase.thrift2.generated.TColumn; import org.apache.hadoop.hbase.thrift2.generated.TColumnIncrement; import org.apache.hadoop.hbase.thrift2.generated.TColumnValue; import org.apache.hadoop.hbase.thrift2.generated.TCompareOp; +import org.apache.hadoop.hbase.thrift2.generated.TConsistency; import org.apache.hadoop.hbase.thrift2.generated.TDelete; import org.apache.hadoop.hbase.thrift2.generated.TDurability; import org.apache.hadoop.hbase.thrift2.generated.TGet; @@ -119,6 +121,14 @@ public final class ThriftUtilities { out.setAuthorizations(new Authorizations(in.getAuthorizations().getLabels())); } + if (in.isSetConsistency()) { + out.setConsistency(consistencyFromThrift(in.getConsistency())); + } + + if (in.isSetTargetReplicaId()) { + out.setReplicaId(in.getTargetReplicaId()); + } + if (!in.isSetColumns()) { return out; } @@ -179,6 +189,8 @@ public final class ThriftUtilities { columnValues.add(col); } out.setColumnValues(columnValues); + + out.setStale(in.isStale()); return out; } @@ -491,6 +503,14 @@ public final class ThriftUtilities { out.setLimit(in.getLimit()); } + if (in.isSetConsistency()) { + out.setConsistency(consistencyFromThrift(in.getConsistency())); + } + + if (in.isSetTargetReplicaId()) { + out.setReplicaId(in.getTargetReplicaId()); + } + return out; } @@ -615,4 +635,12 @@ public final class ThriftUtilities { default: return null; } } + + private static Consistency consistencyFromThrift(TConsistency tConsistency) { + switch (tConsistency.getValue()) { + case 1: return Consistency.STRONG; + case 2: return Consistency.TIMELINE; + default: return Consistency.STRONG; + } + } } diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TConsistency.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TConsistency.java new file mode 100644 index 00000000000..b473d02bda4 --- /dev/null +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TConsistency.java @@ -0,0 +1,50 @@ +/** + * Autogenerated by Thrift Compiler (0.9.3) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +package org.apache.hadoop.hbase.thrift2.generated; + + +import java.util.Map; +import java.util.HashMap; +import org.apache.thrift.TEnum; + +/** + * Specify Consistency: + * - STRONG means reads only from primary region + * - TIMELINE means reads might return values from secondary region replicas + */ +public enum TConsistency implements org.apache.thrift.TEnum { + STRONG(1), + TIMELINE(2); + + private final int value; + + private TConsistency(int value) { + this.value = value; + } + + /** + * Get the integer value of this enum value, as defined in the Thrift IDL. + */ + public int getValue() { + return value; + } + + /** + * Find a the enum type by its integer value, as defined in the Thrift IDL. + * @return null if the value is not found. + */ + public static TConsistency findByValue(int value) { + switch (value) { + case 1: + return STRONG; + case 2: + return TIMELINE; + default: + return null; + } + } +} diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TGet.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TGet.java index a493bd95d98..cfb1d6c1652 100644 --- a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TGet.java +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TGet.java @@ -47,7 +47,7 @@ import org.slf4j.LoggerFactory; * If you specify a time range and a timestamp the range is ignored. * Timestamps on TColumns are ignored. */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-05-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2018-07-03") public class TGet implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TGet"); @@ -59,6 +59,8 @@ public class TGet implements org.apache.thrift.TBase, java.i private static final org.apache.thrift.protocol.TField FILTER_STRING_FIELD_DESC = new org.apache.thrift.protocol.TField("filterString", org.apache.thrift.protocol.TType.STRING, (short)6); private static final org.apache.thrift.protocol.TField ATTRIBUTES_FIELD_DESC = new org.apache.thrift.protocol.TField("attributes", org.apache.thrift.protocol.TType.MAP, (short)7); private static final org.apache.thrift.protocol.TField AUTHORIZATIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("authorizations", org.apache.thrift.protocol.TType.STRUCT, (short)8); + private static final org.apache.thrift.protocol.TField CONSISTENCY_FIELD_DESC = new org.apache.thrift.protocol.TField("consistency", org.apache.thrift.protocol.TType.I32, (short)9); + private static final org.apache.thrift.protocol.TField TARGET_REPLICA_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("targetReplicaId", org.apache.thrift.protocol.TType.I32, (short)10); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -74,6 +76,12 @@ public class TGet implements org.apache.thrift.TBase, java.i public ByteBuffer filterString; // optional public Map attributes; // optional public TAuthorization authorizations; // optional + /** + * + * @see TConsistency + */ + public TConsistency consistency; // optional + public int targetReplicaId; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -84,7 +92,13 @@ public class TGet implements org.apache.thrift.TBase, java.i MAX_VERSIONS((short)5, "maxVersions"), FILTER_STRING((short)6, "filterString"), ATTRIBUTES((short)7, "attributes"), - AUTHORIZATIONS((short)8, "authorizations"); + AUTHORIZATIONS((short)8, "authorizations"), + /** + * + * @see TConsistency + */ + CONSISTENCY((short)9, "consistency"), + TARGET_REPLICA_ID((short)10, "targetReplicaId"); private static final Map byName = new HashMap(); @@ -115,6 +129,10 @@ public class TGet implements org.apache.thrift.TBase, java.i return ATTRIBUTES; case 8: // AUTHORIZATIONS return AUTHORIZATIONS; + case 9: // CONSISTENCY + return CONSISTENCY; + case 10: // TARGET_REPLICA_ID + return TARGET_REPLICA_ID; default: return null; } @@ -157,8 +175,9 @@ public class TGet implements org.apache.thrift.TBase, java.i // isset id assignments private static final int __TIMESTAMP_ISSET_ID = 0; private static final int __MAXVERSIONS_ISSET_ID = 1; + private static final int __TARGETREPLICAID_ISSET_ID = 2; private byte __isset_bitfield = 0; - private static final _Fields optionals[] = {_Fields.COLUMNS,_Fields.TIMESTAMP,_Fields.TIME_RANGE,_Fields.MAX_VERSIONS,_Fields.FILTER_STRING,_Fields.ATTRIBUTES,_Fields.AUTHORIZATIONS}; + private static final _Fields optionals[] = {_Fields.COLUMNS,_Fields.TIMESTAMP,_Fields.TIME_RANGE,_Fields.MAX_VERSIONS,_Fields.FILTER_STRING,_Fields.ATTRIBUTES,_Fields.AUTHORIZATIONS,_Fields.CONSISTENCY,_Fields.TARGET_REPLICA_ID}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -181,6 +200,10 @@ public class TGet implements org.apache.thrift.TBase, java.i new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING , true)))); tmpMap.put(_Fields.AUTHORIZATIONS, new org.apache.thrift.meta_data.FieldMetaData("authorizations", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TAuthorization.class))); + tmpMap.put(_Fields.CONSISTENCY, new org.apache.thrift.meta_data.FieldMetaData("consistency", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TConsistency.class))); + tmpMap.put(_Fields.TARGET_REPLICA_ID, new org.apache.thrift.meta_data.FieldMetaData("targetReplicaId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TGet.class, metaDataMap); } @@ -225,6 +248,10 @@ public class TGet implements org.apache.thrift.TBase, java.i if (other.isSetAuthorizations()) { this.authorizations = new TAuthorization(other.authorizations); } + if (other.isSetConsistency()) { + this.consistency = other.consistency; + } + this.targetReplicaId = other.targetReplicaId; } public TGet deepCopy() { @@ -243,6 +270,9 @@ public class TGet implements org.apache.thrift.TBase, java.i this.filterString = null; this.attributes = null; this.authorizations = null; + this.consistency = null; + setTargetReplicaIdIsSet(false); + this.targetReplicaId = 0; } public byte[] getRow() { @@ -481,6 +511,61 @@ public class TGet implements org.apache.thrift.TBase, java.i } } + /** + * + * @see TConsistency + */ + public TConsistency getConsistency() { + return this.consistency; + } + + /** + * + * @see TConsistency + */ + public TGet setConsistency(TConsistency consistency) { + this.consistency = consistency; + return this; + } + + public void unsetConsistency() { + this.consistency = null; + } + + /** Returns true if field consistency is set (has been assigned a value) and false otherwise */ + public boolean isSetConsistency() { + return this.consistency != null; + } + + public void setConsistencyIsSet(boolean value) { + if (!value) { + this.consistency = null; + } + } + + public int getTargetReplicaId() { + return this.targetReplicaId; + } + + public TGet setTargetReplicaId(int targetReplicaId) { + this.targetReplicaId = targetReplicaId; + setTargetReplicaIdIsSet(true); + return this; + } + + public void unsetTargetReplicaId() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID); + } + + /** Returns true if field targetReplicaId is set (has been assigned a value) and false otherwise */ + public boolean isSetTargetReplicaId() { + return EncodingUtils.testBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID); + } + + public void setTargetReplicaIdIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID, value); + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case ROW: @@ -547,6 +632,22 @@ public class TGet implements org.apache.thrift.TBase, java.i } break; + case CONSISTENCY: + if (value == null) { + unsetConsistency(); + } else { + setConsistency((TConsistency)value); + } + break; + + case TARGET_REPLICA_ID: + if (value == null) { + unsetTargetReplicaId(); + } else { + setTargetReplicaId((Integer)value); + } + break; + } } @@ -576,6 +677,12 @@ public class TGet implements org.apache.thrift.TBase, java.i case AUTHORIZATIONS: return getAuthorizations(); + case CONSISTENCY: + return getConsistency(); + + case TARGET_REPLICA_ID: + return getTargetReplicaId(); + } throw new IllegalStateException(); } @@ -603,6 +710,10 @@ public class TGet implements org.apache.thrift.TBase, java.i return isSetAttributes(); case AUTHORIZATIONS: return isSetAuthorizations(); + case CONSISTENCY: + return isSetConsistency(); + case TARGET_REPLICA_ID: + return isSetTargetReplicaId(); } throw new IllegalStateException(); } @@ -692,6 +803,24 @@ public class TGet implements org.apache.thrift.TBase, java.i return false; } + boolean this_present_consistency = true && this.isSetConsistency(); + boolean that_present_consistency = true && that.isSetConsistency(); + if (this_present_consistency || that_present_consistency) { + if (!(this_present_consistency && that_present_consistency)) + return false; + if (!this.consistency.equals(that.consistency)) + return false; + } + + boolean this_present_targetReplicaId = true && this.isSetTargetReplicaId(); + boolean that_present_targetReplicaId = true && that.isSetTargetReplicaId(); + if (this_present_targetReplicaId || that_present_targetReplicaId) { + if (!(this_present_targetReplicaId && that_present_targetReplicaId)) + return false; + if (this.targetReplicaId != that.targetReplicaId) + return false; + } + return true; } @@ -739,6 +868,16 @@ public class TGet implements org.apache.thrift.TBase, java.i if (present_authorizations) list.add(authorizations); + boolean present_consistency = true && (isSetConsistency()); + list.add(present_consistency); + if (present_consistency) + list.add(consistency.getValue()); + + boolean present_targetReplicaId = true && (isSetTargetReplicaId()); + list.add(present_targetReplicaId); + if (present_targetReplicaId) + list.add(targetReplicaId); + return list.hashCode(); } @@ -830,6 +969,26 @@ public class TGet implements org.apache.thrift.TBase, java.i return lastComparison; } } + lastComparison = Boolean.valueOf(isSetConsistency()).compareTo(other.isSetConsistency()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetConsistency()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.consistency, other.consistency); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetTargetReplicaId()).compareTo(other.isSetTargetReplicaId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetTargetReplicaId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.targetReplicaId, other.targetReplicaId); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -919,6 +1078,22 @@ public class TGet implements org.apache.thrift.TBase, java.i } first = false; } + if (isSetConsistency()) { + if (!first) sb.append(", "); + sb.append("consistency:"); + if (this.consistency == null) { + sb.append("null"); + } else { + sb.append(this.consistency); + } + first = false; + } + if (isSetTargetReplicaId()) { + if (!first) sb.append(", "); + sb.append("targetReplicaId:"); + sb.append(this.targetReplicaId); + first = false; + } sb.append(")"); return sb.toString(); } @@ -1062,6 +1237,22 @@ public class TGet implements org.apache.thrift.TBase, java.i org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 9: // CONSISTENCY + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.consistency = org.apache.hadoop.hbase.thrift2.generated.TConsistency.findByValue(iprot.readI32()); + struct.setConsistencyIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 10: // TARGET_REPLICA_ID + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.targetReplicaId = iprot.readI32(); + struct.setTargetReplicaIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -1142,6 +1333,18 @@ public class TGet implements org.apache.thrift.TBase, java.i oprot.writeFieldEnd(); } } + if (struct.consistency != null) { + if (struct.isSetConsistency()) { + oprot.writeFieldBegin(CONSISTENCY_FIELD_DESC); + oprot.writeI32(struct.consistency.getValue()); + oprot.writeFieldEnd(); + } + } + if (struct.isSetTargetReplicaId()) { + oprot.writeFieldBegin(TARGET_REPLICA_ID_FIELD_DESC); + oprot.writeI32(struct.targetReplicaId); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -1182,7 +1385,13 @@ public class TGet implements org.apache.thrift.TBase, java.i if (struct.isSetAuthorizations()) { optionals.set(6); } - oprot.writeBitSet(optionals, 7); + if (struct.isSetConsistency()) { + optionals.set(7); + } + if (struct.isSetTargetReplicaId()) { + optionals.set(8); + } + oprot.writeBitSet(optionals, 9); if (struct.isSetColumns()) { { oprot.writeI32(struct.columns.size()); @@ -1217,6 +1426,12 @@ public class TGet implements org.apache.thrift.TBase, java.i if (struct.isSetAuthorizations()) { struct.authorizations.write(oprot); } + if (struct.isSetConsistency()) { + oprot.writeI32(struct.consistency.getValue()); + } + if (struct.isSetTargetReplicaId()) { + oprot.writeI32(struct.targetReplicaId); + } } @Override @@ -1224,7 +1439,7 @@ public class TGet implements org.apache.thrift.TBase, java.i TTupleProtocol iprot = (TTupleProtocol) prot; struct.row = iprot.readBinary(); struct.setRowIsSet(true); - BitSet incoming = iprot.readBitSet(7); + BitSet incoming = iprot.readBitSet(9); if (incoming.get(0)) { { org.apache.thrift.protocol.TList _list27 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); @@ -1276,6 +1491,14 @@ public class TGet implements org.apache.thrift.TBase, java.i struct.authorizations.read(iprot); struct.setAuthorizationsIsSet(true); } + if (incoming.get(7)) { + struct.consistency = org.apache.hadoop.hbase.thrift2.generated.TConsistency.findByValue(iprot.readI32()); + struct.setConsistencyIsSet(true); + } + if (incoming.get(8)) { + struct.targetReplicaId = iprot.readI32(); + struct.setTargetReplicaIdIsSet(true); + } } } diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/THBaseService.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/THBaseService.java index ae7c9d67e51..e8f36a004c3 100644 --- a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/THBaseService.java +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/THBaseService.java @@ -34,7 +34,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-05-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2018-07-04") public class THBaseService { public interface Iface { @@ -52,12 +52,12 @@ public class THBaseService { /** * Test for the existence of columns in the table, as specified by the TGets. - * + * * This will return an array of booleans. Each value will be true if the related Get matches * one or more keys, false if not. - * + * * @param table the table to check on - * + * * @param tgets a list of TGets to check for */ public List existsAll(ByteBuffer table, List tgets) throws TIOError, org.apache.thrift.TException; @@ -288,7 +288,7 @@ public class THBaseService { public void exists(ByteBuffer table, TGet tget, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException; - public void existsAll(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException; + public void existsAll(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException; public void get(ByteBuffer table, TGet tget, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException; @@ -945,7 +945,7 @@ public class THBaseService { } } - public void existsAll(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException { + public void existsAll(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException { checkReady(); existsAll_call method_call = new existsAll_call(table, tgets, resultHandler, this, ___protocolFactory, ___transport); this.___currentMethod = method_call; @@ -955,7 +955,7 @@ public class THBaseService { public static class existsAll_call extends org.apache.thrift.async.TAsyncMethodCall { private ByteBuffer table; private List tgets; - public existsAll_call(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException { + public existsAll_call(ByteBuffer table, List tgets, org.apache.thrift.async.AsyncMethodCallback 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.table = table; this.tgets = tgets; @@ -1733,6 +1733,7 @@ public class THBaseService { return result; } } + public static class get extends org.apache.thrift.ProcessFunction { public get() { super("get"); @@ -2187,6 +2188,7 @@ public class THBaseService { private static Map> getProcessMap(Map> processMap) { processMap.put("exists", new exists()); + processMap.put("existsAll", new existsAll()); processMap.put("get", new get()); processMap.put("getMultiple", new getMultiple()); processMap.put("put", new put()); @@ -2266,6 +2268,63 @@ public class THBaseService { } } + public static class existsAll extends org.apache.thrift.AsyncProcessFunction> { + public existsAll() { + super("existsAll"); + } + + public existsAll_args getEmptyArgsInstance() { + return new existsAll_args(); + } + + public AsyncMethodCallback> getResultHandler(final AsyncFrameBuffer fb, final int seqid) { + final org.apache.thrift.AsyncProcessFunction fcall = this; + return new AsyncMethodCallback>() { + public void onComplete(List o) { + existsAll_result result = new existsAll_result(); + result.success = o; + try { + fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid); + return; + } catch (Exception e) { + LOGGER.error("Exception writing to internal frame buffer", e); + } + fb.close(); + } + public void onError(Exception e) { + byte msgType = org.apache.thrift.protocol.TMessageType.REPLY; + org.apache.thrift.TBase msg; + existsAll_result result = new existsAll_result(); + if (e instanceof TIOError) { + result.io = (TIOError) e; + result.setIoIsSet(true); + msg = result; + } + else + { + msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION; + msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage()); + } + try { + fcall.sendResponse(fb,msg,msgType,seqid); + return; + } catch (Exception ex) { + LOGGER.error("Exception writing to internal frame buffer", ex); + } + fb.close(); + } + }; + } + + protected boolean isOneway() { + return false; + } + + public void start(I iface, existsAll_args args, org.apache.thrift.async.AsyncMethodCallback> resultHandler) throws TException { + iface.existsAll(args.table, args.tgets,resultHandler); + } + } + public static class get extends org.apache.thrift.AsyncProcessFunction { public get() { super("get"); @@ -4265,14 +4324,13 @@ public class THBaseService { } - public static class existsAll_args implements org.apache.thrift.TBase, java.io.Serializable, Cloneable { + public static class existsAll_args implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("existsAll_args"); - private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short) 1); - private static final org.apache.thrift.protocol.TField TGETS_FIELD_DESC = new org.apache.thrift.protocol.TField("tgets", org.apache.thrift.protocol.TType.LIST, (short) 2); + private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short)1); + private static final org.apache.thrift.protocol.TField TGETS_FIELD_DESC = new org.apache.thrift.protocol.TField("tgets", org.apache.thrift.protocol.TType.LIST, (short)2); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); - static { schemes.put(StandardScheme.class, new existsAll_argsStandardSchemeFactory()); schemes.put(TupleScheme.class, new existsAll_argsTupleSchemeFactory()); @@ -4287,18 +4345,16 @@ public class THBaseService { */ public List tgets; // required - /** - * The set of fields this struct contains, along with convenience methods for finding and manipulating them. - */ + /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { /** * the table to check on */ - TABLE((short) 1, "table"), + TABLE((short)1, "table"), /** * a list of TGets to check for */ - TGETS((short) 2, "tgets"); + TGETS((short)2, "tgets"); private static final Map byName = new HashMap(); @@ -4312,7 +4368,7 @@ public class THBaseService { * Find the _Fields constant that matches fieldId, or null if its not found. */ public static _Fields findByThriftId(int fieldId) { - switch (fieldId) { + switch(fieldId) { case 1: // TABLE return TABLE; case 2: // TGETS @@ -4358,14 +4414,13 @@ public class THBaseService { // isset id assignments public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; - static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); - tmpMap.put(_Fields.TABLE, new org.apache.thrift.meta_data.FieldMetaData("table", org.apache.thrift.TFieldRequirementType.REQUIRED, - new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING, true))); - tmpMap.put(_Fields.TGETS, new org.apache.thrift.meta_data.FieldMetaData("tgets", org.apache.thrift.TFieldRequirementType.REQUIRED, - new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, - new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TGet.class)))); + tmpMap.put(_Fields.TABLE, new org.apache.thrift.meta_data.FieldMetaData("table", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING , true))); + tmpMap.put(_Fields.TGETS, new org.apache.thrift.meta_data.FieldMetaData("tgets", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, + new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TGet.class)))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(existsAll_args.class, metaDataMap); } @@ -4374,10 +4429,11 @@ public class THBaseService { } public existsAll_args( - ByteBuffer table, - List tgets) { + ByteBuffer table, + List tgets) + { this(); - this.table = table; + this.table = org.apache.thrift.TBaseHelper.copyBinary(table); this.tgets = tgets; } @@ -4387,10 +4443,9 @@ public class THBaseService { public existsAll_args(existsAll_args other) { if (other.isSetTable()) { this.table = org.apache.thrift.TBaseHelper.copyBinary(other.table); - ; } if (other.isSetTgets()) { - List __this__tgets = new ArrayList(); + List __this__tgets = new ArrayList(other.tgets.size()); for (TGet other_element : other.tgets) { __this__tgets.add(new TGet(other_element)); } @@ -4417,19 +4472,19 @@ public class THBaseService { } public ByteBuffer bufferForTable() { - return table; + return org.apache.thrift.TBaseHelper.copyBinary(table); } /** * the table to check on */ public existsAll_args setTable(byte[] table) { - setTable(table == null ? (ByteBuffer) null : ByteBuffer.wrap(table)); + this.table = table == null ? (ByteBuffer)null : ByteBuffer.wrap(Arrays.copyOf(table, table.length)); return this; } public existsAll_args setTable(ByteBuffer table) { - this.table = table; + this.table = org.apache.thrift.TBaseHelper.copyBinary(table); return this; } @@ -4437,9 +4492,7 @@ public class THBaseService { this.table = null; } - /** - * Returns true if field table is set (has been assigned a value) and false otherwise - */ + /** Returns true if field table is set (has been assigned a value) and false otherwise */ public boolean isSetTable() { return this.table != null; } @@ -4484,9 +4537,7 @@ public class THBaseService { this.tgets = null; } - /** - * Returns true if field tgets is set (has been assigned a value) and false otherwise - */ + /** Returns true if field tgets is set (has been assigned a value) and false otherwise */ public boolean isSetTgets() { return this.tgets != null; } @@ -4499,50 +4550,48 @@ public class THBaseService { public void setFieldValue(_Fields field, Object value) { switch (field) { - case TABLE: - if (value == null) { - unsetTable(); - } else { - setTable((ByteBuffer) value); - } - break; + case TABLE: + if (value == null) { + unsetTable(); + } else { + setTable((ByteBuffer)value); + } + break; - case TGETS: - if (value == null) { - unsetTgets(); - } else { - setTgets((List) value); - } - break; + case TGETS: + if (value == null) { + unsetTgets(); + } else { + setTgets((List)value); + } + break; } } public Object getFieldValue(_Fields field) { switch (field) { - case TABLE: - return getTable(); + case TABLE: + return getTable(); - case TGETS: - return getTgets(); + case TGETS: + return getTgets(); } throw new IllegalStateException(); } - /** - * Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise - */ + /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */ public boolean isSet(_Fields field) { if (field == null) { throw new IllegalArgumentException(); } switch (field) { - case TABLE: - return isSetTable(); - case TGETS: - return isSetTgets(); + case TABLE: + return isSetTable(); + case TGETS: + return isSetTgets(); } throw new IllegalStateException(); } @@ -4552,7 +4601,7 @@ public class THBaseService { if (that == null) return false; if (that instanceof existsAll_args) - return this.equals((existsAll_args) that); + return this.equals((existsAll_args)that); return false; } @@ -4583,33 +4632,45 @@ public class THBaseService { @Override public int hashCode() { - return 0; + List list = new ArrayList(); + + boolean present_table = true && (isSetTable()); + list.add(present_table); + if (present_table) + list.add(table); + + boolean present_tgets = true && (isSetTgets()); + list.add(present_tgets); + if (present_tgets) + list.add(tgets); + + return list.hashCode(); } + @Override public int compareTo(existsAll_args other) { if (!getClass().equals(other.getClass())) { return getClass().getName().compareTo(other.getClass().getName()); } int lastComparison = 0; - existsAll_args typedOther = (existsAll_args) other; - lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable()); + lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable()); if (lastComparison != 0) { return lastComparison; } if (isSetTable()) { - lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table); + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table); if (lastComparison != 0) { return lastComparison; } } - lastComparison = Boolean.valueOf(isSetTgets()).compareTo(typedOther.isSetTgets()); + lastComparison = Boolean.valueOf(isSetTgets()).compareTo(other.isSetTgets()); if (lastComparison != 0) { return lastComparison; } if (isSetTgets()) { - lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tgets, typedOther.tgets); + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tgets, other.tgets); if (lastComparison != 0) { return lastComparison; } @@ -4691,9 +4752,10 @@ public class THBaseService { public void read(org.apache.thrift.protocol.TProtocol iprot, existsAll_args struct) throws org.apache.thrift.TException { org.apache.thrift.protocol.TField schemeField; iprot.readStructBegin(); - while (true) { + while (true) + { schemeField = iprot.readFieldBegin(); - if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { + if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { break; } switch (schemeField.id) { @@ -4701,25 +4763,26 @@ public class THBaseService { if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { struct.table = iprot.readBinary(); struct.setTableIsSet(true); - } else { + } else { org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; case 2: // TGETS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list132 = iprot.readListBegin(); - struct.tgets = new ArrayList(_list132.size); - for (int _i133 = 0; _i133 < _list132.size; ++_i133) { - TGet _elem134; // required - _elem134 = new TGet(); - _elem134.read(iprot); - struct.tgets.add(_elem134); + org.apache.thrift.protocol.TList _list142 = iprot.readListBegin(); + struct.tgets = new ArrayList(_list142.size); + TGet _elem143; + for (int _i144 = 0; _i144 < _list142.size; ++_i144) + { + _elem143 = new TGet(); + _elem143.read(iprot); + struct.tgets.add(_elem143); } iprot.readListEnd(); } struct.setTgetsIsSet(true); - } else { + } else { org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; @@ -4747,8 +4810,9 @@ public class THBaseService { oprot.writeFieldBegin(TGETS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.tgets.size())); - for (TGet _iter135 : struct.tgets) { - _iter135.write(oprot); + for (TGet _iter145 : struct.tgets) + { + _iter145.write(oprot); } oprot.writeListEnd(); } @@ -4774,8 +4838,9 @@ public class THBaseService { oprot.writeBinary(struct.table); { oprot.writeI32(struct.tgets.size()); - for (TGet _iter136 : struct.tgets) { - _iter136.write(oprot); + for (TGet _iter146 : struct.tgets) + { + _iter146.write(oprot); } } } @@ -4786,13 +4851,14 @@ public class THBaseService { struct.table = iprot.readBinary(); struct.setTableIsSet(true); { - org.apache.thrift.protocol.TList _list137 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.tgets = new ArrayList(_list137.size); - for (int _i138 = 0; _i138 < _list137.size; ++_i138) { - TGet _elem139; // required - _elem139 = new TGet(); - _elem139.read(iprot); - struct.tgets.add(_elem139); + org.apache.thrift.protocol.TList _list147 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.tgets = new ArrayList(_list147.size); + TGet _elem148; + for (int _i149 = 0; _i149 < _list147.size; ++_i149) + { + _elem148 = new TGet(); + _elem148.read(iprot); + struct.tgets.add(_elem148); } } struct.setTgetsIsSet(true); @@ -4801,14 +4867,13 @@ public class THBaseService { } - public static class existsAll_result implements org.apache.thrift.TBase, java.io.Serializable, Cloneable { + public static class existsAll_result implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("existsAll_result"); - private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short) 0); - private static final org.apache.thrift.protocol.TField IO_FIELD_DESC = new org.apache.thrift.protocol.TField("io", org.apache.thrift.protocol.TType.STRUCT, (short) 1); + private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0); + private static final org.apache.thrift.protocol.TField IO_FIELD_DESC = new org.apache.thrift.protocol.TField("io", org.apache.thrift.protocol.TType.STRUCT, (short)1); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); - static { schemes.put(StandardScheme.class, new existsAll_resultStandardSchemeFactory()); schemes.put(TupleScheme.class, new existsAll_resultTupleSchemeFactory()); @@ -4817,12 +4882,10 @@ public class THBaseService { public List success; // required public TIOError io; // required - /** - * The set of fields this struct contains, along with convenience methods for finding and manipulating them. - */ + /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { - SUCCESS((short) 0, "success"), - IO((short) 1, "io"); + SUCCESS((short)0, "success"), + IO((short)1, "io"); private static final Map byName = new HashMap(); @@ -4836,7 +4899,7 @@ public class THBaseService { * Find the _Fields constant that matches fieldId, or null if its not found. */ public static _Fields findByThriftId(int fieldId) { - switch (fieldId) { + switch(fieldId) { case 0: // SUCCESS return SUCCESS; case 1: // IO @@ -4882,14 +4945,13 @@ public class THBaseService { // isset id assignments public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; - static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); - tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT, - new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, - new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)))); - tmpMap.put(_Fields.IO, new org.apache.thrift.meta_data.FieldMetaData("io", org.apache.thrift.TFieldRequirementType.DEFAULT, - new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT))); + tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT, + new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)))); + tmpMap.put(_Fields.IO, new org.apache.thrift.meta_data.FieldMetaData("io", org.apache.thrift.TFieldRequirementType.DEFAULT, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(existsAll_result.class, metaDataMap); } @@ -4898,8 +4960,9 @@ public class THBaseService { } public existsAll_result( - List success, - TIOError io) { + List success, + TIOError io) + { this(); this.success = success; this.io = io; @@ -4910,10 +4973,7 @@ public class THBaseService { */ public existsAll_result(existsAll_result other) { if (other.isSetSuccess()) { - List __this__success = new ArrayList(); - for (Boolean other_element : other.success) { - __this__success.add(other_element); - } + List __this__success = new ArrayList(other.success); this.success = __this__success; } if (other.isSetIo()) { @@ -4959,9 +5019,7 @@ public class THBaseService { this.success = null; } - /** - * Returns true if field success is set (has been assigned a value) and false otherwise - */ + /** Returns true if field success is set (has been assigned a value) and false otherwise */ public boolean isSetSuccess() { return this.success != null; } @@ -4985,9 +5043,7 @@ public class THBaseService { this.io = null; } - /** - * Returns true if field io is set (has been assigned a value) and false otherwise - */ + /** Returns true if field io is set (has been assigned a value) and false otherwise */ public boolean isSetIo() { return this.io != null; } @@ -5000,50 +5056,48 @@ public class THBaseService { public void setFieldValue(_Fields field, Object value) { switch (field) { - case SUCCESS: - if (value == null) { - unsetSuccess(); - } else { - setSuccess((List) value); - } - break; + case SUCCESS: + if (value == null) { + unsetSuccess(); + } else { + setSuccess((List)value); + } + break; - case IO: - if (value == null) { - unsetIo(); - } else { - setIo((TIOError) value); - } - break; + case IO: + if (value == null) { + unsetIo(); + } else { + setIo((TIOError)value); + } + break; } } public Object getFieldValue(_Fields field) { switch (field) { - case SUCCESS: - return getSuccess(); + case SUCCESS: + return getSuccess(); - case IO: - return getIo(); + case IO: + return getIo(); } throw new IllegalStateException(); } - /** - * Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise - */ + /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */ public boolean isSet(_Fields field) { if (field == null) { throw new IllegalArgumentException(); } switch (field) { - case SUCCESS: - return isSetSuccess(); - case IO: - return isSetIo(); + case SUCCESS: + return isSetSuccess(); + case IO: + return isSetIo(); } throw new IllegalStateException(); } @@ -5053,7 +5107,7 @@ public class THBaseService { if (that == null) return false; if (that instanceof existsAll_result) - return this.equals((existsAll_result) that); + return this.equals((existsAll_result)that); return false; } @@ -5084,33 +5138,45 @@ public class THBaseService { @Override public int hashCode() { - return 0; + List list = new ArrayList(); + + boolean present_success = true && (isSetSuccess()); + list.add(present_success); + if (present_success) + list.add(success); + + boolean present_io = true && (isSetIo()); + list.add(present_io); + if (present_io) + list.add(io); + + return list.hashCode(); } + @Override public int compareTo(existsAll_result other) { if (!getClass().equals(other.getClass())) { return getClass().getName().compareTo(other.getClass().getName()); } int lastComparison = 0; - existsAll_result typedOther = (existsAll_result) other; - lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess()); + lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess()); if (lastComparison != 0) { return lastComparison; } if (isSetSuccess()) { - lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success); + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success); if (lastComparison != 0) { return lastComparison; } } - lastComparison = Boolean.valueOf(isSetIo()).compareTo(typedOther.isSetIo()); + lastComparison = Boolean.valueOf(isSetIo()).compareTo(other.isSetIo()); if (lastComparison != 0) { return lastComparison; } if (isSetIo()) { - lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.io, typedOther.io); + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.io, other.io); if (lastComparison != 0) { return lastComparison; } @@ -5128,7 +5194,7 @@ public class THBaseService { public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException { schemes.get(oprot.getScheme()).getScheme().write(oprot, this); - } + } @Override public String toString() { @@ -5186,26 +5252,28 @@ public class THBaseService { public void read(org.apache.thrift.protocol.TProtocol iprot, existsAll_result struct) throws org.apache.thrift.TException { org.apache.thrift.protocol.TField schemeField; iprot.readStructBegin(); - while (true) { + while (true) + { schemeField = iprot.readFieldBegin(); - if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { + if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { break; } switch (schemeField.id) { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list140 = iprot.readListBegin(); - struct.success = new ArrayList(_list140.size); - for (int _i141 = 0; _i141 < _list140.size; ++_i141) { - boolean _elem142; // required - _elem142 = iprot.readBool(); - struct.success.add(_elem142); + org.apache.thrift.protocol.TList _list150 = iprot.readListBegin(); + struct.success = new ArrayList(_list150.size); + boolean _elem151; + for (int _i152 = 0; _i152 < _list150.size; ++_i152) + { + _elem151 = iprot.readBool(); + struct.success.add(_elem151); } iprot.readListEnd(); } struct.setSuccessIsSet(true); - } else { + } else { org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; @@ -5214,7 +5282,7 @@ public class THBaseService { struct.io = new TIOError(); struct.io.read(iprot); struct.setIoIsSet(true); - } else { + } else { org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; @@ -5237,8 +5305,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.BOOL, struct.success.size())); - for (boolean _iter143 : struct.success) { - oprot.writeBool(_iter143); + for (boolean _iter153 : struct.success) + { + oprot.writeBool(_iter153); } oprot.writeListEnd(); } @@ -5277,8 +5346,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (boolean _iter144 : struct.success) { - oprot.writeBool(_iter144); + for (boolean _iter154 : struct.success) + { + oprot.writeBool(_iter154); } } } @@ -5293,12 +5363,13 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list145 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.BOOL, iprot.readI32()); - struct.success = new ArrayList(_list145.size); - for (int _i146 = 0; _i146 < _list145.size; ++_i146) { - boolean _elem147; // required - _elem147 = iprot.readBool(); - struct.success.add(_elem147); + org.apache.thrift.protocol.TList _list155 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.BOOL, iprot.readI32()); + struct.success = new ArrayList(_list155.size); + boolean _elem156; + for (int _i157 = 0; _i157 < _list155.size; ++_i157) + { + _elem156 = iprot.readBool(); + struct.success.add(_elem156); } } struct.setSuccessIsSet(true); @@ -6734,14 +6805,14 @@ public class THBaseService { case 2: // TGETS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list132 = iprot.readListBegin(); - struct.tgets = new ArrayList(_list132.size); - TGet _elem133; - for (int _i134 = 0; _i134 < _list132.size; ++_i134) + org.apache.thrift.protocol.TList _list158 = iprot.readListBegin(); + struct.tgets = new ArrayList(_list158.size); + TGet _elem159; + for (int _i160 = 0; _i160 < _list158.size; ++_i160) { - _elem133 = new TGet(); - _elem133.read(iprot); - struct.tgets.add(_elem133); + _elem159 = new TGet(); + _elem159.read(iprot); + struct.tgets.add(_elem159); } iprot.readListEnd(); } @@ -6774,9 +6845,9 @@ public class THBaseService { oprot.writeFieldBegin(TGETS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.tgets.size())); - for (TGet _iter135 : struct.tgets) + for (TGet _iter161 : struct.tgets) { - _iter135.write(oprot); + _iter161.write(oprot); } oprot.writeListEnd(); } @@ -6802,9 +6873,9 @@ public class THBaseService { oprot.writeBinary(struct.table); { oprot.writeI32(struct.tgets.size()); - for (TGet _iter136 : struct.tgets) + for (TGet _iter162 : struct.tgets) { - _iter136.write(oprot); + _iter162.write(oprot); } } } @@ -6815,14 +6886,14 @@ public class THBaseService { struct.table = iprot.readBinary(); struct.setTableIsSet(true); { - org.apache.thrift.protocol.TList _list137 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.tgets = new ArrayList(_list137.size); - TGet _elem138; - for (int _i139 = 0; _i139 < _list137.size; ++_i139) + org.apache.thrift.protocol.TList _list163 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.tgets = new ArrayList(_list163.size); + TGet _elem164; + for (int _i165 = 0; _i165 < _list163.size; ++_i165) { - _elem138 = new TGet(); - _elem138.read(iprot); - struct.tgets.add(_elem138); + _elem164 = new TGet(); + _elem164.read(iprot); + struct.tgets.add(_elem164); } } struct.setTgetsIsSet(true); @@ -7229,14 +7300,14 @@ public class THBaseService { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list140 = iprot.readListBegin(); - struct.success = new ArrayList(_list140.size); - TResult _elem141; - for (int _i142 = 0; _i142 < _list140.size; ++_i142) + org.apache.thrift.protocol.TList _list166 = iprot.readListBegin(); + struct.success = new ArrayList(_list166.size); + TResult _elem167; + for (int _i168 = 0; _i168 < _list166.size; ++_i168) { - _elem141 = new TResult(); - _elem141.read(iprot); - struct.success.add(_elem141); + _elem167 = new TResult(); + _elem167.read(iprot); + struct.success.add(_elem167); } iprot.readListEnd(); } @@ -7273,9 +7344,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size())); - for (TResult _iter143 : struct.success) + for (TResult _iter169 : struct.success) { - _iter143.write(oprot); + _iter169.write(oprot); } oprot.writeListEnd(); } @@ -7314,9 +7385,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (TResult _iter144 : struct.success) + for (TResult _iter170 : struct.success) { - _iter144.write(oprot); + _iter170.write(oprot); } } } @@ -7331,14 +7402,14 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list145 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.success = new ArrayList(_list145.size); - TResult _elem146; - for (int _i147 = 0; _i147 < _list145.size; ++_i147) + org.apache.thrift.protocol.TList _list171 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.success = new ArrayList(_list171.size); + TResult _elem172; + for (int _i173 = 0; _i173 < _list171.size; ++_i173) { - _elem146 = new TResult(); - _elem146.read(iprot); - struct.success.add(_elem146); + _elem172 = new TResult(); + _elem172.read(iprot); + struct.success.add(_elem172); } } struct.setSuccessIsSet(true); @@ -10125,14 +10196,14 @@ public class THBaseService { case 2: // TPUTS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list148 = iprot.readListBegin(); - struct.tputs = new ArrayList(_list148.size); - TPut _elem149; - for (int _i150 = 0; _i150 < _list148.size; ++_i150) + org.apache.thrift.protocol.TList _list174 = iprot.readListBegin(); + struct.tputs = new ArrayList(_list174.size); + TPut _elem175; + for (int _i176 = 0; _i176 < _list174.size; ++_i176) { - _elem149 = new TPut(); - _elem149.read(iprot); - struct.tputs.add(_elem149); + _elem175 = new TPut(); + _elem175.read(iprot); + struct.tputs.add(_elem175); } iprot.readListEnd(); } @@ -10165,9 +10236,9 @@ public class THBaseService { oprot.writeFieldBegin(TPUTS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.tputs.size())); - for (TPut _iter151 : struct.tputs) + for (TPut _iter177 : struct.tputs) { - _iter151.write(oprot); + _iter177.write(oprot); } oprot.writeListEnd(); } @@ -10193,9 +10264,9 @@ public class THBaseService { oprot.writeBinary(struct.table); { oprot.writeI32(struct.tputs.size()); - for (TPut _iter152 : struct.tputs) + for (TPut _iter178 : struct.tputs) { - _iter152.write(oprot); + _iter178.write(oprot); } } } @@ -10206,14 +10277,14 @@ public class THBaseService { struct.table = iprot.readBinary(); struct.setTableIsSet(true); { - org.apache.thrift.protocol.TList _list153 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.tputs = new ArrayList(_list153.size); - TPut _elem154; - for (int _i155 = 0; _i155 < _list153.size; ++_i155) + org.apache.thrift.protocol.TList _list179 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.tputs = new ArrayList(_list179.size); + TPut _elem180; + for (int _i181 = 0; _i181 < _list179.size; ++_i181) { - _elem154 = new TPut(); - _elem154.read(iprot); - struct.tputs.add(_elem154); + _elem180 = new TPut(); + _elem180.read(iprot); + struct.tputs.add(_elem180); } } struct.setTputsIsSet(true); @@ -11888,14 +11959,14 @@ public class THBaseService { case 2: // TDELETES if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list156 = iprot.readListBegin(); - struct.tdeletes = new ArrayList(_list156.size); - TDelete _elem157; - for (int _i158 = 0; _i158 < _list156.size; ++_i158) + org.apache.thrift.protocol.TList _list182 = iprot.readListBegin(); + struct.tdeletes = new ArrayList(_list182.size); + TDelete _elem183; + for (int _i184 = 0; _i184 < _list182.size; ++_i184) { - _elem157 = new TDelete(); - _elem157.read(iprot); - struct.tdeletes.add(_elem157); + _elem183 = new TDelete(); + _elem183.read(iprot); + struct.tdeletes.add(_elem183); } iprot.readListEnd(); } @@ -11928,9 +11999,9 @@ public class THBaseService { oprot.writeFieldBegin(TDELETES_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.tdeletes.size())); - for (TDelete _iter159 : struct.tdeletes) + for (TDelete _iter185 : struct.tdeletes) { - _iter159.write(oprot); + _iter185.write(oprot); } oprot.writeListEnd(); } @@ -11956,9 +12027,9 @@ public class THBaseService { oprot.writeBinary(struct.table); { oprot.writeI32(struct.tdeletes.size()); - for (TDelete _iter160 : struct.tdeletes) + for (TDelete _iter186 : struct.tdeletes) { - _iter160.write(oprot); + _iter186.write(oprot); } } } @@ -11969,14 +12040,14 @@ public class THBaseService { struct.table = iprot.readBinary(); struct.setTableIsSet(true); { - org.apache.thrift.protocol.TList _list161 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.tdeletes = new ArrayList(_list161.size); - TDelete _elem162; - for (int _i163 = 0; _i163 < _list161.size; ++_i163) + org.apache.thrift.protocol.TList _list187 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.tdeletes = new ArrayList(_list187.size); + TDelete _elem188; + for (int _i189 = 0; _i189 < _list187.size; ++_i189) { - _elem162 = new TDelete(); - _elem162.read(iprot); - struct.tdeletes.add(_elem162); + _elem188 = new TDelete(); + _elem188.read(iprot); + struct.tdeletes.add(_elem188); } } struct.setTdeletesIsSet(true); @@ -12383,14 +12454,14 @@ public class THBaseService { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list164 = iprot.readListBegin(); - struct.success = new ArrayList(_list164.size); - TDelete _elem165; - for (int _i166 = 0; _i166 < _list164.size; ++_i166) + org.apache.thrift.protocol.TList _list190 = iprot.readListBegin(); + struct.success = new ArrayList(_list190.size); + TDelete _elem191; + for (int _i192 = 0; _i192 < _list190.size; ++_i192) { - _elem165 = new TDelete(); - _elem165.read(iprot); - struct.success.add(_elem165); + _elem191 = new TDelete(); + _elem191.read(iprot); + struct.success.add(_elem191); } iprot.readListEnd(); } @@ -12427,9 +12498,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size())); - for (TDelete _iter167 : struct.success) + for (TDelete _iter193 : struct.success) { - _iter167.write(oprot); + _iter193.write(oprot); } oprot.writeListEnd(); } @@ -12468,9 +12539,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (TDelete _iter168 : struct.success) + for (TDelete _iter194 : struct.success) { - _iter168.write(oprot); + _iter194.write(oprot); } } } @@ -12485,14 +12556,14 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list169 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.success = new ArrayList(_list169.size); - TDelete _elem170; - for (int _i171 = 0; _i171 < _list169.size; ++_i171) + org.apache.thrift.protocol.TList _list195 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.success = new ArrayList(_list195.size); + TDelete _elem196; + for (int _i197 = 0; _i197 < _list195.size; ++_i197) { - _elem170 = new TDelete(); - _elem170.read(iprot); - struct.success.add(_elem170); + _elem196 = new TDelete(); + _elem196.read(iprot); + struct.success.add(_elem196); } } struct.setSuccessIsSet(true); @@ -17845,14 +17916,14 @@ public class THBaseService { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list172 = iprot.readListBegin(); - struct.success = new ArrayList(_list172.size); - TResult _elem173; - for (int _i174 = 0; _i174 < _list172.size; ++_i174) + org.apache.thrift.protocol.TList _list198 = iprot.readListBegin(); + struct.success = new ArrayList(_list198.size); + TResult _elem199; + for (int _i200 = 0; _i200 < _list198.size; ++_i200) { - _elem173 = new TResult(); - _elem173.read(iprot); - struct.success.add(_elem173); + _elem199 = new TResult(); + _elem199.read(iprot); + struct.success.add(_elem199); } iprot.readListEnd(); } @@ -17898,9 +17969,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size())); - for (TResult _iter175 : struct.success) + for (TResult _iter201 : struct.success) { - _iter175.write(oprot); + _iter201.write(oprot); } oprot.writeListEnd(); } @@ -17947,9 +18018,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (TResult _iter176 : struct.success) + for (TResult _iter202 : struct.success) { - _iter176.write(oprot); + _iter202.write(oprot); } } } @@ -17967,14 +18038,14 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(3); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list177 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.success = new ArrayList(_list177.size); - TResult _elem178; - for (int _i179 = 0; _i179 < _list177.size; ++_i179) + org.apache.thrift.protocol.TList _list203 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.success = new ArrayList(_list203.size); + TResult _elem204; + for (int _i205 = 0; _i205 < _list203.size; ++_i205) { - _elem178 = new TResult(); - _elem178.read(iprot); - struct.success.add(_elem178); + _elem204 = new TResult(); + _elem204.read(iprot); + struct.success.add(_elem204); } } struct.setSuccessIsSet(true); @@ -20710,14 +20781,14 @@ public class THBaseService { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list180 = iprot.readListBegin(); - struct.success = new ArrayList(_list180.size); - TResult _elem181; - for (int _i182 = 0; _i182 < _list180.size; ++_i182) + org.apache.thrift.protocol.TList _list206 = iprot.readListBegin(); + struct.success = new ArrayList(_list206.size); + TResult _elem207; + for (int _i208 = 0; _i208 < _list206.size; ++_i208) { - _elem181 = new TResult(); - _elem181.read(iprot); - struct.success.add(_elem181); + _elem207 = new TResult(); + _elem207.read(iprot); + struct.success.add(_elem207); } iprot.readListEnd(); } @@ -20754,9 +20825,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size())); - for (TResult _iter183 : struct.success) + for (TResult _iter209 : struct.success) { - _iter183.write(oprot); + _iter209.write(oprot); } oprot.writeListEnd(); } @@ -20795,9 +20866,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (TResult _iter184 : struct.success) + for (TResult _iter210 : struct.success) { - _iter184.write(oprot); + _iter210.write(oprot); } } } @@ -20812,14 +20883,14 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list185 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.success = new ArrayList(_list185.size); - TResult _elem186; - for (int _i187 = 0; _i187 < _list185.size; ++_i187) + org.apache.thrift.protocol.TList _list211 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.success = new ArrayList(_list211.size); + TResult _elem212; + for (int _i213 = 0; _i213 < _list211.size; ++_i213) { - _elem186 = new TResult(); - _elem186.read(iprot); - struct.success.add(_elem186); + _elem212 = new TResult(); + _elem212.read(iprot); + struct.success.add(_elem212); } } struct.setSuccessIsSet(true); @@ -22650,14 +22721,14 @@ public class THBaseService { case 0: // SUCCESS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list188 = iprot.readListBegin(); - struct.success = new ArrayList(_list188.size); - THRegionLocation _elem189; - for (int _i190 = 0; _i190 < _list188.size; ++_i190) + org.apache.thrift.protocol.TList _list214 = iprot.readListBegin(); + struct.success = new ArrayList(_list214.size); + THRegionLocation _elem215; + for (int _i216 = 0; _i216 < _list214.size; ++_i216) { - _elem189 = new THRegionLocation(); - _elem189.read(iprot); - struct.success.add(_elem189); + _elem215 = new THRegionLocation(); + _elem215.read(iprot); + struct.success.add(_elem215); } iprot.readListEnd(); } @@ -22694,9 +22765,9 @@ public class THBaseService { oprot.writeFieldBegin(SUCCESS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size())); - for (THRegionLocation _iter191 : struct.success) + for (THRegionLocation _iter217 : struct.success) { - _iter191.write(oprot); + _iter217.write(oprot); } oprot.writeListEnd(); } @@ -22735,9 +22806,9 @@ public class THBaseService { if (struct.isSetSuccess()) { { oprot.writeI32(struct.success.size()); - for (THRegionLocation _iter192 : struct.success) + for (THRegionLocation _iter218 : struct.success) { - _iter192.write(oprot); + _iter218.write(oprot); } } } @@ -22752,14 +22823,14 @@ public class THBaseService { BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list193 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.success = new ArrayList(_list193.size); - THRegionLocation _elem194; - for (int _i195 = 0; _i195 < _list193.size; ++_i195) + org.apache.thrift.protocol.TList _list219 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.success = new ArrayList(_list219.size); + THRegionLocation _elem220; + for (int _i221 = 0; _i221 < _list219.size; ++_i221) { - _elem194 = new THRegionLocation(); - _elem194.read(iprot); - struct.success.add(_elem194); + _elem220 = new THRegionLocation(); + _elem220.read(iprot); + struct.success.add(_elem220); } } struct.setSuccessIsSet(true); diff --git a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TResult.java b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TResult.java index 8c16012ddb9..317f9b599cd 100644 --- a/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TResult.java +++ b/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift2/generated/TResult.java @@ -37,12 +37,13 @@ import org.slf4j.LoggerFactory; /** * if no Result is found, row and columnValues will not be set. */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-05-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2018-07-04") public class TResult implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TResult"); private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1); private static final org.apache.thrift.protocol.TField COLUMN_VALUES_FIELD_DESC = new org.apache.thrift.protocol.TField("columnValues", org.apache.thrift.protocol.TType.LIST, (short)2); + private static final org.apache.thrift.protocol.TField STALE_FIELD_DESC = new org.apache.thrift.protocol.TField("stale", org.apache.thrift.protocol.TType.BOOL, (short)3); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -52,11 +53,13 @@ public class TResult implements org.apache.thrift.TBase columnValues; // required + public boolean stale; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { ROW((short)1, "row"), - COLUMN_VALUES((short)2, "columnValues"); + COLUMN_VALUES((short)2, "columnValues"), + STALE((short)3, "stale"); private static final Map byName = new HashMap(); @@ -75,6 +78,8 @@ public class TResult implements org.apache.thrift.TBase metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -124,11 +131,15 @@ public class TResult implements org.apache.thrift.TBaseother. */ public TResult(TResult other) { + __isset_bitfield = other.__isset_bitfield; if (other.isSetRow()) { this.row = org.apache.thrift.TBaseHelper.copyBinary(other.row); } @@ -152,6 +164,7 @@ public class TResult implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TScan"); @@ -57,6 +57,8 @@ public class TScan implements org.apache.thrift.TBase, jav private static final org.apache.thrift.protocol.TField COL_FAM_TIME_RANGE_MAP_FIELD_DESC = new org.apache.thrift.protocol.TField("colFamTimeRangeMap", org.apache.thrift.protocol.TType.MAP, (short)13); private static final org.apache.thrift.protocol.TField READ_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("readType", org.apache.thrift.protocol.TType.I32, (short)14); private static final org.apache.thrift.protocol.TField LIMIT_FIELD_DESC = new org.apache.thrift.protocol.TField("limit", org.apache.thrift.protocol.TType.I32, (short)15); + private static final org.apache.thrift.protocol.TField CONSISTENCY_FIELD_DESC = new org.apache.thrift.protocol.TField("consistency", org.apache.thrift.protocol.TType.I32, (short)16); + private static final org.apache.thrift.protocol.TField TARGET_REPLICA_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("targetReplicaId", org.apache.thrift.protocol.TType.I32, (short)17); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -83,6 +85,12 @@ public class TScan implements org.apache.thrift.TBase, jav */ public TReadType readType; // optional public int limit; // optional + /** + * + * @see TConsistency + */ + public TConsistency consistency; // optional + public int targetReplicaId; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -104,7 +112,13 @@ public class TScan implements org.apache.thrift.TBase, jav * @see TReadType */ READ_TYPE((short)14, "readType"), - LIMIT((short)15, "limit"); + LIMIT((short)15, "limit"), + /** + * + * @see TConsistency + */ + CONSISTENCY((short)16, "consistency"), + TARGET_REPLICA_ID((short)17, "targetReplicaId"); private static final Map byName = new HashMap(); @@ -149,6 +163,10 @@ public class TScan implements org.apache.thrift.TBase, jav return READ_TYPE; case 15: // LIMIT return LIMIT; + case 16: // CONSISTENCY + return CONSISTENCY; + case 17: // TARGET_REPLICA_ID + return TARGET_REPLICA_ID; default: return null; } @@ -195,8 +213,9 @@ public class TScan implements org.apache.thrift.TBase, jav private static final int __REVERSED_ISSET_ID = 3; private static final int __CACHEBLOCKS_ISSET_ID = 4; private static final int __LIMIT_ISSET_ID = 5; + private static final int __TARGETREPLICAID_ISSET_ID = 6; private byte __isset_bitfield = 0; - private static final _Fields optionals[] = {_Fields.START_ROW,_Fields.STOP_ROW,_Fields.COLUMNS,_Fields.CACHING,_Fields.MAX_VERSIONS,_Fields.TIME_RANGE,_Fields.FILTER_STRING,_Fields.BATCH_SIZE,_Fields.ATTRIBUTES,_Fields.AUTHORIZATIONS,_Fields.REVERSED,_Fields.CACHE_BLOCKS,_Fields.COL_FAM_TIME_RANGE_MAP,_Fields.READ_TYPE,_Fields.LIMIT}; + private static final _Fields optionals[] = {_Fields.START_ROW,_Fields.STOP_ROW,_Fields.COLUMNS,_Fields.CACHING,_Fields.MAX_VERSIONS,_Fields.TIME_RANGE,_Fields.FILTER_STRING,_Fields.BATCH_SIZE,_Fields.ATTRIBUTES,_Fields.AUTHORIZATIONS,_Fields.REVERSED,_Fields.CACHE_BLOCKS,_Fields.COL_FAM_TIME_RANGE_MAP,_Fields.READ_TYPE,_Fields.LIMIT,_Fields.CONSISTENCY,_Fields.TARGET_REPLICA_ID}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -235,6 +254,10 @@ public class TScan implements org.apache.thrift.TBase, jav new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TReadType.class))); tmpMap.put(_Fields.LIMIT, new org.apache.thrift.meta_data.FieldMetaData("limit", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); + tmpMap.put(_Fields.CONSISTENCY, new org.apache.thrift.meta_data.FieldMetaData("consistency", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TConsistency.class))); + tmpMap.put(_Fields.TARGET_REPLICA_ID, new org.apache.thrift.meta_data.FieldMetaData("targetReplicaId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TScan.class, metaDataMap); } @@ -299,6 +322,10 @@ public class TScan implements org.apache.thrift.TBase, jav this.readType = other.readType; } this.limit = other.limit; + if (other.isSetConsistency()) { + this.consistency = other.consistency; + } + this.targetReplicaId = other.targetReplicaId; } public TScan deepCopy() { @@ -328,6 +355,9 @@ public class TScan implements org.apache.thrift.TBase, jav this.readType = null; setLimitIsSet(false); this.limit = 0; + this.consistency = null; + setTargetReplicaIdIsSet(false); + this.targetReplicaId = 0; } public byte[] getStartRow() { @@ -759,6 +789,61 @@ public class TScan implements org.apache.thrift.TBase, jav __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LIMIT_ISSET_ID, value); } + /** + * + * @see TConsistency + */ + public TConsistency getConsistency() { + return this.consistency; + } + + /** + * + * @see TConsistency + */ + public TScan setConsistency(TConsistency consistency) { + this.consistency = consistency; + return this; + } + + public void unsetConsistency() { + this.consistency = null; + } + + /** Returns true if field consistency is set (has been assigned a value) and false otherwise */ + public boolean isSetConsistency() { + return this.consistency != null; + } + + public void setConsistencyIsSet(boolean value) { + if (!value) { + this.consistency = null; + } + } + + public int getTargetReplicaId() { + return this.targetReplicaId; + } + + public TScan setTargetReplicaId(int targetReplicaId) { + this.targetReplicaId = targetReplicaId; + setTargetReplicaIdIsSet(true); + return this; + } + + public void unsetTargetReplicaId() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID); + } + + /** Returns true if field targetReplicaId is set (has been assigned a value) and false otherwise */ + public boolean isSetTargetReplicaId() { + return EncodingUtils.testBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID); + } + + public void setTargetReplicaIdIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TARGETREPLICAID_ISSET_ID, value); + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case START_ROW: @@ -881,6 +966,22 @@ public class TScan implements org.apache.thrift.TBase, jav } break; + case CONSISTENCY: + if (value == null) { + unsetConsistency(); + } else { + setConsistency((TConsistency)value); + } + break; + + case TARGET_REPLICA_ID: + if (value == null) { + unsetTargetReplicaId(); + } else { + setTargetReplicaId((Integer)value); + } + break; + } } @@ -931,6 +1032,12 @@ public class TScan implements org.apache.thrift.TBase, jav case LIMIT: return getLimit(); + case CONSISTENCY: + return getConsistency(); + + case TARGET_REPLICA_ID: + return getTargetReplicaId(); + } throw new IllegalStateException(); } @@ -972,6 +1079,10 @@ public class TScan implements org.apache.thrift.TBase, jav return isSetReadType(); case LIMIT: return isSetLimit(); + case CONSISTENCY: + return isSetConsistency(); + case TARGET_REPLICA_ID: + return isSetTargetReplicaId(); } throw new IllegalStateException(); } @@ -1124,6 +1235,24 @@ public class TScan implements org.apache.thrift.TBase, jav return false; } + boolean this_present_consistency = true && this.isSetConsistency(); + boolean that_present_consistency = true && that.isSetConsistency(); + if (this_present_consistency || that_present_consistency) { + if (!(this_present_consistency && that_present_consistency)) + return false; + if (!this.consistency.equals(that.consistency)) + return false; + } + + boolean this_present_targetReplicaId = true && this.isSetTargetReplicaId(); + boolean that_present_targetReplicaId = true && that.isSetTargetReplicaId(); + if (this_present_targetReplicaId || that_present_targetReplicaId) { + if (!(this_present_targetReplicaId && that_present_targetReplicaId)) + return false; + if (this.targetReplicaId != that.targetReplicaId) + return false; + } + return true; } @@ -1206,6 +1335,16 @@ public class TScan implements org.apache.thrift.TBase, jav if (present_limit) list.add(limit); + boolean present_consistency = true && (isSetConsistency()); + list.add(present_consistency); + if (present_consistency) + list.add(consistency.getValue()); + + boolean present_targetReplicaId = true && (isSetTargetReplicaId()); + list.add(present_targetReplicaId); + if (present_targetReplicaId) + list.add(targetReplicaId); + return list.hashCode(); } @@ -1367,6 +1506,26 @@ public class TScan implements org.apache.thrift.TBase, jav return lastComparison; } } + lastComparison = Boolean.valueOf(isSetConsistency()).compareTo(other.isSetConsistency()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetConsistency()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.consistency, other.consistency); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetTargetReplicaId()).compareTo(other.isSetTargetReplicaId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetTargetReplicaId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.targetReplicaId, other.targetReplicaId); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -1512,6 +1671,22 @@ public class TScan implements org.apache.thrift.TBase, jav sb.append(this.limit); first = false; } + if (isSetConsistency()) { + if (!first) sb.append(", "); + sb.append("consistency:"); + if (this.consistency == null) { + sb.append("null"); + } else { + sb.append(this.consistency); + } + first = false; + } + if (isSetTargetReplicaId()) { + if (!first) sb.append(", "); + sb.append("targetReplicaId:"); + sb.append(this.targetReplicaId); + first = false; + } sb.append(")"); return sb.toString(); } @@ -1721,6 +1896,22 @@ public class TScan implements org.apache.thrift.TBase, jav org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 16: // CONSISTENCY + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.consistency = org.apache.hadoop.hbase.thrift2.generated.TConsistency.findByValue(iprot.readI32()); + struct.setConsistencyIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 17: // TARGET_REPLICA_ID + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.targetReplicaId = iprot.readI32(); + struct.setTargetReplicaIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -1852,6 +2043,18 @@ public class TScan implements org.apache.thrift.TBase, jav oprot.writeI32(struct.limit); oprot.writeFieldEnd(); } + if (struct.consistency != null) { + if (struct.isSetConsistency()) { + oprot.writeFieldBegin(CONSISTENCY_FIELD_DESC); + oprot.writeI32(struct.consistency.getValue()); + oprot.writeFieldEnd(); + } + } + if (struct.isSetTargetReplicaId()) { + oprot.writeFieldBegin(TARGET_REPLICA_ID_FIELD_DESC); + oprot.writeI32(struct.targetReplicaId); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -1915,7 +2118,13 @@ public class TScan implements org.apache.thrift.TBase, jav if (struct.isSetLimit()) { optionals.set(14); } - oprot.writeBitSet(optionals, 15); + if (struct.isSetConsistency()) { + optionals.set(15); + } + if (struct.isSetTargetReplicaId()) { + optionals.set(16); + } + oprot.writeBitSet(optionals, 17); if (struct.isSetStartRow()) { oprot.writeBinary(struct.startRow); } @@ -1981,12 +2190,18 @@ public class TScan implements org.apache.thrift.TBase, jav if (struct.isSetLimit()) { oprot.writeI32(struct.limit); } + if (struct.isSetConsistency()) { + oprot.writeI32(struct.consistency.getValue()); + } + if (struct.isSetTargetReplicaId()) { + oprot.writeI32(struct.targetReplicaId); + } } @Override public void read(org.apache.thrift.protocol.TProtocol prot, TScan struct) throws org.apache.thrift.TException { TTupleProtocol iprot = (TTupleProtocol) prot; - BitSet incoming = iprot.readBitSet(15); + BitSet incoming = iprot.readBitSet(17); if (incoming.get(0)) { struct.startRow = iprot.readBinary(); struct.setStartRowIsSet(true); @@ -2082,6 +2297,14 @@ public class TScan implements org.apache.thrift.TBase, jav struct.limit = iprot.readI32(); struct.setLimitIsSet(true); } + if (incoming.get(15)) { + struct.consistency = org.apache.hadoop.hbase.thrift2.generated.TConsistency.findByValue(iprot.readI32()); + struct.setConsistencyIsSet(true); + } + if (incoming.get(16)) { + struct.targetReplicaId = iprot.readI32(); + struct.setTargetReplicaIdIsSet(true); + } } } diff --git a/hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift2/hbase.thrift b/hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift2/hbase.thrift index 8c5ef599173..79196f4e8d5 100644 --- a/hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift2/hbase.thrift +++ b/hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift2/hbase.thrift @@ -65,7 +65,8 @@ struct TColumnIncrement { */ struct TResult { 1: optional binary row, - 2: required list columnValues + 2: required list columnValues, + 3: optional bool stale = false } /** @@ -101,6 +102,17 @@ struct TAuthorization { struct TCellVisibility { 1: optional string expression } + +/** + * Specify Consistency: + * - STRONG means reads only from primary region + * - TIMELINE means reads might return values from secondary region replicas + */ +enum TConsistency { + STRONG = 1, + TIMELINE = 2 +} + /** * Used to perform Get operations on a single row. * @@ -125,6 +137,8 @@ struct TGet { 6: optional binary filterString, 7: optional map attributes 8: optional TAuthorization authorizations + 9: optional TConsistency consistency + 10: optional i32 targetReplicaId } /** @@ -236,6 +250,8 @@ struct TScan { 13: optional map colFamTimeRangeMap 14: optional TReadType readType 15: optional i32 limit + 16: optional TConsistency consistency + 17: optional i32 targetReplicaId } /** diff --git a/hbase-thrift/src/test/java/org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.java b/hbase-thrift/src/test/java/org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.java index 3653ce5ffeb..1626121047a 100644 --- a/hbase-thrift/src/test/java/org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.java +++ b/hbase-thrift/src/test/java/org/apache/hadoop/hbase/thrift2/TestThriftHBaseServiceHandler.java @@ -52,6 +52,7 @@ import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.hbase.TableName; import org.apache.hadoop.hbase.client.Admin; +import org.apache.hadoop.hbase.client.Consistency; import org.apache.hadoop.hbase.client.Delete; import org.apache.hadoop.hbase.client.Durability; import org.apache.hadoop.hbase.client.Get; @@ -75,6 +76,7 @@ import org.apache.hadoop.hbase.thrift2.generated.TColumn; import org.apache.hadoop.hbase.thrift2.generated.TColumnIncrement; import org.apache.hadoop.hbase.thrift2.generated.TColumnValue; import org.apache.hadoop.hbase.thrift2.generated.TCompareOp; +import org.apache.hadoop.hbase.thrift2.generated.TConsistency; import org.apache.hadoop.hbase.thrift2.generated.TDelete; import org.apache.hadoop.hbase.thrift2.generated.TDeleteType; import org.apache.hadoop.hbase.thrift2.generated.TDurability; @@ -1559,6 +1561,37 @@ public class TestThriftHBaseServiceHandler { assertTColumnValueEqual(columnValueB, result.getColumnValues().get(1)); } + @Test + public void testConsistency() throws Exception { + byte[] rowName = Bytes.toBytes("testConsistency"); + TGet tGet = new TGet(wrap(rowName)); + tGet.setConsistency(TConsistency.STRONG); + Get get = getFromThrift(tGet); + assertEquals(Consistency.STRONG, get.getConsistency()); + + tGet.setConsistency(TConsistency.TIMELINE); + tGet.setTargetReplicaId(1); + get = getFromThrift(tGet); + assertEquals(Consistency.TIMELINE, get.getConsistency()); + assertEquals(1, get.getReplicaId()); + + TScan tScan = new TScan(); + tScan.setConsistency(TConsistency.STRONG); + Scan scan = scanFromThrift(tScan); + assertEquals(Consistency.STRONG, scan.getConsistency()); + + tScan.setConsistency(TConsistency.TIMELINE); + tScan.setTargetReplicaId(1); + scan = scanFromThrift(tScan); + assertEquals(Consistency.TIMELINE, scan.getConsistency()); + assertEquals(1, scan.getReplicaId()); + + TResult tResult = new TResult(); + assertFalse(tResult.isSetStale()); + tResult.setStale(true); + assertTrue(tResult.isSetStale()); + } + public static class DelayingRegionObserver implements RegionCoprocessor, RegionObserver { private static final Logger LOG = LoggerFactory.getLogger(DelayingRegionObserver.class); // sleep time in msec