[
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/3229Integration-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>