You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by sa...@apache.org on 2016/11/22 02:54:40 UTC
[36/36] phoenix git commit: Fix test failure
Fix test failure
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/d49f619e
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/d49f619e
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/d49f619e
Branch: refs/heads/encodecolumns2
Commit: d49f619e68e41817e535cf1a6d004511193d2a28
Parents: 09eab86
Author: Samarth <sa...@salesforce.com>
Authored: Tue Nov 8 12:26:45 2016 -0800
Committer: Samarth <sa...@salesforce.com>
Committed: Mon Nov 21 18:51:17 2016 -0800
----------------------------------------------------------------------
.../phoenix/compile/CreateTableCompiler.java | 2 +-
.../expression/ArrayColumnExpression.java | 27 +++++++++++---------
.../expression/KeyValueColumnExpression.java | 2 +-
3 files changed, 17 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/d49f619e/phoenix-core/src/main/java/org/apache/phoenix/compile/CreateTableCompiler.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/compile/CreateTableCompiler.java b/phoenix-core/src/main/java/org/apache/phoenix/compile/CreateTableCompiler.java
index c986c28..fae53e2 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/CreateTableCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/CreateTableCompiler.java
@@ -329,7 +329,7 @@ public class CreateTableCompiler {
@Override
public Boolean visit(ArrayColumnExpression node) {
try {
- this.position = table.getColumnFamily(node.getColumnFamily()).getPColumnForColumnQualifier(node.getEncodedColumnQualifier()).getPosition();
+ this.position = table.getColumnFamily(node.getColumnFamily()).getPColumnForColumnQualifier(node.getPositionInArray()).getPosition();
} catch (SQLException e) {
throw new RuntimeException(e);
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/d49f619e/phoenix-core/src/main/java/org/apache/phoenix/expression/ArrayColumnExpression.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/expression/ArrayColumnExpression.java b/phoenix-core/src/main/java/org/apache/phoenix/expression/ArrayColumnExpression.java
index f4616da..0b5e5d7 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/expression/ArrayColumnExpression.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/expression/ArrayColumnExpression.java
@@ -43,21 +43,21 @@ import org.apache.phoenix.util.SchemaUtil;
*/
public class ArrayColumnExpression extends KeyValueColumnExpression {
- private int encodedCQ;
- private String displayName;
+ private int positionInArray;
+ private String arrayColDisplayName;
public ArrayColumnExpression() {
}
public ArrayColumnExpression(PDatum column, byte[] cf, int encodedCQ) {
super(column, cf, cf);
- this.encodedCQ = encodedCQ;
+ this.positionInArray = encodedCQ;
}
public ArrayColumnExpression(PColumn column, String displayName, boolean encodedColumnName) {
super(column, column.getFamilyName().getBytes(), column.getFamilyName().getBytes());
- this.displayName = SchemaUtil.getColumnDisplayName(column.getFamilyName().getString(), column.getName().getString());
- this.encodedCQ = column.getEncodedColumnQualifier();
+ this.arrayColDisplayName = displayName;
+ this.positionInArray = column.getEncodedColumnQualifier();
}
@Override
@@ -70,20 +70,20 @@ public class ArrayColumnExpression extends KeyValueColumnExpression {
// Given a ptr to the entire array, set ptr to point to a particular element within that array
// given the type of an array element (see comments in PDataTypeForArray)
- PArrayDataType.positionAtArrayElement(ptr, encodedCQ, PVarbinary.INSTANCE, null);
+ PArrayDataType.positionAtArrayElement(ptr, positionInArray, PVarbinary.INSTANCE, null);
return true;
}
@Override
public void readFields(DataInput input) throws IOException {
super.readFields(input);
- encodedCQ = WritableUtils.readVInt(input);
+ positionInArray = WritableUtils.readVInt(input);
}
@Override
public void write(DataOutput output) throws IOException {
super.write(output);
- WritableUtils.writeVInt(output, encodedCQ);
+ WritableUtils.writeVInt(output, positionInArray);
}
public KeyValueColumnExpression getKeyValueExpression() {
@@ -118,16 +118,19 @@ public class ArrayColumnExpression extends KeyValueColumnExpression {
public PDataType getDataType() {
return datatype;
}
- }, getColumnFamily(), getEncodedColumnQualifier());
+ }, getColumnFamily(), getPositionInArray());
}
@Override
public String toString() {
- return displayName;
+ if (arrayColDisplayName == null) {
+ arrayColDisplayName = SchemaUtil.getColumnDisplayName(getColumnFamily(), getColumnQualifier());
+ }
+ return arrayColDisplayName;
}
- public byte[] getEncodedColumnQualifier() {
- return EncodedColumnsUtil.getEncodedColumnQualifier(encodedCQ);
+ public byte[] getPositionInArray() {
+ return EncodedColumnsUtil.getEncodedColumnQualifier(positionInArray);
}
@Override
http://git-wip-us.apache.org/repos/asf/phoenix/blob/d49f619e/phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java b/phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java
index 6170418..5cd7433 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java
@@ -42,7 +42,7 @@ import org.apache.phoenix.util.SchemaUtil;
public class KeyValueColumnExpression extends ColumnExpression {
private byte[] cf;
private byte[] cq;
- private String displayName; // client-side only. TODO: samarth see what can you do for encoded column names.
+ private String displayName; // client-side only.
public KeyValueColumnExpression() {
}