Eric Daigneault created PHOENIX-2829:
----------------------------------------

             Summary: queryserver fails with InvalidProtocolBufferException 
when connecting from thinclient
                 Key: PHOENIX-2829
                 URL: https://issues.apache.org/jira/browse/PHOENIX-2829
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.7.0
         Environment: cluster on Ubuntu 14.04, client app on windows 7

Hadoop 2.7.2, HBase 1.1.3 and Phoenix 4.7.0, cluster with 3 nodes
            Reporter: Eric Daigneault


Have a cluster of 3 nodes and was able to perform misc queries and yarn jobs on 
it using just HBase.  Installed Phoenix to get the SQL interface and all worked 
fine with the "fat" client jar in a simple eclipse app.

Was also able to perform querries with SQuirreL and that same client jar 
without issues.

I then tried the thin driver with the queryserver and was never able to get it 
to work.  Squirrel and the simple app return the same error as seen from the 
server's log (see panel below)

The query server runs on the master node which contains the hbase region server 
and the environment variable HBASE_CONF_DIR is set to the folder containing 
hbase-site.xml and other hbase configurations.



{noformat}
java.lang.RuntimeException: 
org.apache.calcite.avatica.com.google.protobuf.InvalidProtocolBufferException: 
While parsing a protocol message, the input ended unexpectedly in the middle of 
a field.  This could mean either that the input has been truncated or that an 
embedded message misreported its own length.                                    
                                             
        at 
org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:98)
                                       
        at 
org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:38)
                                       
        at 
org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:68)
                        
        at 
org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)        
                                       
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)  
                                       
        at org.eclipse.jetty.server.Server.handle(Server.java:497)              
                                                  
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)    
                                                  
        at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:245)     
                                       
        at 
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)      
                                       
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
                                       
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 
                                       
        at java.lang.Thread.run(Thread.java:745)                                
                                                  
Caused by: 
org.apache.calcite.avatica.com.google.protobuf.InvalidProtocolBufferException: 
While parsing a protocol message, the input ended unexpectedly in the middle of 
a field.  This could mean either that the input has been truncated or that an 
embedded message misreported its own length.                                    
                                                              
        at 
org.apache.calcite.avatica.com.google.protobuf.InvalidProtocolBufferException.truncatedMessage(InvalidProtocolBufferException.java:70)
                                                                                
                                   
        at 
org.apache.calcite.avatica.com.google.protobuf.CodedInputStream.skipRawBytesSlowPath(CodedInputStream.java:1293)
       
        at 
org.apache.calcite.avatica.com.google.protobuf.CodedInputStream.skipRawBytes(CodedInputStream.java:1276)
               
        at 
org.apache.calcite.avatica.com.google.protobuf.CodedInputStream.skipField(CodedInputStream.java:197)
                   
        at 
org.apache.calcite.avatica.com.google.protobuf.CodedInputStream.skipMessage(CodedInputStream.java:273)
                 
        at 
org.apache.calcite.avatica.com.google.protobuf.CodedInputStream.skipField(CodedInputStream.java:200)
                   
        at 
org.apache.calcite.avatica.proto.Common$WireMessage.<init>(Common.java:11627)   
                                       
        at 
org.apache.calcite.avatica.proto.Common$WireMessage.<init>(Common.java:11595)   
                                       
        at 
org.apache.calcite.avatica.proto.Common$WireMessage$1.parsePartialFrom(Common.java:12061)
                              
        at 
org.apache.calcite.avatica.proto.Common$WireMessage$1.parsePartialFrom(Common.java:12055)
                              
        at 
org.apache.calcite.avatica.com.google.protobuf.AbstractParser.parsePartialFrom(AbstractParser.java:137)
                
        at 
org.apache.calcite.avatica.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:168)
                       
        at 
org.apache.calcite.avatica.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:180)
                       
        at 
org.apache.calcite.avatica.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:185)
                       
        at 
org.apache.calcite.avatica.com.google.protobuf.AbstractParser.parseFrom(AbstractParser.java:49)
                        
        at 
org.apache.calcite.avatica.proto.Common$WireMessage.parseFrom(Common.java:11760)
                                       
        at 
org.apache.calcite.avatica.remote.ProtobufTranslationImpl.parseRequest(ProtobufTranslationImpl.java:236)
             
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to