[ https://issues.apache.org/jira/browse/PHOENIX-418?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16142964#comment-16142964 ]
Hadoop QA commented on PHOENIX-418: ----------------------------------- {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12883953/PHOENIX-418-v9.patch against master branch at commit 435441ea8ba336e1967b03cf84f1868c5ef14790. ATTACHMENT ID: 12883953 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:red}-1 tests included{color}. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 56 warning messages. {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: + String query = "SELECT APPROX_COUNT_DISTINCT(a.i1||a.i2||b.i2) FROM " + tableName + " a, " + tableName + final private void prepareTableWithValues(final Connection conn, final int nRows) throws Exception { + final PreparedStatement stmt = conn.prepareStatement("upsert into " + tableName + " VALUES (?, ?)"); +@BuiltInFunction(name=DistinctCountHyperLogLogAggregateFunction.NAME, nodeClass=DistinctCountHyperLogLogAggregateParseNode.class, args= {@Argument()} ) + public DistinctCountHyperLogLogAggregateFunction(List<Expression> childExpressions, CountAggregateFunction delegate){ + private HyperLogLogPlus hll = new HyperLogLogPlus(DistinctCountHyperLogLogAggregateFunction.NormalSetPrecision, DistinctCountHyperLogLogAggregateFunction.SparseSetPrecision); + private HyperLogLogPlus hll = new HyperLogLogPlus(DistinctCountHyperLogLogAggregateFunction.NormalSetPrecision, DistinctCountHyperLogLogAggregateFunction.SparseSetPrecision); + protected final ImmutableBytesWritable valueByteArray = new ImmutableBytesWritable(ByteUtil.EMPTY_BYTE_ARRAY); + public DistinctCountHyperLogLogAggregateParseNode(String name, List<ParseNode> children, BuiltInFunctionInfo info) { + public FunctionExpression create(List<Expression> children, StatementContext context) throws SQLException { {color:red}-1 core tests{color}. The patch failed these unit tests: ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.salted.SaltedTableVarLengthRowKeyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DerivedTableIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SequenceIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CustomEntityDataIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TransactionalViewIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexReplicationIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CreateTableIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.OrderByIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.FirstValuesFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StatementHintsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RowValueConstructorIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.hadoop.hbase.regionserver.wal.WALRecoveryRegionPostOpenIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.PowerFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.InListIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IsNullIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.RollbackIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StatsCollectorIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DynamicUpsertIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryExecWithoutSCNIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SubqueryUsingSortMergeJoinIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RenewLeaseIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ChildViewsUseParentViewIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TopNIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.EvaluationOfORIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CsvBulkLoadToolIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.monitoring.PhoenixMetricsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ConvertTimezoneFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AutoPartitionViewsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StringIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AppendOnlySchemaIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DistinctCountIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ReadIsolationLevelIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.FlappingLocalIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.InstrFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.HashJoinMoreIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ReverseFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ReadOnlyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DisableLocalIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ImmutableIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StoreNullsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.execute.UpsertSelectOverlappingBatchesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CountDistinctApproximateHyperLogLogIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UseSchemaIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ToNumberFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SkipScanQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MinMaxAggregateFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexExtendedIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SignFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.OnDuplicateKeyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SerialIteratorsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.BinaryRowKeyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.iterate.ScannerLeaseRenewalIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MD5FunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AlterSessionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ConnectionUtilIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayToStringFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayAppendFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AlterTableIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.hbase.index.covered.FailWithoutRetriesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.PercentileIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.trace.PhoenixTableMetricsWriterIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantIdTypeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.KeyOnlyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexMetadataIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertSelectAutoCommitIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ImmutableIndexWithStatsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SkipScanAfterManualSplitIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.util.IndexScrutinyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AlterMultiTenantTableWithViewsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.iterate.PhoenixQueryTimeoutIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ColumnProjectionOptimizationIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DynamicFamilyIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DeleteIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AutoCommitIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.FirstValueFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertSelectIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CastAndCoerceIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MappingTableDataTypeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DecodeFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.TxCheckpointIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexFailureIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.SaltedIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StoreNullsPropIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RegexpSplitFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DropSchemaIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ViewIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StringToArrayFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.MutableRollbackIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AbsFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MultiCfQueryExecIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.execute.PartialCommitIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MutableQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.PrimitiveTypeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.ParameterizedTransactionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ServerExceptionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryWithTableSampleIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.StddevIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExecuteStatementsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SysTableNamespaceMappedStatsCollectorIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExpFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.GlobalIndexOptimizationIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ParallelIteratorsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.rpc.UpdateCacheIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DefaultColumnValueIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpperLowerFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpdateCacheAcrossDifferentClientsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UnionAllIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexExpressionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ModulusExpressionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificTablesDDLIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CoalesceFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexSplitForwardScanIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CSVCommonsLoaderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.OctetLengthFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ConcurrentMutationsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SpillableGroupByIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AggregateQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.iterate.RoundRobinResultIteratorIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.LocalIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.txn.TxWriteFailureIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CbrtFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TimezoneOffsetFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.LnLogFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.hbase.index.FailForUnsupportedHBaseVersionsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SpooledTmpFileDeleteIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.GroupByIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RegexpReplaceFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SaltedViewIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificViewIndexSaltedIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryMoreIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AlterTableWithViewsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ViewIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertValuesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.hadoop.hbase.regionserver.wal.WALReplayWithIndexWritesAndCompressedWALIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.NativeHBaseTypesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.FlappingAlterTableIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.coprocessor.StatisticsCollectionRunTrackerIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.NthValueFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.FlappingTransactionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.MapReduceIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AggregateIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SortMergeJoinMoreIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SequenceBulkAllocationIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayPrependFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArraysWithNullsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ImmutableTablePropertiesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.salted.SaltedTableUpsertSelectIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ProductMetricsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ToCharFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.LastValueFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TableSnapshotReadsMapReduceIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ToDateFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.LastValuesFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.salted.SaltedTableIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ContextClassloaderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExplainPlanWithStatsEnabledIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SortMergeJoinIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.PhoenixRuntimeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertBigValuesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.DropColumnIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RoundFloorCeilFuncIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CreateSchemaIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryWithLimitIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayConcatFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RebuildIndexConnectionPropsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.NamespaceSchemaMappingIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.iterate.RoundRobinResultIteratorWithStatsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.AsyncIndexDisabledIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ScanQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TruncateFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.rpc.PhoenixServerRpcIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.trace.PhoenixTracingEndToEndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryDatabaseMetaDataIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexSplitReverseScanIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ColumnEncodedBytesPropIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArrayFillFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SqrtFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ArithmeticQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CaseStatementIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RegexpSubstrFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.hbase.index.covered.EndToEndCoveredColumnsIndexBuilderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.LikeExpressionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SortOrderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.TransactionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryTimeoutIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.NotQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.HashJoinLocalIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.OutOfOrderMutationsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CountDistinctCompressionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DynamicColumnIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.rpc.PhoenixClientRpcIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ReverseScanIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.EncodeFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.VariableLengthPKIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.PartialIndexRebuilderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ClientTimeArithmeticQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.PointInTimeQueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.GetSetByteBitFunctionEnd2EndIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificTablesDMLIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SubqueryIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.rpc.UpdateCacheWithScnIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CursorWithRowValueConstructorIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DistinctPrefixFilterIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.DropMetadataIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificViewIndexIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.FunkyNamesIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DateTimeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryWithOffsetIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RegexBulkLoadToolIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpgradeIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UserDefinedFunctionsIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.RTrimFunctionIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExtendedQueryExecIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.replication.SystemCatalogWALEntryFilterIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.HashJoinIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExplainPlanWithStatsDisabledIT {color:red}-1 core zombie tests{color}. There are 5 zombie test(s): at org.apache.hadoop.hbase.security.TestSecureIPC.testDifferentConfWithCryptoAES(TestSecureIPC.java:238) at org.apache.hadoop.hbase.backup.example.TestZooKeeperTableArchiveClient.testMultipleTables(TestZooKeeperTableArchiveClient.java:278) Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1307//testReport/ Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1307//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1307//console This message is automatically generated. > Support approximate COUNT DISTINCT > ---------------------------------- > > Key: PHOENIX-418 > URL: https://issues.apache.org/jira/browse/PHOENIX-418 > Project: Phoenix > Issue Type: Task > Reporter: James Taylor > Assignee: Ethan Wang > Labels: gsoc2016 > Attachments: PHOENIX-418-v1.patch, PHOENIX-418-v2.patch, > PHOENIX-418-v3.patch, PHOENIX-418-v4.patch, PHOENIX-418-v7.patch, > PHOENIX-418-v9.patch > > > Support an "approximation" of count distinct to prevent having to hold on to > all distinct values (since this will not scale well when the number of > distinct values is huge). The Apache Drill folks have had some interesting > discussions on this > [here](http://mail-archives.apache.org/mod_mbox/incubator-drill-dev/201306.mbox/%3CJIRA.12650169.1369931282407.88049.1370645900553%40arcas%3E). > They recommend using [Welford's > method](http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance_Online_algorithm). > I'm open to having a config option that uses exact versus approximate. I > don't have experience implementing an approximate implementation, so I'm not > sure how much state is required to keep on the server and return to the > client (other than realizing it'd be much less that returning all distinct > values and their counts). -- This message was sent by Atlassian JIRA (v6.4.14#64029)