PHOENIX-4855 Continue to write base table column metadata when creating a view 
in order to support rollback (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/00ba63b5
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/00ba63b5
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/00ba63b5

Branch: refs/heads/4.x-cdh5.15
Commit: 00ba63b5ab575365013bb15990fdda045a18d63c
Parents: 708a788
Author: Thomas D'Silva <tdsi...@apache.org>
Authored: Sat Oct 6 20:40:54 2018 +0100
Committer: Pedro Boado <pbo...@apache.org>
Committed: Wed Oct 17 22:50:43 2018 +0100

----------------------------------------------------------------------
 .../java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/00ba63b5/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java
----------------------------------------------------------------------
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java
 
b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java
index 18c9000..52dfe99 100644
--- 
a/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java
+++ 
b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java
@@ -737,9 +737,10 @@ public class PhoenixDatabaseMetaData implements 
DatabaseMetaData {
             boolean isSalted = table.getBucketNum()!=null;
             boolean tenantColSkipped = false;
             List<PColumn> columns = table.getColumns();
-            columns = Lists.newArrayList(columns.subList(isSalted ? 1 : 0, 
columns.size()));
+            int startOffset = isSalted ? 1 : 0;
+                       columns = 
Lists.newArrayList(columns.subList(startOffset, columns.size()));
             for (PColumn column : columns) {
-                if (isTenantSpecificConnection && 
column.equals(table.getPKColumns().get(0))) {
+                if (isTenantSpecificConnection && 
column.equals(table.getPKColumns().get(startOffset))) {
                     // skip the tenant column
                     tenantColSkipped = true;
                     continue;
@@ -874,7 +875,7 @@ public class PhoenixDatabaseMetaData implements 
DatabaseMetaData {
                 byte[] keySeqBytes = ByteUtil.EMPTY_BYTE_ARRAY;
                 int pkPos = table.getPKColumns().indexOf(column);
                 if (pkPos!=-1) {
-                    short keySeq = (short) (pkPos + 1 - (isSalted ? 1 : 0) - 
(tenantColSkipped ? 1 : 0));
+                    short keySeq = (short) (pkPos + 1 - startOffset - 
(tenantColSkipped ? 1 : 0));
                     keySeqBytes = PSmallint.INSTANCE.toBytes(keySeq);
                 }
                 cells.add(KeyValueUtil.newKeyValue(rowKey, TABLE_FAMILY_BYTES, 
KEY_SEQ_BYTES,

Reply via email to