Clone Tools
  • last updated 25 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[NO ISSUE][COMP][RT] New library deployment model

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

- Deploy external libraries using Hyracks jobs

- Library manager is no longer available on CC

- Add IServlet.init() which is invoked during web server startup

- External libraries can no longer provide implementations of

IExternalDataSourceFactory because external libraries are

not available on CC

- Added testcase for an external adapter

Change-Id: If64f99f6a15b81b1e426239bde63360f5ef57059

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

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

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

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

  1. … 94 more files in changeset.
Merge commit 'c25c36d1b0' from 'gerrit/mad-hatter'

Change-Id: I8a78950cb81f0a29ceae94fa439eec700c17d06d

  1. … 11 more files in changeset.
[ASTERIXDB-2751][EXT] Issue a warning if external dataset configuration returns no files

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Issue a warning when creating an external dataset if the dataset

configuration returns no files.

- Issue a warning when querying an external dataset if no files

are returned.

Change-Id: I0b2be49bf3c69c3e055d942a5c3f0106b3069d52

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

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. … 53 more files in changeset.
[ASTERIXDB-2744][COMP] Fix compiler error during index selection

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fix NullPointerException in BTreeAccessMethod.createKeyVarsAndExprs()

when there is a composite key.

Change-Id: Ie49a5940afa35c3c2af26a7e7f029a1f73e469f3

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

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

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

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

  1. … 7 more files in changeset.
[NO ISSUE][COMP] Range scan on a prefix of a composite key

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fixed an issue with range scan on a prefix of a composite

key not using both bounds to probe the index

Change-Id: I35fb979191b254857211da5c0ec28bae4a370ba8

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

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>

    • -12
    • +10
    ./am/AbstractIntroduceAccessMethodRule.java
  1. … 7 more files in changeset.
[ASTERIXDB-2176] Python UDFs

- user model changes: yes

- storage format changes: no

- interface changes: yes

Details:

- Allow UDFs to be shiv-packaged python modules with their

dependencies

- Use pyro for python RPC

- Maven build for pyro package into server

- Remove JObject spatial types

- Simpler conversion from java primitive/standard types and

collections

to JObject equivalents

Change-Id: Ibea23a2e9308132f343d80eff04ede9a235aa021

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

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

  1. … 108 more files in changeset.
[NO ISSUE][COMP] CREATE INDEX with Geometry datatype

Details:

- Support geometry datatype for RTree Index:

CREATE INDEX geomIndex ON geoDataset(geometry) TYPE rtree;

- Enable ST functions for rtree with geometry datatype

- Add testcases

Change-Id: I8f4a82c43b950fc3573cae5aa7c0782b475f962d

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

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: Mehnaz Tabassum Mahin <mmahi004@ucr.edu>

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

  1. … 48 more files in changeset.
[NO ISSUE][COMP] Introduce Index Only Compiler Property

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Introduce "compiler.indexonly" compiler property to

enable/disable index-only plans.

- Replace usage of 'noindexonly' query property by

the new compiler property.

- Update docs and test cases.

Change-Id: I82d05bbfacbaca17eb8d8a2b6d825aa180e9ab02

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

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

    • -3
    • +0
    ./am/AbstractIntroduceAccessMethodRule.java
  1. … 32 more files in changeset.
Merge branch 'gerrit/mad-hatter'

Change-Id: I1154220eecc9793cd43cfdd16da6449f2436e08b

    • -2
    • +2
    ./am/AbstractIntroduceAccessMethodRule.java
  1. … 1 more file in changeset.
[NO ISSUE][COMP] Incorrect result with composite secondary index

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Secondary BTree index with composite key should not be chosen

if one of its key fields can be null or missing and

the query does not match all index expressions

Change-Id: Ia598df3d3fa879f8ebe5269fa1f295e1b890c8bf

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

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

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

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

    • -2
    • +2
    ./am/AbstractIntroduceAccessMethodRule.java
  1. … 43 more files in changeset.
[NO ISSUE][COMP][RT] External function improvements

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Support multipart external identifiers in CREATE FUNCTION

- Add preliminary code for Python UDFs

- Some refactoring in external function framework

- Add method to get IServiceContext from IEvaluatorContext

Change-Id: I7ec91f5be2efa8409cda3a3c13f5e8b4de3e75e8

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

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

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

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

  1. … 33 more files in changeset.
[NO ISSUE][COMP] Eliminate listify in some window function cases

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Eliminate listify when a window function call

operates on the output of an aggregate function

Change-Id: I714fd4210a615963480e22c38ed3bcd3c98f5463

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

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>

    • -18
    • +11
    ./PushAggregateIntoNestedSubplanRule.java
  1. … 4 more files in changeset.
[NO ISSUE][COMP] Non-deterministic external functions

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Add compiler support for non-deterministic external functions

- Constant fold only those external functions that are

declared as deterministic and are implemented in Java

(grammar default is non-deterministic)

- Add testcase

Change-Id: Iae7839cb7f6c21f8980867e31de78887a8e9e801

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

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

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

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

  1. … 26 more files in changeset.
[NO ISSUE][COMP] Extension to InjectTypeCastForFunctionArgumentsRule

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Extend InjectTypeCastForFunctionArgumentsRule for functions

that need arguments casting.

Change-Id: I68c264e7885e4f7d51a90fc615891a832a69e785

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

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>

    • -31
    • +18
    ./InjectTypeCastForFunctionArgumentsRule.java
  1. … 1 more file in changeset.
[NO ISSUE] Make MetadataProvider extensible

- user model changes: yes

- storage format changes: no

- interface changes: no

Details:

- Allow product extensions to provide custom

implementation of MetadataProvider

- Modify 'async-deferred' testcases to

request 'Clean-JSON' output

Change-Id: I485073e6a9ec7e36083da6f50a8df63a37b2668b

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

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

  1. … 35 more files in changeset.
[NO ISSUE] Support multipart dataverse names

- user model changes: yes

- storage format changes: no

- interface changes: yes

Details:

- Support dataverse names that consist of multiple parts

- Introduce DataverseName class and adopt it throughout the system

- Add testcases for multipart dataverse names

Change-Id: I1313b2dc0e8df6a9b0ded48dea122afc3ba5dbe7

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

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

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

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

    • -1
    • +2
    ./IntroduceSecondaryIndexInsertDeleteRule.java
    • -2
    • +2
    ./SetAsterixMemoryRequirementsRule.java
    • -7
    • +4
    ./am/AbstractIntroduceAccessMethodRule.java
    • -6
    • +7
    ./am/IntroduceLSMComponentFilterRule.java
    • -5
    • +7
    ./am/IntroducePrimaryIndexForAggregationRule.java
  1. … 274 more files in changeset.
[NO ISSUE][COMP] Fix internal error with composite key index

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fixed ArrayIndexOutOfBoundsException in

BTreeAccessMethod.createIndexSearchPlan() when

there's a composite key index and a query predicate

that operates on a subset of its key fields.

E.g.

create index ... on .. (a,b,c);

select ... from ... where a = ... and c = ...

Change-Id: I87deb2537a97789b93a7174f97470b46a0558188

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

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>

    • -1
    • +1
    ./am/AbstractIntroduceAccessMethodRule.java
  1. … 14 more files in changeset.
[NO ISSUE][COMP] Fix incorrect error with if_*() functions

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fixed incorrect 'Type incompatibility' error raised by

the compiler when arguments of if_null(), if_missing(),

and if_missing_or_null() have different complex types

(array and record)

Change-Id: Idb285a3314604cd19a76d011a4739476fb7c7d7c

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

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>

    • -1
    • +2
    ./InjectTypeCastForFunctionArgumentsRule.java
  1. … 12 more files in changeset.
[NO ISSUE][COMP] Fix wrong result with indexnl outer join

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Fix duplicate tuples in the result when indexnl hint

is applied to a standalone left outer join

Change-Id: I0e692d731caa9914438817b299c64569130075b0

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

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>

    • -10
    • +12
    ./am/AccessMethodAnalysisContext.java
    • -44
    • +43
    ./am/IntroduceJoinAccessMethodRule.java
  1. … 18 more files in changeset.
[ASTERIXDB-2648][COMP] Fix dataset order in broadcast hint

- user model changes: yes

- storage format changes: no

- interface changes: no

details:

- Provides hash-bcast hint to replace bcast hint which makes

broadcast join consistent with other types of joins for choosing

the broadcasting dataset based on dataset order in FROM clause.

- Chooses the build dataset to get broadcast based on the order

in the FROM clause not the WHERE clause (which was the case for

bcast hint).

Change-Id: I505fc8e0bc32c760ae0471c6b302bbfd8499be4a

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

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

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

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

    • -1
    • +2
    ./subplan/InlineLeftNtsInSubplanJoinFlatteningVisitor.java
  1. … 49 more files in changeset.
[ASTERIXDB-2631][COMP][RT] Report count of all warnings

- user model changes: no

- storage format changes: no

- interface changes: yes

Details:

Currently, only runtime warnings are counted. Include

parser & compile-time warnings, as well.

- removed the warn limit as a compiler option and made it

a request parameter.

- the warning collector of the parser collects all warnings

but allow pulling warnings up to a maximum desired.

- the warning collector of the compiler/executor collects up

to the request max-warnings and allow pulling up to a max desired.

- servlets collect from the parser and query compiler &

executor up to the request max-warnings.

Change-Id: Ia7e559313d32a8ba6f450f254a3a7b4b1e662a50

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

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

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

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

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

  1. … 90 more files in changeset.
Merge commit '8930f0d' from stabilization-f69489

Change-Id: I64cf862bc5ebe19a24acbccf821f68556699222e

    • -5
    • +18
    ./am/IntroduceLSMComponentFilterRule.java
  1. … 21 more files in changeset.
[NO ISSUE][ING][EXT] Handle filters on meta() fields for feeds

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

This fix is to handle filters on meta() fields where the feed name

is not supplied as an arguement to the meta() when connecting the feed.

Both of these statement should work:

CONNECT FEED ds_feed TO DATASET ds WHERE meta(ds_feed).id LIKE "%WEB%"

CONNECT FEED ds_feed TO DATASET ds WHERE meta().id LIKE "%WEB%"

Change-Id: I1dbf40525601584efa29eb3adf4ba41062ebe53a

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

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

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

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

    • -13
    • +47
    ./MetaFunctionToMetaVariableRule.java
  1. … 34 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>

  1. … 56 more files in changeset.
[NO ISSUE][COMP] Reduce memory requirements for monitoring functions

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Queries that only invoke monitoring/metadata datasource functions

should run with minimal memory requirements

- The functions are: active_requests(), completed_requests(),

dataset_resources(), storage_components(), jobs(), and ping()

Change-Id: If7de53a5b476c8ce0d3fe485bf526a5d425e4c37

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

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

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

    • -6
    • +36
    ./SetAsterixMemoryRequirementsRule.java
  1. … 27 more files in changeset.
[NO ISSUE][COMP] Fix index selection for datasets with meta

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

Fix index selection for datasets with meta. Access method rule should

check where the field is coming from (dataset record or meta record)

and then determine if the field matches the keys in the index based

on their names and sources.

This patch also fixes resolving PK field accesses to the primary key

variable (e.g. $ds.getField("id") is turned into $13 where id is a PK).

The fix considers whether the PK is coming from the data record or the

meta record.

The patch also includes fixing rewriting of meta() references and

replacing them with their corresponding meta variables. Now nested plans

are visited also when looking for meta() references to take care of cases

where the data scan producing the meta variable and the meta() references

happen to be inside the nested plans.

MetaFunctionToMetaVariable() is fired also after the rules which eliminate

subplans to allow for rewriting of the meta() if it couldn't be replaced

when the meta() reference was in the subplan but referring to meta variable

outside the nested plan.

ReinferAllTypesRule() is now fired before ByNameToByIndexFieldAccessRule()

to allow the latter rule to get the up-to-date types in the whole plan.

Change-Id: I0503f64cd51153896e2d7d7abc465c679f82e2fd

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

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

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

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

Contrib: Till Westmann <tillw@apache.org>

    • -4
    • +17
    ./MetaFunctionToMetaVariableRule.java
    • -22
    • +60
    ./am/AbstractIntroduceAccessMethodRule.java
    • -5
    • +18
    ./am/IntroduceLSMComponentFilterRule.java
  1. … 85 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
    • +132
    ./RemoveDuplicateFieldsRule.java
  1. … 52 more files in changeset.
[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>

[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>

    • -45
    • +68
    ./typecast/StaticTypeCastUtil.java
  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>

  1. … 2 more files in changeset.