You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tajo.apache.org by hy...@apache.org on 2013/12/20 07:30:47 UTC
git commit: TAJO-442: Cast operator with nested functions causes NPE.
(hyunsik)
Updated Branches:
refs/heads/master f08724f9c -> 450fbcb93
TAJO-442: Cast operator with nested functions causes NPE. (hyunsik)
Project: http://git-wip-us.apache.org/repos/asf/incubator-tajo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tajo/commit/450fbcb9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tajo/tree/450fbcb9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tajo/diff/450fbcb9
Branch: refs/heads/master
Commit: 450fbcb93c02c74fd8889751bdec5ce155e3e294
Parents: f08724f
Author: Hyunsik Choi <hy...@apache.org>
Authored: Fri Dec 20 15:30:24 2013 +0900
Committer: Hyunsik Choi <hy...@apache.org>
Committed: Fri Dec 20 15:30:24 2013 +0900
----------------------------------------------------------------------
CHANGES.txt | 2 ++
.../src/main/java/org/apache/tajo/engine/eval/CastEval.java | 4 ++--
.../java/org/apache/tajo/engine/eval/TestSQLExpression.java | 6 ++++++
.../tajo/engine/function/TestStringOperatorsAndFunctions.java | 5 +++++
4 files changed, 15 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/450fbcb9/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d7872b4..89b89ee 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -160,6 +160,8 @@ Release 0.8.0 - unreleased
BUG FIXES
+ TAJO-442: Cast operator with nested functions causes NPE. (hyunsik)
+
TAJO-426: HCatalogStore created partitions automatically. (jaehwa)
TAJO-418: sort operator after inline views consisting of unions can cause
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/450fbcb9/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/eval/CastEval.java
----------------------------------------------------------------------
diff --git a/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/eval/CastEval.java b/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/eval/CastEval.java
index 9bb6b1c..411dd09 100644
--- a/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/eval/CastEval.java
+++ b/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/eval/CastEval.java
@@ -111,11 +111,11 @@ public class CastEval extends EvalNode {
@Override
public void preOrder(EvalNodeVisitor visitor) {
visitor.visit(this);
- visitor.visit(operand);
+ operand.preOrder(visitor);
}
public void postOrder(EvalNodeVisitor visitor) {
- visitor.visit(operand);
+ operand.postOrder(visitor);
visitor.visit(this);
}
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/450fbcb9/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java
----------------------------------------------------------------------
diff --git a/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java b/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java
index 13a5e2d..c96f7e5 100644
--- a/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java
+++ b/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java
@@ -61,6 +61,12 @@ public class TestSQLExpression extends ExprTestBase {
}
@Test
+ public void testCastWithNestedFunction() throws IOException {
+ testSimpleEval("select to_timestamp(CAST(split_part('1386577650.123', '.', 1) as INT8));",
+ new String[] {"1970-01-17 10:09:37"});
+ }
+
+ @Test
public void testCastFromTable() throws IOException {
Schema schema = new Schema();
schema.addColumn("col1", TEXT);
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/450fbcb9/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/function/TestStringOperatorsAndFunctions.java
----------------------------------------------------------------------
diff --git a/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/function/TestStringOperatorsAndFunctions.java b/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/function/TestStringOperatorsAndFunctions.java
index 485535a..7d3aa7d 100644
--- a/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/function/TestStringOperatorsAndFunctions.java
+++ b/tajo-core/tajo-core-backend/src/test/java/org/apache/tajo/engine/function/TestStringOperatorsAndFunctions.java
@@ -337,6 +337,11 @@ public class TestStringOperatorsAndFunctions extends ExprTestBase {
}
@Test
+ public void testSplitPart() throws IOException {
+ testSimpleEval("select split_part('1386577650.123', '.', 1) as col1 ", new String[]{"1386577650"});
+ }
+
+ @Test
public void testSubstr() throws IOException {
testSimpleEval("select substr('abcdef', 3, 2) as col1 ", new String[]{"cd"});
testSimpleEval("select substr('abcdef', 3) as col1 ", new String[]{"cdef"});