Clone Tools
  • last updated 12 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[ASTERIXDB-2671][FUN] Fix handling nullable inputs in OBJECT_*()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

The input record to OBJECT_*() functions can be nullable/missable

record.

- fixed the type inferrer to take care of that when inferring

the input record type.

Change-Id: Ic7e86598eda03f5aeb3c0e4457127c99bdbed0e4

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

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. … 61 more files in changeset.
[ASTERIXDB-2626][*DB] Ignore dup fields in record construction, issue warning

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

Change the current behavior of throwing exceptions on duplicates fields

on a record to just picking one and return a warning when possible.

- added source location for auto generated name expressions.

- removed duplicate test cases from AQL test suite since SQL++ alraedy has it.

- updated test cases that used to throw exception on duplicate fields.

- updated an AST test case to reflect the new behaviour of picking one field.

- clean-ups in testsuite_sqlpp:

moved flwor let33 test case to its proper group.

moved ObjectsQueries, GeoQueries xml references up to where other xml refs.

Change-Id: I2d773b194f0e0f35720bb3fd63f1997239800762

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

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>

    • -0
    • +1
    ./closed-closed-fieldname-conflict_issue173/closed-closed-fieldname-conflict_issue173.3.adm
    • -0
    • +2
    ./no_fieldname_constr/no_fieldname_constr.3.adm
    • -0
    • +6
    ./object_duplicate_fields/object_duplicate_fields.03.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.04.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.05.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.06.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.07.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.08.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.09.adm
    • -0
    • +1
    ./object_duplicate_fields/object_duplicate_fields.10.adm
    • -0
    • +1
    ./open-closed-fieldname-conflict_issue173/open-closed-fieldname-conflict_issue173.3.adm
    • -0
    • +1
    ./open-open-fieldname-conflict_issue173/open-open-fieldname-conflict_issue173.3.adm
  1. … 42 more files in changeset.
[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>

    • -0
    • +1
    ./object_unwrap/object_unwrap.4.adm
  1. … 48 more files in changeset.
[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>

    • -0
    • +1
    ./query-ASTERIXDB-2529/query-ASTERIXDB-2529.2.adm
  1. … 2 more files in changeset.
[ASTERIXDB-2575][RT][FUN] Remove usages of ComparisonHelper

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Remove usages of ComparisonHelper and switch to logical or physical

comparators.

- updated RecordReplace test cases that used to throw an exception

when comparing complex types.

- cleaned up interval classes.

- fixed getStartOffset() in AIntervalPointable.

- removed ComparisonHelper

Change-Id: Ib2a05f35c752e1d2ecfdbabbf5d303ea73c7c9db

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

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>

    • -0
    • +1
    ./object_replace/object_replace.4.adm
    • -0
    • +1
    ./object_replace/object_replace.5.adm
  1. … 14 more files in changeset.
[NO ISSUE][SQLPP] Optional field name in object constructor

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Allow field name to be optional in object constructors.

If missing then it will be inferred from a field value

expression in a manner similar to unnamed projections.

- Add documentation and testcases

Change-Id: I0dfba8f8137f88d934a5be8ffb5fbc1c1db0bb58

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

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>

    • -0
    • +4
    ./no_fieldname_constr/no_fieldname_constr.1.adm
    • -0
    • +2
    ./no_fieldname_constr/no_fieldname_constr.2.adm
  1. … 6 more files in changeset.
[ASTERIXDB-2529][COMP] Incorrect result with MISSING field value

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fixed StaticTypeCastUtil.staticRecordTypeCast() to

correctly handle MISSING fields in record constructors

Change-Id: I5d3435274ebf0007fe7e63b86264337072fd8305

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

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

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

    • -0
    • +1
    ./query-ASTERIXDB-2529/query-ASTERIXDB-2529.1.adm
  1. … 3 more files in changeset.
[ASTERIXDB-2406][FUN] Implement pairs() function

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Implement pairs() function

- Fix object_pairs() function to return null for

non-object input instead of raising type error

- Add documentation for pairs() and object_pairs()

Change-Id: I1d4917a496a2f49679d64109e5f5bf4b05609f01

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

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

    • -0
    • +1
    ./object_pairs/object_pairs.2.adm
  1. … 21 more files in changeset.
[NO ISSUE][FUN] Implement object-values()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-values function that returns an array

of values of the fileds in a given object.

- Add new functions to docs.

- Add test cases.

Change-Id: I804fb75d20837ae01b8f34f6389dcb3480ce5548

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

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

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

    • -0
    • +1
    ./object_values/object_values.3.adm
  1. … 10 more files in changeset.
[NO ISSUE][FUN] Implement object-add(), object-put()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-add function that adds a new field

to a given object.

- Implement object-put function that adds, removes, or

updates an existing field in a given object.

- Add new functions to docs.

- Add test cases.

Change-Id: I0b0b33f4ea82752ced0b5fc8f54d4474711192fc

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

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

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

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

    • -0
    • +1
    ./object_add/object_add.3.adm
    • -0
    • +1
    ./object_put/object_put.3.adm
  1. … 17 more files in changeset.
[NO ISSUE][FUN] Implement object-replace()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-replace function that replaces all

occurrences of a value in a given object by a new

value.

- Add new function to docs.

- Add test case.

Change-Id: I2907f827a1dc5bb35f340bfd25d51e1fdd6fde20

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

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

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: Dmitry Lychagin <dmitry.lychagin@couchbase.com>

    • -0
    • +1
    ./object_replace/object_replace.3.adm
  1. … 15 more files in changeset.
[NO ISSUE][FUN] Implement object-unwrap()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-unwrap function that given an object that

has exactly one name-value pair, it will return the value

of this pair.

- Add new function to docs.

- Add test case.

Change-Id: I2af84e72e2cf630afe2430f715c8d40dd075e97e

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

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

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

    • -0
    • +1
    ./object_unwrap/object_unwrap.3.adm
  1. … 10 more files in changeset.
[NO ISSUE][FUN] Implement object-rename()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-rename function that renames a field from

a given object.

- Add new function to docs.

- Add test case.

Change-Id: I439255137493e3e8dd2639abff32d7bd316d31e5

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

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

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

    • -0
    • +1
    ./object_rename/object_rename.3.adm
  1. … 10 more files in changeset.
[NO ISSUE][FUN] Implement object-remove()

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Implement object-remove function that removes a field from

a given object.

- Add new function to docs.

- Add test case.

Change-Id: I8d4acfa0ef00ccdcb95e189b989a16f06acf0119

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

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

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

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

    • -0
    • +1
    ./object_remove/object_remove.3.adm
  1. … 10 more files in changeset.
[ASTERIXDB-2340][FUN] Implement object_length(), object_names()

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Implement object_length(), object_names() functions

- Consolidate type inferers for some object accessor functions

Change-Id: I1108466ffe4f6b002fa7dd25f76dd5e8d537b0be

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

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

    • -0
    • +1
    ./object_length/object_length.3.adm
    • -0
    • +1
    ./object_names/object_names.3.adm
  1. … 18 more files in changeset.
[ASTERIXDB-2287][SQL] Support SELECT variable.* in SQL++

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Support SELECT variable.* in SQL++

- Include variables defined by LET clauses in the

output record created by SELECT *

- Add object_concat() function

- Add tests for these new features

- Fail testcase if its source directory is missing

- Fix testcases that did not run previously because

their source directories were incorrectly specified

Change-Id: I058dc0f45072a1398f6431e0c73ce680c4d8cdc7

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

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

    • -2
    • +2
    ./closed-nullable-fields_issue1616/closed-nullable-fields_issue1616.1.adm
  1. … 126 more files in changeset.
Documentation cleanup.

1. "record"->"object",

2. JSONify sqlpp/3_query.md.

Change-Id: Idcb2be81d1bfa37dd876cd36a7a5bb824bc3ab86

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

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

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

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

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

    • -0
    • +4
    ./access-nested-fields/access-nested-fields.10.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.11.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.12.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.3.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.4.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.5.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.6.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.7.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.8.adm
    • -0
    • +4
    ./access-nested-fields/access-nested-fields.9.adm
    • -0
    • +2
    ./closed-nullable-fields_issue1616/closed-nullable-fields_issue1616.1.adm
    • -0
    • +1
    ./closed-object-constructor_01/closed-record-constructor_01.1.adm
    • -0
    • +1
    ./closed-object-constructor_02/closed-record-constructor_02.1.adm
    • -0
    • +1
    ./closed-object-constructor_03/closed-record-constructor_03.1.adm
    • -0
    • +2
    ./expFieldName/expFieldName.1.adm
  1. … 798 more files in changeset.