[ https://issues.apache.org/jira/browse/PHOENIX-5226?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
jaanai updated PHOENIX-5226: ---------------------------- Attachment: PHOENIX-5226-master-v2.patch > The format of VIEW_MODIFIED_PROPERTY_BYTES is incorrect as a tag of the cell > ----------------------------------------------------------------------------- > > Key: PHOENIX-5226 > URL: https://issues.apache.org/jira/browse/PHOENIX-5226 > Project: Phoenix > Issue Type: Bug > Affects Versions: 4.15.0, 5.1.0 > Reporter: jaanai > Assignee: jaanai > Priority: Critical > Fix For: 4.15.0, 5.1.0 > > Attachments: PHOENIX-5226-master-v2.patch, PHOENIX-5226-master.patch, > Screen Shot 2019-04-01 at 16.09.23.png, Screen Shot 2019-04-01 at 16.13.10.png > > > We use a tag of cell to indicat that some properties should not be derived > from the base table for view table. VIEW_MODIFIED_PROPERTY_BYTES is used a > tag bytes, but the format is incorrect, the below is a reference from > KeyValue interface: > {quote}KeyValue can optionally contain Tags. When it contains tags, it is > added in the byte array after > * the value part. The format for this part is: > <code><tagslength><tagsbytes></code>. > * <code>tagslength</code> maximum is <code>Short.MAX_SIZE</code>. The > <code>tagsbytes</code> > * contain one or more tags where as each tag is of the form > * <code><taglength><tagtype><tagbytes></code>. <code>tagtype</code> is one > byte > * and <code>taglength</code> maximum is <code>Short.MAX_SIZE</code> and it > includes 1 byte type > * length and actual tag bytes length.{quote} > The CATALOG table will be badly affected. Some errors will be caused when > reads CATALOG table. > > {code:java} > 0: jdbc:phoenix:thin:url=http://localhost> drop view "test_2"; Error: Error > -1 (00000) : Error while executing SQL "drop view "test_2"": Remote driver > error: RuntimeException: org.apache.phoenix.exception.PhoenixIOException: > org.apache.hadoop.hbase.DoNotRetryIOException: test_2: 4 at > org.apache.phoenix.util.ServerUtil.createIOException(ServerUtil.java:114) at > org.apache.phoenix.coprocessor.MetaDataEndpointImpl.dropTable(MetaDataEndpointImpl.java:2729) > at > org.apache.phoenix.coprocessor.generated.MetaDataProtos$MetaDataService.callMethod(MetaDataProtos.java:17078) > at > org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:8210) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.execServiceOnRegion(RSRpcServices.java:2475) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:2457) > at > org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:42010) > at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:418) at > org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:136) at > org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:324) at > org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:304) > Caused by: java.lang.ArrayIndexOutOfBoundsException: 4 at > org.apache.hadoop.hbase.ArrayBackedTag.<init>(ArrayBackedTag.java:97) at > org.apache.hadoop.hbase.CellUtil$5.next(CellUtil.java:1107) at > org.apache.hadoop.hbase.CellUtil$5.next(CellUtil.java:1094) at > org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher.isCellTTLExpired(ScanQueryMatcher.java:153) > at > org.apache.hadoop.hbase.regionserver.querymatcher.ScanQueryMatcher.preCheck(ScanQueryMatcher.java:198) > at > org.apache.hadoop.hbase.regionserver.querymatcher.NormalUserScanQueryMatcher.match(NormalUserScanQueryMatcher.java:64) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:578) > {code} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)