[
https://issues.apache.org/jira/browse/PHOENIX-5432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16964404#comment-16964404
]
Hadoop QA commented on PHOENIX-5432:
------------------------------------
{color:red}-1 overall{color}. Here are the results of testing the latest
attachment
http://issues.apache.org/jira/secure/attachment/12984545/PHOENIX-5432-master-v1.patch
against master branch at commit 67d72a222e204f195a206bb6c5973f7e175ef951.
ATTACHMENT ID: 12984545
{color:green}+1 @author{color}. The patch does not contain any @author
tags.
{color:green}+1 tests included{color}. The patch appears to include 133
new or modified tests.
{color:red}-1 javac{color}. The applied patch generated 382 javac compiler
warnings (more than the master's current 381 warnings).
{color:green}+1 release audit{color}. The applied patch does not increase
the total number of release audit warnings.
{color:red}-1 lineLengths{color}. The patch introduces the following lines
longer than 100:
+ dv == null ? null : new
LiteralExpression.Builder().setValue(((LiteralParseNode)dv).getValue()).buildValueandDeterminism(),
+ minv == null ? null : new
LiteralExpression.Builder().setValue(((LiteralParseNode)minv).getValue()).buildValueandDeterminism(),
+ maxv == null ? null : new
LiteralExpression.Builder().setValue(((LiteralParseNode)maxv).getValue()).buildValueandDeterminism());})
+ return new
LiteralExpression.Builder().setValue(false).setDeterminism(determinism).buildValueandDeterminism();
+ return new
LiteralExpression.Builder().setValue(value).setDeterminism(Determinism.ALWAYS).build();
+ return new
LiteralExpression.Builder().setValue(node.getValue()).setDataType(node.getType()).setDeterminism(Determinism.ALWAYS).build();
+ return new
LiteralExpression.Builder().setDataType(PBoolean.INSTANCE).setDeterminism(rhs.getDeterminism()).build();
+ return new
LiteralExpression.Builder().setValue(false).setDeterminism(rhs.getDeterminism()).buildValueandDeterminism();
+ rhs = new
LiteralExpression.Builder().setValue(rhsLiteral).setDataType(PChar.INSTANCE)
+ List<Expression> compareChildren = Arrays.asList(lhs, new
LiteralExpression.Builder().setValue(PVarchar.INSTANCE.toObject(KeyRange.IS_NOT_NULL_RANGE.getLowerRange())).build());
{color:red}-1 core tests{color}. The patch failed these unit tests:
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.GlobalImmutableTxIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SortMergeJoinLocalIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.RollbackIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertSelectIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.HashJoinGlobalIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ImmutableIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DeleteIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertBigValuesIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.TxWriteFailureIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.MutableRollbackIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.ParameterizedTransactionIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SubqueryIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexBuildTimestampIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.LocalImmutableNonTxIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SortMergeJoinNoSpoolingIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.GlobalImmutableNonTxIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.HashJoinNoIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SubqueryUsingSortMergeJoinIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexWithTableSchemaChangeIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SortMergeJoinGlobalIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.TxCheckpointIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.rpc.PhoenixClientRpcIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SortMergeJoinNoIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.Array3IT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.schema.stats.TxStatsCollectorIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertWithSCNIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DefaultColumnValueIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexMaintenanceIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.DropColumnIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.schema.stats.NonTxStatsCollectorIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.HashJoinLocalIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ColumnEncodedBytesPropIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryLoggerIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CsvBulkLoadToolIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.LocalImmutableTxIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RowTimestampIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexUsageIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StoreNullsIT
Test results:
https://builds.apache.org/job/PreCommit-PHOENIX-Build/3088//testReport/
Console output:
https://builds.apache.org/job/PreCommit-PHOENIX-Build/3088//console
This message is automatically generated.
> Refactor LiteralExpression to use the builder pattern
> -----------------------------------------------------
>
> Key: PHOENIX-5432
> URL: https://issues.apache.org/jira/browse/PHOENIX-5432
> Project: Phoenix
> Issue Type: Improvement
> Affects Versions: 4.15.0, 5.1.0
> Reporter: Chinmay Kulkarni
> Assignee: Christine Feng
> Priority: Major
> Attachments: PHOENIX-5432-master-v1.patch, PHOENIX-5432.patch
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> LiteralExpression is a mess. While it provides newConstant() APIs to build
> the object, it also provides two public constructors. There are 10 overloaded
> newConstant() methods and it is unclear which API to use in which case.
> This should be refactored to use the builder pattern and final member
> variables. Ideally, getters such as getMaxLength() should be simple member
> variable accessors and other ad-hoc logic surrounding those variables should
> be handled correctly when setting their respective values.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)