Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-1468

Add org.iq80.snappy to client and server assemblies

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 4.2.0, 3.2.0
    • 3.0.0, 4.0.0, 4.2.0, 3.2.0
    • None
    • None

    Description

      After commit for PHOENIX-1455 to replace org.xerial.snappy with org.lq80.snappy (https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=commit;h=ab0bcb8393ae01c063fa30ef7902f0a1c594f804) backward compatibility fails for joins/count distinct with client on Phoenix 4.1.0 and server on using Phoenix with the following hash from 4.2 branch ab0bcb8393ae01c063fa30ef7902f0a1c594f804.

      Ex.

      create table t1 (pk1 varchar not null primary key, mycol varchar); create table t2 (pk1 varchar not null primary key, mycol varchar);
      select t1.pk1 from t1 join t2 on t1.pk1=t2.mycol;
      

      Exception:

      java.lang.NoClassDefFoundError: org/iq80/snappy/CorruptionException
      	at org.apache.phoenix.coprocessor.ServerCachingEndpointImpl.addServerCache(ServerCachingEndpointImpl.java:78)
      	at org.apache.phoenix.coprocessor.generated.ServerCachingProtos$ServerCachingService.callMethod(ServerCachingProtos.java:3200)
      	at org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:5541)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.execServiceOnRegion(HRegionServer.java:3300)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.execService(HRegionServer.java:3282)
      	at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:29501)
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2012)
      	at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:98)
      	at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.consumerLoop(SimpleRpcScheduler.java:160)
      	at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.access$000(SimpleRpcScheduler.java:38)
      	at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler$1.run(SimpleRpcScheduler.java:110)
      	at java.lang.Thread.run(Thread.java:722)
      Caused by: java.lang.NoClassDefFoundError: org/iq80/snappy/CorruptionException
      	at java.lang.Class.forName0(Native Method)
      	at java.lang.Class.forName(Class.java:188)
      	at org.apache.phoenix.coprocessor.ServerCachingEndpointImpl.addServerCache(ServerCachingEndpointImpl.java:72)
      

      Attachments

        1. PHOENIX-1468.patch
          1 kB
          Andrew Kyle Purtell
        2. PHOENIX-1468.patch
          2 kB
          Andrew Kyle Purtell
        3. PHOENIX-1468.patch
          3 kB
          Andrew Kyle Purtell
        4. PHOENIX-1468-3.2.patch
          3 kB
          Andrew Kyle Purtell
        5. PHOENIX-1468-4.2.patch
          3 kB
          Andrew Kyle Purtell

        Activity

          People

            apurtell Andrew Kyle Purtell
            mujtabachohan Mujtaba Chohan
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: