asterixdb

Clone Tools
  • last updated 12 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[NO ISSUE][COMP] Meta() after group by

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

Using meta() after group-by requires meta() be assigned to

a variable in a LET clause to expose meta().

- added source location to IFunctionManager.lookupFunction()

- added test cases

Change-Id: I2b173e23352fa80ef57154f08910586c6ee196b8

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

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>

[NO ISSUE][FAIL] Drop fractional seconds when reporting response timeout

Change-Id: Ia628b5607cdd69a65b4e08daf1c47ecf95b851bb

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

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

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: Murtadha Hubail <mhubail@apache.org>

[NO ISSUE][COMP] Fix InlineUnnestFunction to return false if not fired

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Fix InlineUnnestFunctionRule to return false if there are no

changes in the plan.

- minor clean-ups.

Change-Id: Ib2b69ae3ad9712d1443078e0ba0b254b46376d43

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

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>

[NO ISSUE][NET] Ensure Recycling Buffer and Notifying Sender is Atomic

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- To avoid synchronization issues that might occur

due to JVM reordering, ensure that both recycling

read buffers and notifying the sender of their

availability are done atomically before the next

buffer is received from the sender.

Change-Id: Ia3b1920f33bf7d4e7efbd2ea3405cbc4310a78c7

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

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: Murtadha Hubail <mhubail@apache.org>

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

(cherry picked from commit 32eed5f384c5851eae1c613fcb3b9532744ed595)

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

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

[NO ISSUE][COMP] Introduce connector for partial broadcasts

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Introduce MToNPartialBroadcastConnectorDescriptor

- Refactor FieldRangePartitionComputerFactory to

use RangeMapSupplier

Change-Id: I4a6f8f17d1709862300db7ab386161b4dfbfee5a

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

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

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

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

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

[ASTERIXDB-2611][*DB] Fix GroupAll with empty input

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

This patch is to fix the issue with group by all where

some partitions are empty. The patch in general handles

propagating outer scope variables through group by all by using

subplans instead of using decor variables when translating

the AST.

- changed IsomorphismVariableMappingVisitor to stop re-visiting

the same nested tuple operator pair again

- moved getFdColumns() up in hierarchy to be shared by others

- added a check to prevent group-all with decoration fields

Change-Id: I56916fc60c696f6c702717210f108f2247b2a397

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

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>

  1. … 23 more files in changeset.
[NO ISSUE][NET] Ensure Handshake Connections List is Thread-Safe

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Ensure the list of connections that completed their asynchronous

SSL handshake is accessed in thread-safe manner.

Change-Id: Ibfd4fc569b59f39d730ef04f5d69b23d91713ed7

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

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>

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

[ASTERIXDB-2623][FUN] TPC-DS revert partitioning behavior back to default

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- To avoid unexpected behavior, this change reverts the partitioning

logic back to the default behavior from the library.

Change-Id: I0de179e33cd74dea333d163a108b1b7606b45643

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

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

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: Hussain Towaileb <hussainht@gmail.com>

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

[NO ISSUE][NET] Ensure Recycling Buffer and Notifying Sender is Atomic

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- To avoid synchronization issues that might occur

due to JVM reordering, ensure that both recycling

read buffers and notifying the sender of their

availability are done atomically before the next

buffer is received from the sender.

Change-Id: Ia3b1920f33bf7d4e7efbd2ea3405cbc4310a78c7

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

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: Murtadha Hubail <mhubail@apache.org>

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

[NO ISSUE][COMP] Improve warnings for SQL++ hints

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Issue warnings for all hints that were not processed

  by the SQL++ parser. A hint is not processed because

  it is either unknown or unexpected at given location

Change-Id: Iec46335a8db4360e5431b145cd9e98c7075c7fda

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

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>

  1. … 5 more files in changeset.
[ASTERIXDB-2619][FUN] Add extra test cases for bitwise functions

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Added test cases based on reading data from dataset to ensure

the function performs properly on subsequent calls, and ensure

it works properly if it doesn't go through the constant folding

rule.

- Fixed an issue in the bitcount function which was resulting in

Serialization Exception when calling the function with fields

rather than constants.

- Fixed an issue with bittest and isbitset which was resulting in

wrong value in some cases due to not reseting the monitoring of

allSet check flag.

Change-Id: Ie1d8e4f8594843f98e7a1cf8a2da4b0106597ae8

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

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: Hussain Towaileb <hussainht@gmail.com>

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

  1. … 49 more files in changeset.
[NO ISSUE][COMP] Static range map in full parallel sort

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Support static range map in full parallel sort

- Add static range map option to ORDERED_PARTITIONED

structural property

- Add parseExpression() methods to SQL++ and AQL parsers

- Simplify RangeMapBuilder.parseHint()

Change-Id: I7eab6e6ede8c2dbb714a27801a76ad64bd9be1b8

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

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

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

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

    • -9
    • +31
    /asterixdb/asterix-lang-aql/src/main/javacc/AQL.jj
  1. … 9 more files in changeset.
[NO ISSUE] document parallel sort compiler option

Add parallel sort parameter

Extra blank line after code at end of file

Move parallel sort to its own file

Add default `true` for parallel sort

Clarify explanation of full parallel sort

Change-Id: Id5a42d20354924902cc84c52f6a06ea9d62c6511

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

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

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>

[ASTERIXDB-2577][RT] One frame per spilled partition in optimized hybrid hash join

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Makes sure there is one frame for each spilled partition during the build close.

Checks the length of large record before flushing a record to the disk blindly

as being large.

Change-Id: I82d4da57e9a9835cab61dc5cc43c45c728e0c2b6

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

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>

[NO ISSUE][COMP] Emit warning for cross product

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Emit warning for a cross product join

Change-Id: Icd2b27f23517842fc532db7741ee60e8da737082

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

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: Ali Alsuliman <ali.al.solaiman@gmail.com>

[ASTERIXDB-2615][*DB] Enable constant folding rule to determine when to fold

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Currently, some functions are excluded from being evaluated at compile time in

constant folding rule. Those functions are maintained in a set. The reason for

excluding them is because they can produce records/lists in their "open" format

and constant folding them will make them "closed" which would lead to incorrect

results. Any time a new function is implemented, the developer would have to pay

attention and add their functions if they should be excluded, too.

The exclusion set should be removed. The constant folding rule should determine

from the output type of the function whether it can/should be folded or not.

- fixed an issue with StaticTypeCastUtil where it would not open up a field

when that field's value is a function call.

- modified casting items of lists to avoid casting open the item when it is

already in the opened up format.

- modified the type computer of object_remove_fields to handle constant

arguments (the 2nd argument which is the name of the fields) since the

argument can be constant folded now.

- modified field-access-by-index to handle evaluating it at compile time

(by constant folding rule) in the case where the object accessed is missing

(or non-object)

Change-Id: I3964aa8accaaae3b4c5c7ddf928e6cbd73d517f6

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

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>

  1. … 35 more files in changeset.
Merge commit '8c99391' from stabilization-f69489

Change-Id: I139c265ba998c32ec049c8a8bbd7a5a213895d2a

[ASTERIXDB-2599][STO] Cleanup compression LAFs

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Cleanup compression LAFs after merge.

- Delete LAF files when merged components contain

previous components.

- Make sure the recovery after non-graceful shutdown

(in the middle of cleanup) deletes the component and its LAF.

Change-Id: I17adb6145f7bf77470fd82f04321faf7a4007bf7

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

Reviewed-by: Wail Alkowaileet <wael.y.k@gmail.com>

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: Michael Blow <mblow@apache.org>

[ASTERIXDB-2603][FUN] Add compile/runtime warnings for bitwise functions

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Added compile/runtime warnings for bitwise functions.

- Added a new error code to represent values out of acceptable

range.

Change-Id: I9ada529d91d8fdc881447e8b4cf17fc8e71aa87f

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

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: Hussain Towaileb <hussainht@gmail.com>

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

[NO ISSUE][COMP] Fix error in StaticTypeCastUtil

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fix ArrayIndexOutOfBoundsException in StaticTypeCastUtil

Change-Id: I4bbd3f8680cc71fcf04b2e88fe155e7236ace54c

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

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: Till Westmann <tillw@apache.org>

[NO ISSUE][NET] Do Not Flush Partial Frames on Network Errors

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Do not flush partially read frames when a network error

is reported to avoid processing invalid partial frames

before the network failure is detected by the channel

reader.

Change-Id: Ia35b58412cc293426c18a7cd66d8d0a5962db4e2

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

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: Murtadha Hubail <mhubail@apache.org>

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

[ASTERIXDB-2613][*DB] Fix serialization of schemaless records

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

When serializing schemaless records, the record serializer should

continue serializing the fields as schemaless fields to handle fields

that are also records (nested records).

Change-Id: Ibc7257987d24905e82d5e81f27840fba81281706

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

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>

[ASTERIXDB-2614][TEST] Make type computer test argument count aware

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Obtained the number of arguments from each function's arity to

know how many arguments to pass for each type computer instead

of constantly passing only 2 arguments.

- Limited the number of arguments to be passed in case of VARARGS

or functions with arguments more than 3, this could lead to the

test taking too long and timing out and failing.

Change-Id: I7188d92101990a6b232c0915f127fbfbf3f6f841

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

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

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

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

Reviewed-by: Hussain Towaileb <hussainht@gmail.com>

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

[NO ISSUE][COMP] Improve IPartitioningProperty.substituteColumnVars()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- IPartitioningProperty.substituteColumnVars() should return

a new instance of IPartitioningProperty if variable

substitution was performed for given variables

- Compute schema for a new Select operator introduced by

PullSelectOutOfEqJoin rule

- Refactor delivered properties computation in

AbstractPreclusteredGroupByPOperator

Change-Id: Iee7ef7de26f9d960b205d6d43e2820aaa396cb15

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

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: Ali Alsuliman <ali.al.solaiman@gmail.com>

[NO ISSUE] Fix UDF delete message

The delete method for UDFs is using the async message format,

but this isn't correct. It should use the synchronous request

form and require a response, just as the udf load does.

Change-Id: I4c18e62bdca2fe6b9239d740b9040171b799a3a7

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

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

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

Reviewed-by: Ian Maxon <imaxon@uci.edu>

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

[NO ISSUE][OTH] Make Persisted Classes List Non-Static

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Make the registered classes list in PersistedResourceRegistry

non-static to prevent concurrent modification in environments

where multiple NCs share the same JVM.

- Use the proper NCApplication life cycle to configure the test

PersistedResourceRegistry rather than setting it after the

NCApplication is initialized.

Change-Id: Id89db7e89c90388ac7e5a1cee87be84e2f7d3c17

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

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: Murtadha Hubail <mhubail@apache.org>

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

[ASTERIXDB-2612][COMP] Incorrect result with two-step aggregate

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Restrict two-step aggregate rewriting based on

operators in the GROUP BY subplan

Change-Id: Iffae44842d4aad594c4252218837fb2d244ede36

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

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

Sonar-Qube: 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>

[NO ISSUE][STO] Tolerate Corrupted System Checkpoint Files

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Do not delete corrupted checkpoint files until a valid

checkpoint is persisted. This ensure a forged checkpoint

that will force recovery to start from the begining is

always used until a valid checkpoint is found.

- Attempt to read the latest checkpoint file right after

writing it and before attempting cleaning up invalid and

old checkpoint files.

- Use on disk files to determine next checkpoint id to

account for existing corrupted checkpoints.

- Maintain two older checkpoint files in addition to the

latest one.

- Catch all exceptions on checkpointing failures since it is

a try operation.

- Add test scenairo for the new checkpoints clean up behavior.

Change-Id: Iea689f5a644351491d9748273bb2158e8179f54d

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

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

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

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

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

[NO ISSUE] Error codes + NCService getter + Record metadata getter

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Task, added getter for NodeControllerService.

- RecordWithMetadataAndPK, added getter for metaTypes.

- Added extra error codes.

Change-Id: Ic3fcc6b771b4393542988cd0aa6fd992ccb81028

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

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: Hussain Towaileb <hussainht@gmail.com>

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

[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. … 5 more files in changeset.