[ https://issues.apache.org/jira/browse/IMPALA-8252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lars Volker updated IMPALA-8252: -------------------------------- Description: The change for IMPALA-1048 writes {{TRuntimeProfileNode.node_metadata}} unconditionally, even when both its fields are unset. This trips up the Java reader code, which expects to find exactly one type of a union to be set. The resulting error looks like this: {noformat} Caused by: org.apache.thrift.protocol.TProtocolException: Unrecognized type 0 at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:144) at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:60) at com.cloudera.impala.thrift.TRuntimeProfileNodeMetadata.standardSchemeReadValue(TRuntimeProfileNodeMetadata.java:163) at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:224) at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:213) at org.apache.thrift.TUnion.read(TUnion.java:138) at com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1532) at com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1341) at com.cloudera.impala.thrift.TRuntimeProfileNode.read(TRuntimeProfileNode.java:1187) at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:426) at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:405) at com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:339) at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:81) at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:67) at com.cloudera.ipe.util.ThriftUtil.read(ThriftUtil.java:65) {noformat} (This particular implementation rewrites the Java namespace for compatibility reasons, but the code used the latest master commit's thrift files.) was: The change for IMPALA-1048 writes TRuntimeProfileNode.meta_data unconditionally, even when both its fields are unset. This trips up the Java reader code, which expects to find exactly one type of a union to be set. The resulting error looks like this: {noformat} Caused by: org.apache.thrift.protocol.TProtocolException: Unrecognized type 0 at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:144) at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:60) at com.cloudera.impala.thrift.TRuntimeProfileNodeMetadata.standardSchemeReadValue(TRuntimeProfileNodeMetadata.java:163) at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:224) at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:213) at org.apache.thrift.TUnion.read(TUnion.java:138) at com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1532) at com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1341) at com.cloudera.impala.thrift.TRuntimeProfileNode.read(TRuntimeProfileNode.java:1187) at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:426) at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:405) at com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:339) at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:81) at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:67) at com.cloudera.ipe.util.ThriftUtil.read(ThriftUtil.java:65) {noformat} (This particular implementation rewrites the Java namespace for compatibility reasons, but the code used the latest master commit's thrift files.) > Impala writes malformed thrift profiles > --------------------------------------- > > Key: IMPALA-8252 > URL: https://issues.apache.org/jira/browse/IMPALA-8252 > Project: IMPALA > Issue Type: Bug > Components: Backend > Affects Versions: Impala 3.2.0 > Reporter: Lars Volker > Assignee: Lars Volker > Priority: Blocker > Labels: profile > > The change for IMPALA-1048 writes {{TRuntimeProfileNode.node_metadata}} > unconditionally, even when both its fields are unset. This trips up the Java > reader code, which expects to find exactly one type of a union to be set. The > resulting error looks like this: > {noformat} > Caused by: org.apache.thrift.protocol.TProtocolException: Unrecognized type 0 > at > org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:144) > at > org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:60) > at > com.cloudera.impala.thrift.TRuntimeProfileNodeMetadata.standardSchemeReadValue(TRuntimeProfileNodeMetadata.java:163) > at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:224) > at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:213) > at org.apache.thrift.TUnion.read(TUnion.java:138) > at > com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1532) > at > com.cloudera.impala.thrift.TRuntimeProfileNode$TRuntimeProfileNodeStandardScheme.read(TRuntimeProfileNode.java:1341) > at > com.cloudera.impala.thrift.TRuntimeProfileNode.read(TRuntimeProfileNode.java:1187) > at > com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:426) > at > com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:405) > at > com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:339) > at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:81) > at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:67) > at com.cloudera.ipe.util.ThriftUtil.read(ThriftUtil.java:65) > {noformat} > (This particular implementation rewrites the Java namespace for compatibility > reasons, but the code used the latest master commit's thrift files.) -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org