final String errMsgFromServer = resp.getError() != null ? resp.getError().getMessage() : "";
public Builder mergeFrom(com.dremio.exec.proto.UserBitShared.DremioPBError other) { if (other == com.dremio.exec.proto.UserBitShared.DremioPBError.getDefaultInstance()) return this; if (other.hasErrorId()) { bitField0_ |= 0x00000001; errorId_ = other.errorId_; onChanged(); if (other.hasEndpoint()) { mergeEndpoint(other.getEndpoint()); if (other.hasErrorType()) { setErrorType(other.getErrorType()); if (other.hasMessage()) { bitField0_ |= 0x00000008; message_ = other.message_; onChanged(); if (other.hasException()) { mergeException(other.getException()); if (other.hasOriginalMessage()) { bitField0_ |= 0x00000040; originalMessage_ = other.originalMessage_; if (other.hasTypeSpecificContext()) { setTypeSpecificContext(other.getTypeSpecificContext()); this.mergeUnknownFields(other.getUnknownFields()); return this;
/** * <code>optional .exec.shared.DremioPBError error = 3;</code> */ public Builder mergeError(com.dremio.exec.proto.UserBitShared.DremioPBError value) { if (errorBuilder_ == null) { if (((bitField0_ & 0x00000004) == 0x00000004) && error_ != com.dremio.exec.proto.UserBitShared.DremioPBError.getDefaultInstance()) { error_ = com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(error_).mergeFrom(value).buildPartial(); } else { error_ = value; } onChanged(); } else { errorBuilder_.mergeFrom(value); } bitField0_ |= 0x00000004; return this; } /**
break; case 2: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE));
DremioPBError remoteError = ure.getOrCreatePBError(false); ExceptionWrapper ew = remoteError.getException(); Class<? extends Throwable> exceptionClazz; do {
if (((bitField0_ & 0x00000001) == 0x00000001)) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, getErrorIdBytes()); .computeBytesSize(4, getMessageBytes()); .computeBytesSize(1001, getOriginalMessageBytes()); size += 2 * getContextList().size(); .computeBytesSize(1003, typeSpecificContext_); size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size;
throw new SQLException("Failure getting metadata: " + error.getMessage());
private ServerMeta getServerMeta() throws SQLException { assert getServerMetaSupported(); if (serverMeta == null) { synchronized(this) { if (serverMeta == null) { DremioConnection connection = (DremioConnection) getConnection(); try { GetServerMetaResp resp = connection.getClient().getServerMeta().get(); if (resp.getStatus() != RequestStatus.OK) { DremioPBError error = resp.getError(); throw new SQLException("Error when getting server meta: " + error.getMessage()); } serverMeta = resp.getServerMeta(); convertSupport = SQLConvertSupport.toSQLConvertSupport(serverMeta.getConvertSupportList()); } catch (InterruptedException e) { throw new SQLException("Interrupted when getting server meta", e); } catch (ExecutionException e) { Throwable cause = e.getCause(); if (cause == null) { throw new AssertionError("Something unknown happened", e); } Throwables.propagateIfPossible(cause); throw new SQLException("Error when getting server meta", cause); } } } } return serverMeta; }
Assert.assertEquals(DremioPBError.ErrorType.RESOURCE, error.getErrorType()); Assert.assertTrue("Error message isn't related to memory error", uex.getMessage().contains(UserException.MEMORY_ERROR_MSG));
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.CreatePreparedStatementResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.setPreparedStatement(input.mergeObject(com.dremio.exec.proto.UserProtos.PreparedStatement.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.PreparedStatement.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.CreatePreparedStatementResp.Builder builder)
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.GetCatalogsResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.addCatalogs(input.mergeObject(com.dremio.exec.proto.UserProtos.CatalogMetadata.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.CatalogMetadata.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.GetCatalogsResp.Builder builder)
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.GetServerMetaResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.setServerMeta(input.mergeObject(com.dremio.exec.proto.UserProtos.ServerMeta.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.ServerMeta.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.GetServerMetaResp.Builder builder)
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.GetTablesResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.addTables(input.mergeObject(com.dremio.exec.proto.UserProtos.TableMetadata.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.TableMetadata.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.GetTablesResp.Builder builder)
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.GetSchemasResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.addSchemas(input.mergeObject(com.dremio.exec.proto.UserProtos.SchemaMetadata.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.SchemaMetadata.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.GetSchemasResp.Builder builder)
private void testSingleMode(String fileName) throws Exception{ test(SINGLE_MODE); CoordinationProtos.NodeEndpoint endpoint = nodes[0].getContext().getEndpoint(); String controlsString = "{\"injections\":[{" + "\"address\":\"" + endpoint.getAddress() + "\"," + "\"port\":\"" + endpoint.getUserPort() + "\"," + "\"type\":\"exception\"," + "\"siteClass\":\"" + "com.dremio.exec.physical.impl.ScanBatch" + "\"," + "\"desc\":\"" + "next-allocate" + "\"," + "\"nSkip\":0," + "\"nFire\":1," + "\"exceptionClass\":\"" + OutOfMemoryException.class.getName() + "\"" + "}]}"; ControlsInjectionUtil.setControls(client, controlsString); String query = getFile(fileName); try { test(query); } catch(UserException uex) { DremioPBError error = uex.getOrCreatePBError(false); Assert.assertEquals(DremioPBError.ErrorType.RESOURCE, error.getErrorType()); Assert.assertTrue("Error message isn't related to memory error", uex.getMessage().contains(UserException.MEMORY_ERROR_MSG)); } }
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.QueryPlanFragments.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(input.readEnum())); break; case 2: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; case 3: builder.addFragments(input.mergeObject(com.dremio.exec.proto.CoordExecRPC.PlanFragment.newBuilder(), com.dremio.exec.proto.SchemaCoordExecRPC.PlanFragment.MERGE)); break; case 4: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.QueryPlanFragments.Builder builder)
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserProtos.GetColumnsResp.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setStatus(com.dremio.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum())); break; case 2: builder.addColumns(input.mergeObject(com.dremio.exec.proto.UserProtos.ColumnMetadata.newBuilder(), com.dremio.exec.proto.SchemaUserProtos.ColumnMetadata.MERGE)); break; case 3: builder.setError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; case 13: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserProtos.GetColumnsResp.Builder builder)
/** * returns or creates a DremioPBError object corresponding to this user exception. * * @param verbose should the error object contain the verbose error message ? * @return protobuf error object */ public DremioPBError getOrCreatePBError(final boolean verbose) { final DremioPBError.Builder builder = DremioPBError.newBuilder(); builder.setErrorType(errorType); builder.setErrorId(context.getErrorId()); if (context.getEndpoint() != null) { builder.setEndpoint(context.getEndpoint()); } builder.setMessage(getVerboseMessage()); builder.setOriginalMessage(getOriginalMessage()); if (getCause() != null) { // some unit tests use this information to make sure a specific exception was thrown in the server builder.setException(ErrorHelper.getWrapper(getCause())); } builder.addAllContext(context.getContextAsStrings()); if (rawAdditionalContext != null) { builder.setTypeSpecificContext(rawAdditionalContext); } return builder.build(); }
public void mergeFrom(io.protostuff.Input input, com.dremio.exec.proto.UserBitShared.QueryResult.Builder builder) throws java.io.IOException { for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this)) { switch(number) { case 0: return; case 1: builder.setQueryState(com.dremio.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(input.readEnum())); break; case 2: builder.setQueryId(input.mergeObject(com.dremio.exec.proto.UserBitShared.QueryId.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.QueryId.MERGE)); break; case 3: builder.addError(input.mergeObject(com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.DremioPBError.MERGE)); break; default: input.handleUnknownField(number, this); } } } public boolean isInitialized(com.dremio.exec.proto.UserBitShared.QueryResult.Builder builder)
/** * <code>optional .exec.shared.DremioPBError error = 3;</code> */ public Builder mergeError(com.dremio.exec.proto.UserBitShared.DremioPBError value) { if (errorBuilder_ == null) { if (((bitField0_ & 0x00000004) == 0x00000004) && error_ != com.dremio.exec.proto.UserBitShared.DremioPBError.getDefaultInstance()) { error_ = com.dremio.exec.proto.UserBitShared.DremioPBError.newBuilder(error_).mergeFrom(value).buildPartial(); } else { error_ = value; } onChanged(); } else { errorBuilder_.mergeFrom(value); } bitField0_ |= 0x00000004; return this; } /**