Clone Tools
  • last updated 19 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[ASTERIXDB-2634][COMP] String functions return null on data/type errors

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Functions changed:

substring(string, start_idx),

repeat(string, num_times),

string_join([string], string_separator),

replace(string, search_string, string_replacement, num_times),

regexp_replace(string, string_pattern, string_replacement, num_times)

Those functions (except string_join) can return NULL even if the

arguments types are valid since the argument values could be not

valid at runtime. Their type computer is always nullable.

- int argument can be double/float on the condition that its value

is integer

- clean-ups:

UnaryStringInt64TypeComputer & AbstractStringTypeComputer.

ExceptionUtil:

- changed signature of toExpectedTypeString(). Overloading

with varargs with Object made it confusing.

- changed some args to Supplier to allow code sharing.

- removed StringIntToStringTypeComputer since now the instances

are not being used by the above functions.

- reorganized/renamed test cases

Change-Id: Ia85a0d08888021ae439a1d9f2f5858bcd52c79f3

Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/3605

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

Reviewed-by: Michael Blow <mblow@apache.org>

    • -1
    • +1
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 63 more files in changeset.
[ASTERIXDB-2634][COMP][RT] String functions to return NULL on mismatch

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Make string functions return NULL on mismatch instead of raising

an exception and issue a warning.

- consolitated ExceptionUtil from org.apache.asterix.runtime.exceptions

into org.apache.asterix.om.exceptions.

- AbstractStringTypeComputer does not check arguments type now

and does not throw mismatch exception.

Change-Id: I51db8ae6ba301757c45c41cfd02bd2b083436970

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3562

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -13
    • +5
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 44 more files in changeset.
[ASTERIXDB-2631][COMP][RT] Limit number of reported warnings

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

Limit number of reported warnings.

- added a new compiler property "COMPILER.RUNTIME.WARNINGS"

with default value set to 0.

- updated Stat class to have a field for the count of runtime

warnings.

- updated few classes to propagate the warnings limit number

to Hyracks Task class.

- added new Option to parse unsigned long values.

- TaskProfile has a field for the count.

- updated TestExecutor to allow specifying parameters in

the body of the POST method.

Change-Id: Ie8756f1b9dcb7bbce92bd77692490fbada9a2482

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3535

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -4
    • +10
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 57 more files in changeset.
[ASTERIXDB-2610][RT][*DB] Improve deep comparison runtime

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

Avoid data copies during comparison (no visitable pointables).

Allow comparison of non-tagged values to avoid copying the tag

when accessing an array element or record field.

- added TaggedValueReference.

- changed ILogicalBinaryComparator to use TaggedValueReference

instead of IPointable.

- removed numberOfItems() from ListAccessorUtil and used

AOrderedListSerializerDeserializer.getNumberOfItems().

- removed storage & IPointable pools from AbstractAGenericBinaryComparator

& LogicalComplexBinaryComparator and used TaggedValueReference pool.

- removed compareNumbers() from ComparatorUtil since IPointable's

have been replaced with TaggedValueReference.

- adapted record comparison logic in LogicalComplexBinaryComparator

to match the logic in the physical comparator.

Change-Id: Id9ece93c704f566d7bdb7fd17b1ba92713c917d5

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3466

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -1
    • +14
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 19 more files in changeset.
[NO ISSUE][COMP] Support runtime warnings during constant folding

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Add IWarningCollector accessor to IEvaluatorContext

- Provide compiler's warning collector to function evaluators

during constant folding, so they can emit warnings

Change-Id: I61dd53adfbcad2f8479333579185258876f074e9

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3484

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

    • -2
    • +2
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 9 more files in changeset.
[NO ISSUE][FUN] Introduce IEvaluatorContext

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Introduce IEvaluatorContext - a context for evaluators

that is available both at runtime and during constant

folding at compile time

- IEvaluatorContext provides access to IHyracksTaskContext

which is only available at runtime. At compile time this

accessor returns null

- Instantiate evaluators with IEvaluatorContext

instead of IHyracksTaskContext

Change-Id: Iff90c7739e46d6602fcd0609e67f6a8cd9714ca5

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3481

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -2
    • +2
    ./collections/FirstElementEvalFactory.java
    • -2
    • +2
    ./collections/LastElementEvalFactory.java
    • -2
    • +2
    ./collections/ListifyAggregateFunctionEvalFactory.java
    • -2
    • +2
    ./collections/NullWriterAggregateDescriptor.java
    • -3
    • +3
    ./scalar/AbstractScalarAggregateDescriptor.java
    • -2
    • +2
    ./scalar/AbstractScalarDistinctAggregateDescriptor.java
    • -2
    • +2
    ./scalar/GenericScalarAggregateFunction.java
    • -2
    • +2
    ./scalar/GenericScalarDistinctAggregateFunction.java
    • -2
    • +2
    ./serializable/std/AbstractSerializableAvgAggregateFunction.java
    • -2
    • +2
    ./serializable/std/AbstractSerializableCountAggregateFunction.java
    • -2
    • +2
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -2
    • +2
    ./serializable/std/AbstractSerializableSumAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableAvgAggregateDescriptor.java
    • -2
    • +2
    ./serializable/std/SerializableAvgAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableCountAggregateDescriptor.java
  1. … 675 more files in changeset.
[NO ISSUE][COMP] Add support for compiler warnings

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Add support for compiler warnings during parsing,

AST rewriting and query optimization phases

- SQL++ parser emits warnings for unknown hints in

relational expression, between expression,

groupby clause and function call.

- Optimizer emits warning if hash group by hint cannot

be applied because there's no serializable aggregate

- Added testcases for these new warnings

Change-Id: Ic3c1e98c183cd214eea3e4fee24b2b7c46366b52

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3476

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

    • -1
    • +1
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 38 more files in changeset.
[ASTERIXDB-2598][RT] Add Support For Runtime Warnings

- user model changes: yes

- storage format changes: no

- interface changes: yes

Details:

- Add the ability to add runtime warnings per task

and return the generated warnings as part of the

task profile on task completion.

- On successful job completion, aggregate warnings

from all task profiles of a job.

- Return the generated warnings in the query service

response as an array of "warnings" each with a code,

which is currently hard-coded to 1, and a message.

- Fix propagating source location to scalar aggregate

functions.

- Add a flag in test cases definition to indicate whether

or not to check for expected warnings and default it to

false.

- Generate warnings when min/max functions encounter

incomparable type or unsupported input.

- Add support in test framework to extract warnings

along with extracting the result field.

- Add support in test framework to validate generated

and expected warnings.

- Add test cases for min/max generated warnings.

Change-Id: I52fa5b807799487d62e67a8861068e1547aa629a

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3451

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +7
    ./scalar/AbstractScalarAggregateDescriptor.java
    • -10
    • +20
    ./std/AbstractMinMaxAggregateFunction.java
  1. … 32 more files in changeset.
[ASTERIXDB-2458][COMP] Fix min/max functions with group by

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

In a sort-group-by operator, an aggregate function has a merging

aggregate function that will be used when merging the run files

if they were generated. The merging aggregate function of the local

min/max aggregate function should be different from the merging

aggregate function of the global min/max. For local min/max, the

merging aggregate function should propagate system_null if the

aggregation is system_null. Also, the global min/max should handle

finishPartial() different from finish(). finishPartial()

should not output NULL if the aggregation is system_null since the

aggregation is still going on.

- added functions to be intermediate steps for local aggregation.

- implemented logic for finishPartial()

- added test cases for strict_min/max with group by

Change-Id: Ie0551b091b9adbbbd51158dbd36124a7184bdce0

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3434

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -10
    • +15
    ./std/AbstractMinMaxAggregateFunction.java
    • -0
    • +56
    ./std/IntermediateMaxAggregateDescriptor.java
    • -0
    • +56
    ./std/IntermediateMinAggregateDescriptor.java
    • -0
    • +56
    ./std/IntermediateSqlMaxAggregateDescriptor.java
    • -0
    • +56
    ./std/IntermediateSqlMinAggregateDescriptor.java
  1. … 41 more files in changeset.
[ASTERIXDB-2574][COMP] Fix min/max functions

- user model changes: no

- storage format changes: no

- interface changes: no

This change is mainly for 2 things. The first thing is to not throw

an exception when the type of the aggregated field is invalid for min/max

(e.g. record or rectange) or min/max get incompatible data like string

and int. The result in this case would be NULL. The second thing is to

enable comparing ARRAYs correctly by using logical comparison. When

a partition runs into type invalidity, it will output NULL. The global

aggregator interprets NULL received from a partition as type invalidity

and outputs NULL as the final result. Both SQL and SQL++ will do that.

Special treatment is needed for scalar and distinct version of SQL since

SQL min/max ignores NULL values and continue aggregation and the scalar

and distinct version of SQL are normally setup as a global aggregator

since they behave like the global aggregator in a two-step aggregation.

Currently, there is only a local min and max functions. The other

min/max functions are used for everything, the global function of

two-step aggregation, and for scalar and distinct min/max. In order to

differentiate, a global min/max functions are added that will be used

for the two-step aggregation.

Details:

- fixed listify to open up elements when adding them to the collection

and the collection item type is of type ANY and changed the type inferer

of listify to enable that.

- fixed AbstractCollectionType to make sure itemType is never null.

- changed MinMaxAggTypeComputer to not throw an exception but return

NULL for invalid types.

- changed min/max descriptors to implement inferer to propagate the

type of the field and pass that when getting a comparator.

- switched min/max comparison to the logical comparison.

- refactored method inequalityUndefined to be shared by logical comparison

and min/max functions.

- added global max/min functions to enable differentiating between

scalar min/max, distinct min/max and two-step min/max (global & local).

- code clean-up for LogicalScalarBinaryComparator; created two INSTANCES

and re-used.

Change-Id: I1231cfe558099d167bae0b2fa7fc4879b756baf0

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3427

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +10
    ./base/AbstractAggregateFunctionDynamicDescriptor.java
    • -2
    • +5
    ./collections/ListifyAggregateDescriptor.java
    • -5
    • +20
    ./collections/ListifyAggregateFunctionEvalFactory.java
    • -0
    • +9
    ./scalar/AbstractScalarAggregateDescriptor.java
    • -9
    • +0
    ./scalar/AbstractScalarDistinctAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarArrayAggAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarArrayAggDistinctAggregateDescriptor.java
    • -4
    • +9
    ./scalar/ScalarMaxAggregateDescriptor.java
    • -3
    • +7
    ./scalar/ScalarMaxDistinctAggregateDescriptor.java
    • -4
    • +9
    ./scalar/ScalarMinAggregateDescriptor.java
    • -3
    • +7
    ./scalar/ScalarMinDistinctAggregateDescriptor.java
    • -5
    • +11
    ./scalar/ScalarSqlMaxAggregateDescriptor.java
    • -4
    • +8
    ./scalar/ScalarSqlMaxDistinctAggregateDescriptor.java
    • -4
    • +10
    ./scalar/ScalarSqlMinAggregateDescriptor.java
    • -3
    • +7
    ./scalar/ScalarSqlMinDistinctAggregateDescriptor.java
  1. … 137 more files in changeset.
[ASTERIXDB-2564][RT] Too many objects created in min() and max()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

During min() and max() aggregation, the functions keep track of

the aggregation type in order to handle heterogeneous lists.

It promotes the aggregation type if needed (e.g. encountered double).

Don't switch to new aggregation type and create a new comparator

when the new input value type is the same as the previously

aggregated values. That is because canPromote(agg_type, new_val_type)

will always return true for same types.

Change-Id: I0bb9f0715985ae555de00bbf3173c80371d8968b

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3391

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -60
    • +43
    ./std/AbstractMinMaxAggregateFunction.java
[NO ISSUE][FUN] Add ARRAY_AGG() SQL aggregate function

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Implement support for ARRAY_AGG() aggregate function.

- Add new testcases and update documentation

- Add AbstractScalarDistinctAggregateDescriptor.createDescriptorFactory()

to uniformly set required type inferer for all distinct scalar aggregates

- Propagate correct item type to GenericScalarDistinctAggregateFunction

Change-Id: I704e031a1252493e83ad8d45c38b75e0b15c1896

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3390

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

    • -0
    • +8
    ./scalar/AbstractScalarAggregateDescriptor.java
    • -3
    • +12
    ./scalar/AbstractScalarDistinctAggregateDescriptor.java
    • -0
    • +54
    ./scalar/ScalarArrayAggAggregateDescriptor.java
    • -0
    • +50
    ./scalar/ScalarArrayAggDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarAvgDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarCountDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarKurtosisDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarMaxDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarMinDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSkewnessDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSqlAvgDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSqlCountDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSqlKurtosisDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSqlMaxDistinctAggregateDescriptor.java
    • -4
    • +2
    ./scalar/ScalarSqlMinDistinctAggregateDescriptor.java
  1. … 33 more files in changeset.
[NO ISSUE][OTR] GlobalConfig Cleanup

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Remove usage of DEBUG flag in GlobalConfig.

- Remove unused methods/constants in GlobalConfig.

- Move storage constants from GlobalConfig to StorageConstants.

Change-Id: Ie59a646d7d2eedaf1360c97c355f827d80917adf

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3376

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

    • -4
    • +0
    ./serializable/std/AbstractSerializableAvgAggregateFunction.java
    • -4
    • +0
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -5
    • +0
    ./serializable/std/AbstractSerializableSumAggregateFunction.java
    • -4
    • +0
    ./std/AbstractAvgAggregateFunction.java
    • -4
    • +0
    ./std/AbstractSingleVarStatisticsAggregateFunction.java
    • -5
    • +0
    ./std/AbstractSumAggregateFunction.java
  1. … 8 more files in changeset.
[ASTERIXDB-2516][RT] Modifty range map function of parallel sort

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Currently, the range map function of parallel sort passes "null"

to get a comparator to sort the samples and produce the range map.

The comparator provider will enforce providing a type and prevent

passing "null". The range map function needs to be updated to get

the types of the sort fields and use them to get comparators.

- changed the output type of the local sampling function from

list of list of ANY to binary. The old type computer was removed.

- added null writer aggregate function that just produces null as

an aggregate value. this is needed in order to propagate the type

of the sort fields from the local step to the global step so that

the range map function can know the types of the sort fields.

Change-Id: I7edbb10906cc4464210af87a5b1630ba3aecbde0

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3333

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +77
    ./collections/NullWriterAggregateDescriptor.java
    • -39
    • +41
    ./std/LocalSamplingAggregateDescriptor.java
    • -71
    • +63
    ./std/RangeMapAggregateDescriptor.java
  1. … 11 more files in changeset.
[NO ISSUE][FUN] Modify array functions to allow comparing complex

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

This change is to modify the array functions to compare complex

types like arrays and records. The change also includes a small

fix to IsomorphismVariableMappingVisitor where the

NestedTupleSourceOperator visit method would downcast the args

without checking first they are of the same operator types.

- changed test cases

- changed NullMissingTest to pass the args types for functions

that need them.

Change-Id: I416989cf902eda38224a3b00340e478fc4e3a60c

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3313

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -1
    • +8
    ./scalar/AbstractScalarDistinctAggregateDescriptor.java
    • -3
    • +4
    ./scalar/GenericScalarDistinctAggregateFunction.java
    • -1
    • +4
    ./scalar/ScalarAvgDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarCountDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarKurtosisDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarMaxDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarMinDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSkewnessDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlAvgDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlCountDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlKurtosisDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlMaxDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlMinDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlStddevDistinctAggregateDescriptor.java
    • -1
    • +4
    ./scalar/ScalarSqlStddevPopDistinctAggregateDescriptor.java
  1. … 94 more files in changeset.
[NO ISSUE][COMP] Multiple parameters for two-step aggregation functions

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

Hooks to enable aggregate functions have multiple arguments.

Change-Id: Ibaef2c0b2cf858d1aa7dd0f645f773fd04a865b3

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3298

Reviewed-by: Till Westmann <tillw@apache.org>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Till Westmann <tillw@apache.org>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -3
    • +11
    ./scalar/AbstractScalarAggregateDescriptor.java
  1. … 3 more files in changeset.
[ASTERIXDB-2483][COMP][FUN] Eliminate listify for distinct aggregates

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Move distinct aggregate rewriting from SqlppQueryRewriter

  to RewriteDistinctAggregateRule in the optimizer

- Add runtime for scalar distinct aggregates

- Fix ExtractCommonOperatorsRule handling of binary operators

- Additional tests for distinct aggregates

Change-Id: If13ea2696e9e0a8a639db684656e5642991c1f99

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3293

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

Tested-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -4
    • +11
    ./scalar/AbstractScalarAggregateDescriptor.java
    • -0
    • +43
    ./scalar/AbstractScalarDistinctAggregateDescriptor.java
    • -6
    • +24
    ./scalar/GenericScalarAggregateFunction.java
    • -0
    • +82
    ./scalar/GenericScalarDistinctAggregateFunction.java
    • -10
    • +4
    ./scalar/ScalarAvgAggregateDescriptor.java
    • -0
    • +43
    ./scalar/ScalarAvgDistinctAggregateDescriptor.java
    • -10
    • +4
    ./scalar/ScalarCountAggregateDescriptor.java
    • -0
    • +43
    ./scalar/ScalarCountDistinctAggregateDescriptor.java
    • -11
    • +4
    ./scalar/ScalarKurtosisAggregateDescriptor.java
    • -0
    • +43
    ./scalar/ScalarKurtosisDistinctAggregateDescriptor.java
    • -10
    • +4
    ./scalar/ScalarMaxAggregateDescriptor.java
    • -0
    • +43
    ./scalar/ScalarMaxDistinctAggregateDescriptor.java
    • -10
    • +4
    ./scalar/ScalarMinAggregateDescriptor.java
    • -0
    • +43
    ./scalar/ScalarMinDistinctAggregateDescriptor.java
    • -11
    • +4
    ./scalar/ScalarSkewnessAggregateDescriptor.java
  1. … 116 more files in changeset.
[NO ISSUE] Prevent .* imports

Change-Id: I00309aa789d2e10ccc7bbe79cb2c0bdfd6e2925c

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3296

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

Tested-by: Michael Blow <mblow@apache.org>

    • -3
    • +17
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -1
    • +6
    ./serializable/std/AbstractSerializableSumAggregateFunction.java
    • -3
    • +17
    ./std/AbstractSingleVarStatisticsAggregateFunction.java
    • -1
    • +6
    ./std/AbstractSumAggregateFunction.java
  1. … 6 more files in changeset.
[NO ISSUE] Apply / enforce java import order

The process-sources target will now sort imports as well as

format source code; the source-format job will likewise verify

import order in addition to source code format

Change-Id: I55d976c4df10d9919c6a25683be2a3e3304e65d9

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3288

Integration-Tests: Michael Blow <mblow@apache.org>

Tested-by: Michael Blow <mblow@apache.org>

Reviewed-by: Till Westmann <tillw@apache.org>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -1
    • +1
    ./serializable/std/AbstractSerializableCountAggregateFunction.java
    • -5
    • +5
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -3
    • +3
    ./serializable/std/AbstractSerializableSumAggregateFunction.java
    • -1
    • +1
    ./serializable/std/SerializableAvgAggregateDescriptor.java
    • -1
    • +1
    ./serializable/std/SerializableAvgAggregateFunction.java
    • -1
    • +1
    ./serializable/std/SerializableCountAggregateFunction.java
    • -1
    • +1
    ./serializable/std/SerializableGlobalAvgAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableGlobalKurtosisAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableGlobalSkewnessAggregateFunction.java
    • -1
    • +1
    ./serializable/std/SerializableGlobalSqlAvgAggregateDescriptor.java
    • -1
    • +1
    ./serializable/std/SerializableGlobalSqlAvgAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableGlobalSqlKurtosisAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableGlobalSqlSkewnessAggregateFunction.java
    • -2
    • +2
    ./serializable/std/SerializableGlobalSqlStddevAggregateFunction.java
    • -3
    • +3
    ./serializable/std/SerializableGlobalSqlSumAggregateFunction.java
  1. … 611 more files in changeset.
[NO ISSUE][FUN] Add aliases for stddev_*(), var_*() functions

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Support aliases for SQL aggregate functions

- Add function aliases: stddev() -> stddev_samp(),

variance() -> var_samp(), variance_samp() -> var_samp(),

variance_pop() -> var_pop()

- stddev_pop() and var_pop() must return 0 if input is a single item

Change-Id: I0fe04164164726cfb4e17f951f0fd6c2a823c162

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3278

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

    • -4
    • +6
    ./std/AbstractSingleVarStatisticsAggregateFunction.java
  1. … 33 more files in changeset.
[ASTERIXDB-2459][FUN] Add skewness and kurtosis aggregate function

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

1. Add skewness and kurtosis function and test cases

2. Add skewness and kurtosis distinct functions

3. Add documentation for skewness and kurtosis

4. Cleaned up some files related to the stddev and var tests cases

5. Change stddev() to stddev_samp() and var() to var_samp()

Change-Id: Iae0d7fc9d5ab3676b23b27ad62a730598221d8a5

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3037

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +49
    ./scalar/ScalarKurtosisAggregateDescriptor.java
    • -0
    • +49
    ./scalar/ScalarSkewnessAggregateDescriptor.java
    • -0
    • +49
    ./scalar/ScalarSqlKurtosisAggregateDescriptor.java
    • -0
    • +49
    ./scalar/ScalarSqlSkewnessAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarSqlStddevAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarSqlVarAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarStddevAggregateDescriptor.java
    • -1
    • +1
    ./scalar/ScalarVarAggregateDescriptor.java
    • -12
    • +90
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalKurtosisAggregateDescriptor.java
    • -0
    • +83
    ./serializable/std/SerializableGlobalKurtosisAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalSkewnessAggregateDescriptor.java
    • -0
    • +83
    ./serializable/std/SerializableGlobalSkewnessAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalSqlKurtosisAggregateDescriptor.java
    • -0
    • +74
    ./serializable/std/SerializableGlobalSqlKurtosisAggregateFunction.java
  1. … 1330 more files in changeset.
[No Issue] [COMP] Hooks to disable constant folding

- user model changes: no

- storage format changes: no

- interface changes: no

Details: Changes to forward recordType from scalar descriptor to

evaluator descriptor for aggregate functions.

Provided hooks to disable constant folding rules on aggregate functions.

Change-Id: Ic3c19e316e1ebdbab8a38048c1b64b087d95e146

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3218

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -1
    • +1
    ./scalar/AbstractScalarAggregateDescriptor.java
  1. … 1 more file in changeset.
[ASTERIXDB-2516][RT] prepare physical comparators for deep comparison

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

This change is to make physical comparators type-aware in order to do

deep comparison of complex types like arrays and records. The IAType

is propagated to the comparators.

- added new methods in IBinaryComparatorFactoryProvider to accept the

type of left and right inputs for operations like hash join where

the join key types come from different dataset sources.

- defaulted some arrays functions to use the old comparator behaviour temporarily

until complex comparison is implemented

- modified AObjectAscBinaryComparatorFactory & AObjectDescBinaryComparatorFactory to

create a comparator with IAType information. Changed the serialization/deserialization

of their instances to take care of the newly added fields since they are not

present in old instances.

Change-Id: I02011e7151398d5f5f9ba9c1e1db6518484b9fe5

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3229

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -7
    • +4
    ./std/RangeMapAggregateDescriptor.java
  1. … 24 more files in changeset.
[NO ISSUE][HYR] Binary compatibility enhancements

Infrastructure & changes to enable binary compatibility with 0.9.4

Change-Id: I77d4919be4853d9afe9b0137861cff3b1d751e20

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3128

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

    • -1
    • +12
    ./std/SqlSumAggregateDescriptor.java
  1. … 33 more files in changeset.
[ASTERIXDB-2488][COMP] Support aggregate window functions

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Implement aggregate window functions:

agg_func() OVER (frame_var AS)? (PARTITION BY ... ORDER BY ... frame_spec)

- Where agg_func is a SQL/SQL++ aggregate function

- Fix percent_rank() to always return 0 for the first tuple

- Fix ntile() to handle NULL argument

- Log query after each rewrite rule in SqlppQueryRewriter

- Implement toString() for ADayTimeDuration, fix it for AYearMonthDuration

- Add seek() method to RunFileReader

Change-Id: If0f71118a04c2dbd3462070673d52e67f076b7e1

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3049

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>

    • -0
    • +44
    ./collections/LastElementAggregateDescriptor.java
    • -0
    • +86
    ./collections/LastElementEvalFactory.java
  1. … 853 more files in changeset.
[ASTERIXDB-2460][FUN] Fix sum() overflow bug

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Fixed the sum() overflow problem. Now the sum() function will

return either bigint or double based on the input types.

- Added sum() aggregate local, intermediate and global classes.

Currently, it is using the same class for the three steps and

checking the type using an if statement. Although the three

steps all have a very similar behavior, having them in split

classes makes it cleaner and easier to read and maintain in the

future.

- Added sum() aggregate local, intermediate and global for serialized

classes.

- Added sum() and serial sum() test cases and modified test cases

to cause the reported overflow issue.

- Added sum() and serial sum() test cases that cause a

Long.MAX_VALUE type overflow.

- Valid data type check is now part of the sum calculation to

avoid redundant steps.

Change-Id: I987417770b3bfbda6af29a27acc8c96dc8a99eb8

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3012

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -9
    • +3
    ./scalar/ScalarSqlSumAggregateDescriptor.java
    • -9
    • +3
    ./scalar/ScalarSumAggregateDescriptor.java
    • -114
    • +144
    ./serializable/std/AbstractSerializableSumAggregateFunction.java
    • -0
    • +55
    ./serializable/std/SerializableGlobalSqlSumAggregateDescriptor.java
    • -0
    • +79
    ./serializable/std/SerializableGlobalSqlSumAggregateFunction.java
    • -0
    • +54
    ./serializable/std/SerializableGlobalSumAggregateDescriptor.java
    • -0
    • +81
    ./serializable/std/SerializableGlobalSumAggregateFunction.java
    • -0
    • +55
    ./serializable/std/SerializableIntermediateSqlSumAggregateDescriptor.java
    • -0
    • +79
    ./serializable/std/SerializableIntermediateSqlSumAggregateFunction.java
    • -0
    • +55
    ./serializable/std/SerializableIntermediateSumAggregateDescriptor.java
    • -0
    • +81
    ./serializable/std/SerializableIntermediateSumAggregateFunction.java
    • -8
    • +2
    ./serializable/std/SerializableLocalSqlSumAggregateDescriptor.java
    • -0
    • +82
    ./serializable/std/SerializableLocalSqlSumAggregateFunction.java
    • -9
    • +3
    ./serializable/std/SerializableLocalSumAggregateDescriptor.java
    • -0
    • +84
    ./serializable/std/SerializableLocalSumAggregateFunction.java
  1. … 158 more files in changeset.
[ASTERIXDB-2286][COMP] Parallel sort changes p.2

- user model changes: no

- storage format changes: no

- interface changes: no

details:

This patch is change the way the SequentialMergeExchangePOperator

connector computes its local property instead of blindly

propagating the child's local property.

The patch also includes minor code clean-ups (moved some methods down)

Change-Id: Ie37e03b6fc6e55fc21f8324c0f09a7fa05b51769

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3005

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -4
    • +4
    ./std/RangeMapAggregateDescriptor.java
  1. … 8 more files in changeset.
[ASTERIXDB-2459][FUN] Add var() and var_pop() aggregate function

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

1. Add variance and variance population aggregation function and test cases

2. Add var() and var_pop() distinct functions

3. Add documentation for var() and var_pop()

4. Removed some empty tests cases from parser tests

Change-Id: If736c94146f1d6ee4dfa46a67737b1abd29c8e2d

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3004

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +48
    ./scalar/ScalarSqlVarAggregateDescriptor.java
    • -0
    • +49
    ./scalar/ScalarSqlVarPopAggregateDescriptor.java
    • -0
    • +48
    ./scalar/ScalarVarAggregateDescriptor.java
    • -0
    • +48
    ./scalar/ScalarVarPopAggregateDescriptor.java
    • -0
    • +17
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalSqlVarAggregateDescriptor.java
    • -0
    • +77
    ./serializable/std/SerializableGlobalSqlVarAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalSqlVarPopAggregateDescriptor.java
    • -0
    • +62
    ./serializable/std/SerializableGlobalVarAggregateDescriptor.java
    • -0
    • +86
    ./serializable/std/SerializableGlobalVarAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalVarPopAggregateDescriptor.java
    • -0
    • +63
    ./serializable/std/SerializableIntermediateSqlVarAggregateDescriptor.java
    • -0
    • +70
    ./serializable/std/SerializableIntermediateSqlVarAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableIntermediateSqlVarPopAggregateDescriptor.java
    • -0
    • +63
    ./serializable/std/SerializableIntermediateVarAggregateDescriptor.java
  1. … 488 more files in changeset.
[ASTERIXDB-2459][FUN] Add sttdev_pop() aggregate function

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

1. Add stddev_pop aggregation function and test cases

2. Add stddev and stddev_pop distinct functions

3. Fix some stddev test case comments

4. Add documentation for stddev_pop

Change-Id: I1732d8d70eba26e12a6e68d0e0c621491ed6b3ae

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2997

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +49
    ./scalar/ScalarSqlStddevPopAggregateDescriptor.java
    • -0
    • +49
    ./scalar/ScalarStddevPopAggregateDescriptor.java
    • -2
    • +2
    ./serializable/std/AbstractSerializableSingleVariableStatisticsAggregateFunction.java
    • -1
    • +1
    ./serializable/std/SerializableGlobalSqlStddevAggregateDescriptor.java
    • -3
    • +16
    ./serializable/std/SerializableGlobalSqlStddevAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalSqlStddevPopAggregateDescriptor.java
    • -1
    • +1
    ./serializable/std/SerializableGlobalStddevAggregateDescriptor.java
    • -3
    • +16
    ./serializable/std/SerializableGlobalStddevAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableGlobalStddevPopAggregateDescriptor.java
    • -1
    • +1
    ./serializable/std/SerializableIntermediateSqlStddevAggregateDescriptor.java
    • -2
    • +9
    ./serializable/std/SerializableIntermediateSqlStddevAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableIntermediateSqlStddevPopAggregateDescriptor.java
    • -1
    • +1
    ./serializable/std/SerializableIntermediateStddevAggregateDescriptor.java
    • -2
    • +9
    ./serializable/std/SerializableIntermediateStddevAggregateFunction.java
    • -0
    • +63
    ./serializable/std/SerializableIntermediateStddevPopAggregateDescriptor.java
  1. … 295 more files in changeset.
[ASTERIXDB-2286][COMP][FUN][HYR] Parallel Sort Optimization

- user model changes: yes

- storage format changes: no

- interface changes: yes

details:

- new plan for sort operation which includes sampling and

replicating the stream of data to be sorted. Sort-merge connector

is removed from the plan. The sorted result now is in multiple partitions.

- new optimization rule to check whether full parallel sort is applicable.

- new Forward operator to read the replicated sort input stream and

to receive the ouput of the sampling.

- new sequential merge connector to merge a globally ordered result residing

in multiple partitions (in addition to the connector's partition computer).

- "asterix-lang-aql/pom.xml" is changed as a result of refactoring

code related to the range map handling.

- new private sampling function to generate the range map object

(local & global functions) & their type computers.

user model changes:

- new compiler property is added to enable and disable parallel sort.

interface changes:

- "ILogicalOperatorVisitor.java" includes Forward Operator.

- "ITuplePartitionComputer.java" includes initialize() to enable partitioner

to do some initialization. FieldRangePartitionComputerFactory uses it to

pick a range map.

- "ITuplePartitionComputerFactory.java". createPartitioner() is changed to

createPartitioner(IHyracksTaskContext hyracksTaskContext). Context is needed

for transferring the range map throught the context.

Change-Id: I73e128029a46f45e6b68c23dfb9310d5de10582f

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2393

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +173
    ./std/LocalSamplingAggregateDescriptor.java
    • -0
    • +317
    ./std/RangeMapAggregateDescriptor.java
  1. … 356 more files in changeset.