Ticket #1070: 0001-ticket-1049-test-subsetting.patch

File 0001-ticket-1049-test-subsetting.patch, 61.4 KB (added by Dimitar Misev, 9 years ago)
  • bin/errtxts

    From ecbdcb2f8d2cc9e117a17e793baa80682889f726 Mon Sep 17 00:00:00 2001
    From: Dimitar Misev <misev@rasdaman.com>
    Date: Mon, 16 Nov 2015 18:31:58 +0100
    Subject: [PATCH] ticket:1049 - test subsetting
    
    ---
     bin/errtxts                                        |  1 +
     bin/errtxts_en                                     |  1 +
     qlparser/oql.yy                                    |  1 +
     qlparser/qtdomainoperation.cc                      | 10 ++++-
     .../test_subsetting/known_fails                    |  0
     .../test_subsetting/oracle/infinite_bounds.oracle  |  1 +
     .../oracle/infinite_bounds_slice.oracle            |  1 +
     .../oracle/infinite_bounds_slice_error.oracle      |  1 +
     .../oracle/intersect_nonmaterialized_tiles.oracle  |  1 +
     .../intersect_nonmaterialized_tiles_2.oracle       |  1 +
     .../oracle/intersect_out_of_bounds.oracle          |  1 +
     .../oracle/intersect_out_of_bounds_2.oracle        |  1 +
     .../oracle/invalid_infinite_bound.oracle           |  1 +
     .../test_subsetting/oracle/less_indexes.oracle     |  1 +
     .../lower_bound_greater_than_upper_bound.oracle    |  1 +
     .../oracle/materialized_tiles_only.oracle          |  1 +
     .../test_subsetting/oracle/more_indexes.oracle     |  1 +
     ...negative_intersect_nonmaterialized_tiles.oracle |  1 +
     ...gative_intersect_nonmaterialized_tiles_2.oracle |  1 +
     .../oracle/negative_materialized_tiles_only.oracle |  1 +
     .../negative_nonmaterialized_tiles_only.oracle     |  1 +
     .../oracle/nonmaterialized_tiles_only.oracle       |  1 +
     .../oracle/single_infinite_bounds.oracle           |  1 +
     .../oracle/single_infinite_bounds_slice.oracle     |  2 +
     .../single_infinite_bounds_slice_error.oracle      |  1 +
     .../single_intersect_nonmaterialized_tiles.oracle  |  1 +
     ...single_intersect_nonmaterialized_tiles_2.oracle |  1 +
     .../oracle/single_intersect_out_of_bounds.oracle   |  1 +
     .../oracle/single_intersect_out_of_bounds_2.oracle |  1 +
     .../oracle/single_invalid_infinite_bound.oracle    |  1 +
     .../oracle/single_less_indexes.oracle              |  1 +
     ...gle_lower_bound_greater_than_upper_bound.oracle |  1 +
     .../oracle/single_materialized_tiles_only.oracle   |  1 +
     .../oracle/single_more_indexes.oracle              |  1 +
     ...negative_intersect_nonmaterialized_tiles.oracle |  1 +
     ...gative_intersect_nonmaterialized_tiles_2.oracle |  1 +
     .../single_negative_materialized_tiles_only.oracle |  1 +
     ...ngle_negative_nonmaterialized_tiles_only.oracle |  1 +
     .../single_nonmaterialized_tiles_only.oracle       |  1 +
     .../single_slice_intersect_nonmaterialized.oracle  |  1 +
     .../oracle/single_three_bounds.oracle              |  1 +
     .../oracle/slice_intersect_nonmaterialized.oracle  |  1 +
     .../subset_intersect_nonmaterialized_tiles.oracle  |  1 +
     ...subset_intersect_nonmaterialized_tiles_2.oracle |  1 +
     .../oracle/subset_materialized_tiles_only.oracle   |  1 +
     ...negative_intersect_nonmaterialized_tiles.oracle |  1 +
     ...gative_intersect_nonmaterialized_tiles_2.oracle |  1 +
     .../subset_negative_materialized_tiles_only.oracle |  1 +
     ...bset_negative_nonmaterialized_tiles_only.oracle |  1 +
     .../subset_nonmaterialized_tiles_only.oracle       |  1 +
     .../test_subsetting/oracle/three_bounds.oracle     |  1 +
     .../test_subsetting/queries/infinite_bounds.rasql  |  1 +
     .../queries/infinite_bounds_slice.rasql            |  1 +
     .../queries/infinite_bounds_slice_error.rasql      |  1 +
     .../queries/intersect_nonmaterialized_tiles.rasql  |  1 +
     .../intersect_nonmaterialized_tiles_2.rasql        |  1 +
     .../queries/intersect_out_of_bounds.rasql          |  1 +
     .../queries/intersect_out_of_bounds_2.rasql        |  1 +
     .../queries/invalid_infinite_bound.rasql           |  1 +
     .../test_subsetting/queries/less_indexes.rasql     |  1 +
     .../lower_bound_greater_than_upper_bound.rasql     |  1 +
     .../queries/materialized_tiles_only.rasql          |  1 +
     .../test_subsetting/queries/more_indexes.rasql     |  1 +
     .../negative_intersect_nonmaterialized_tiles.rasql |  1 +
     ...egative_intersect_nonmaterialized_tiles_2.rasql |  1 +
     .../queries/negative_materialized_tiles_only.rasql |  1 +
     .../negative_nonmaterialized_tiles_only.rasql      |  1 +
     .../queries/nonmaterialized_tiles_only.rasql       |  1 +
     .../queries/single_infinite_bounds.rasql           |  1 +
     .../queries/single_infinite_bounds_slice.rasql     |  1 +
     .../single_infinite_bounds_slice_error.rasql       |  1 +
     .../single_intersect_nonmaterialized_tiles.rasql   |  1 +
     .../single_intersect_nonmaterialized_tiles_2.rasql |  1 +
     .../queries/single_intersect_out_of_bounds.rasql   |  1 +
     .../queries/single_intersect_out_of_bounds_2.rasql |  1 +
     .../queries/single_invalid_infinite_bound.rasql    |  1 +
     .../queries/single_less_indexes.rasql              |  1 +
     ...ngle_lower_bound_greater_than_upper_bound.rasql |  1 +
     .../queries/single_materialized_tiles_only.rasql   |  1 +
     .../queries/single_more_indexes.rasql              |  1 +
     ..._negative_intersect_nonmaterialized_tiles.rasql |  1 +
     ...egative_intersect_nonmaterialized_tiles_2.rasql |  1 +
     .../single_negative_materialized_tiles_only.rasql  |  1 +
     ...ingle_negative_nonmaterialized_tiles_only.rasql |  1 +
     .../single_nonmaterialized_tiles_only.rasql        |  1 +
     .../single_slice_intersect_nonmaterialized.rasql   |  1 +
     .../queries/single_three_bounds.rasql              |  1 +
     .../queries/slice_intersect_nonmaterialized.rasql  |  1 +
     .../test_subsetting/queries/three_bounds.rasql     |  1 +
     .../testcases_mandatory/test_subsetting/test.sh    |  1 +
     .../testcases_mandatory/test_subsetting/testdata   |  1 +
     systemtest/util/common.sh                          |  8 ++--
     systemtest/util/rasql.sh                           | 44 ++++++++++++++++++++++
     systemtest/util/test_oracle.sh                     | 16 ++++----
     94 files changed, 156 insertions(+), 12 deletions(-)
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/known_fails
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice_error.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/invalid_infinite_bound.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/less_indexes.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/lower_bound_greater_than_upper_bound.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/more_indexes.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/negative_materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/negative_nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice_error.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_invalid_infinite_bound.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_less_indexes.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_lower_bound_greater_than_upper_bound.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_more_indexes.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_slice_intersect_nonmaterialized.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/single_three_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/slice_intersect_nonmaterialized.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles_2.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_materialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/subset_nonmaterialized_tiles_only.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/oracle/three_bounds.oracle
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice_error.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/invalid_infinite_bound.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/less_indexes.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/lower_bound_greater_than_upper_bound.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/materialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/more_indexes.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/negative_materialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/negative_nonmaterialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/nonmaterialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice_error.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_invalid_infinite_bound.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_less_indexes.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_lower_bound_greater_than_upper_bound.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_materialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_more_indexes.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles_2.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_negative_materialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_negative_nonmaterialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_nonmaterialized_tiles_only.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_slice_intersect_nonmaterialized.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/single_three_bounds.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/slice_intersect_nonmaterialized.rasql
     create mode 100644 systemtest/testcases_mandatory/test_subsetting/queries/three_bounds.rasql
     create mode 120000 systemtest/testcases_mandatory/test_subsetting/test.sh
     create mode 120000 systemtest/testcases_mandatory/test_subsetting/testdata
    
    diff --git a/bin/errtxts b/bin/errtxts
    index c083d7b..b0d0959 100644
    a b  
    7777332^E^Preprocessing error $errorNo in line $lineNo, column $columnNo, token $token: number of actual arguments for the called function differs from the number of formal arguments.
    7878333^E^Preprocessing error $errorNo in line $lineNo, column $columnNo, token $token: the called function name is ambiguous, try the full qualified name.
    7979#
     80348^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Subset domain is not within the spatial domain of the MDD.
    8081349^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Operand out of range.
    8182350^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: General.
    8283351^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Spatial domains of the binary induce operands are incompatible.
  • bin/errtxts_en

    diff --git a/bin/errtxts_en b/bin/errtxts_en
    index bcb98e8..ae202ab 100644
    a b  
    7777332^E^Preprocessing error $errorNo in line $lineNo, column $columnNo, token $token: number of actual arguments for the called function differs from the number of formal arguments.
    7878333^E^Preprocessing error $errorNo in line $lineNo, column $columnNo, token $token: the called function name is ambiguous, try the full qualified name.
    7979#
     80348^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Subset domain is not within the spatial domain of the MDD.
    8081349^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Operand out of range.
    8182350^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: General.
    8283351^E^Execution error $errorNo in line $lineNo, column $columnNo, near token $token: Spatial domains of the binary induce operands are incompatible.
  • qlparser/oql.yy

    diff --git a/qlparser/oql.yy b/qlparser/oql.yy
    index 01c4b2a..d36cdd9 100644
    a b trimExp: generalExp mintervalExp  
    30053005          parseQueryTree->removeDynamicObject( $2 );
    30063006          parseQueryTree->addDynamicObject( dop );
    30073007          $$ = dop;
     3008          $$->setParseInfo( $2->getParseInfo() );
    30083009          if (mflag == MF_IN_CONTEXT)
    30093010            parseQueryTree->addDomainObject( dop );       
    30103011        };   
  • qlparser/qtdomainoperation.cc

    diff --git a/qlparser/qtdomainoperation.cc b/qlparser/qtdomainoperation.cc
    index de8ff50..c83e109 100644
    a b QtDomainOperation::evaluate( QtDataList* inputList )  
    450450            // get minterval data
    451451            vector<bool>*  trimFlags = new vector<bool>( *((static_cast<QtMintervalData*>(indexData))->getTrimFlags()) );
    452452            r_Minterval    domain    = (static_cast<QtMintervalData*>(indexData))->getMintervalData();
    453 
     453           
    454454            //
    455455            // In case of dynamic index expressions, load optimization has to
    456456            // be performed for the current input expression.
    QtDomainOperation::evaluate( QtDataList* inputList )  
    506506
    507507            if( currentMDDObj )
    508508            {
     509                r_Minterval currentDomain = currentMDDObj->getCurrentDomain();
     510                if (!currentDomain.covers(domain))
     511                {
     512                    LERROR << "Subset domain " << domain << " is not within the spatial domain of the MDD " << currentDomain;
     513                    parseInfo.setErrorNo(348);
     514                    throw parseInfo;
     515                }
     516               
    509517                bool trimming   = false;
    510518                bool projection = false;
    511519
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/known_fails b/systemtest/testcases_mandatory/test_subsetting/known_fails
    new file mode 100644
    index 0000000..e69de29
    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice_error.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice_error.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/infinite_bounds_slice_error.oracle
    new file mode 100644
    index 0000000..0f8c781
    - +  
     1rasdaman error 300: Parsing error 300 in line 1, column 22: Unexpected name ].
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..d00e1c4
    - +  
     1  Result element 1: [200:350,200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..0c9e4d5
    - +  
     1  Result element 1: [200:650,200:650]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds.oracle
    new file mode 100644
    index 0000000..2b6ac70
    - +  
     1  Result element 1: [-1000:-600,-1000:-600]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/intersect_out_of_bounds_2.oracle
    new file mode 100644
    index 0000000..cd5e716
    - +  
     1  Result element 1: [-1000:-600,550:800]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/invalid_infinite_bound.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/invalid_infinite_bound.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/invalid_infinite_bound.oracle
    new file mode 100644
    index 0000000..411756e
    - +  
     1rasdaman error 300: Parsing error 300 in line 1, column 21: Unexpected name ,.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/less_indexes.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/less_indexes.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/less_indexes.oracle
    new file mode 100644
    index 0000000..7580708
    - +  
     1rasdaman error 362: Execution error 362 in line 1, column 13, near token c: Specified domain dimensionality does not equal defined dimensionality of MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/lower_bound_greater_than_upper_bound.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/lower_bound_greater_than_upper_bound.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/lower_bound_greater_than_upper_bound.oracle
    new file mode 100644
    index 0000000..3696b92
    - +  
     1rasdaman error 389: Execution error 389 in line 1, column 18, near token :: No interval (in case of fixed bounds, the upper one can not be smaller than the lower one).
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..2942c45
    - +  
     1  Result element 1: [100:110,100:110]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/more_indexes.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/more_indexes.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/more_indexes.oracle
    new file mode 100644
    index 0000000..7580708
    - +  
     1rasdaman error 362: Execution error 362 in line 1, column 13, near token c: Specified domain dimensionality does not equal defined dimensionality of MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..b16f6e2
    - +  
     1  Result element 1: [-400:150,-200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/negative_intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..bd4d0bf
    - +  
     1  Result element 1: [-400:-150,-200:-150]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/negative_materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/negative_materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/negative_materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..8d44084
    - +  
     1  Result element 1: [-400:-310,-400:-310]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/negative_nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/negative_nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/negative_nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..9108c69
    - +  
     1  Result element 1: [-100:-50,-100:-50]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..4fadd1e
    - +  
     1  Result element 1: [300:350,300:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice.oracle
    new file mode 100644
    index 0000000..7f8ea20
    - +  
     1terminate called after throwing an instance of 'std::runtime_error'
     2  what(): 
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice_error.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice_error.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_infinite_bounds_slice_error.oracle
    new file mode 100644
    index 0000000..0f8c781
    - +  
     1rasdaman error 300: Parsing error 300 in line 1, column 22: Unexpected name ].
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds.oracle
    new file mode 100644
    index 0000000..2b6ac70
    - +  
     1  Result element 1: [-1000:-600,-1000:-600]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_intersect_out_of_bounds_2.oracle
    new file mode 100644
    index 0000000..cd5e716
    - +  
     1  Result element 1: [-1000:-600,550:800]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_invalid_infinite_bound.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_invalid_infinite_bound.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_invalid_infinite_bound.oracle
    new file mode 100644
    index 0000000..411756e
    - +  
     1rasdaman error 300: Parsing error 300 in line 1, column 21: Unexpected name ,.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_less_indexes.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_less_indexes.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_less_indexes.oracle
    new file mode 100644
    index 0000000..7580708
    - +  
     1rasdaman error 362: Execution error 362 in line 1, column 13, near token c: Specified domain dimensionality does not equal defined dimensionality of MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_lower_bound_greater_than_upper_bound.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_lower_bound_greater_than_upper_bound.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_lower_bound_greater_than_upper_bound.oracle
    new file mode 100644
    index 0000000..3696b92
    - +  
     1rasdaman error 389: Execution error 389 in line 1, column 18, near token :: No interval (in case of fixed bounds, the upper one can not be smaller than the lower one).
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..2942c45
    - +  
     1  Result element 1: [100:110,100:110]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_more_indexes.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_more_indexes.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_more_indexes.oracle
    new file mode 100644
    index 0000000..7580708
    - +  
     1rasdaman error 362: Execution error 362 in line 1, column 13, near token c: Specified domain dimensionality does not equal defined dimensionality of MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..bd4d0bf
    - +  
     1  Result element 1: [-400:-150,-200:-150]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..8d44084
    - +  
     1  Result element 1: [-400:-310,-400:-310]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_negative_nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..9108c69
    - +  
     1  Result element 1: [-100:-50,-100:-50]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..eddd5ee
    - +  
     1rasdaman error 348: Execution error 348 in line 1, column 14, near token [: Subset domain is not within the spatial domain of the MDD.
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_slice_intersect_nonmaterialized.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_slice_intersect_nonmaterialized.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_slice_intersect_nonmaterialized.oracle
    new file mode 100644
    index 0000000..f9ea176
    - +  
     1  Result element 1: [200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/single_three_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/single_three_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/single_three_bounds.oracle
    new file mode 100644
    index 0000000..bbc1eb7
    - +  
     1rasdaman error 389: Execution error 389 in line 1, column 24, near token :: No interval (in case of fixed bounds, the upper one can not be smaller than the lower one).
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/slice_intersect_nonmaterialized.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/slice_intersect_nonmaterialized.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/slice_intersect_nonmaterialized.oracle
    new file mode 100644
    index 0000000..f9ea176
    - +  
     1  Result element 1: [200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..d00e1c4
    - +  
     1  Result element 1: [200:350,200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..0c9e4d5
    - +  
     1  Result element 1: [200:650,200:650]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..2942c45
    - +  
     1  Result element 1: [100:110,100:110]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles.oracle
    new file mode 100644
    index 0000000..b16f6e2
    - +  
     1  Result element 1: [-400:150,-200:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles_2.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles_2.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_intersect_nonmaterialized_tiles_2.oracle
    new file mode 100644
    index 0000000..bd4d0bf
    - +  
     1  Result element 1: [-400:-150,-200:-150]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_materialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_materialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_materialized_tiles_only.oracle
    new file mode 100644
    index 0000000..8d44084
    - +  
     1  Result element 1: [-400:-310,-400:-310]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_negative_nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..9108c69
    - +  
     1  Result element 1: [-100:-50,-100:-50]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/subset_nonmaterialized_tiles_only.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/subset_nonmaterialized_tiles_only.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/subset_nonmaterialized_tiles_only.oracle
    new file mode 100644
    index 0000000..4fadd1e
    - +  
     1  Result element 1: [300:350,300:350]
  • new file systemtest/testcases_mandatory/test_subsetting/oracle/three_bounds.oracle

    diff --git a/systemtest/testcases_mandatory/test_subsetting/oracle/three_bounds.oracle b/systemtest/testcases_mandatory/test_subsetting/oracle/three_bounds.oracle
    new file mode 100644
    index 0000000..bbc1eb7
    - +  
     1rasdaman error 389: Execution error 389 in line 1, column 24, near token :: No interval (in case of fixed bounds, the upper one can not be smaller than the lower one).
  • new file systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds.rasql
    new file mode 100644
    index 0000000..165f5aa
    - +  
     1select sdom(c[*:150,-200:*]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice.rasql
    new file mode 100644
    index 0000000..ee9e33e
    - +  
     1select sdom(c[*:150,-200]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice_error.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice_error.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/infinite_bounds_slice_error.rasql
    new file mode 100644
    index 0000000..d6cf562
    - +  
     1select sdom(c[*:150,*]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles.rasql
    new file mode 100644
    index 0000000..eeeb21c
    - +  
     1select sdom(c[200:350,200:350]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/intersect_nonmaterialized_tiles_2.rasql
    new file mode 100644
    index 0000000..c1ec4bf
    - +  
     1select sdom(c[200:650,200:650]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds.rasql
    new file mode 100644
    index 0000000..be6a3c9
    - +  
     1select sdom(c[-1000:-600,-1000:-600]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/intersect_out_of_bounds_2.rasql
    new file mode 100644
    index 0000000..7b220db
    - +  
     1select sdom(c[-1000:-600,550:800]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/invalid_infinite_bound.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/invalid_infinite_bound.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/invalid_infinite_bound.rasql
    new file mode 100644
    index 0000000..f7f421d
    - +  
     1select sdom(c[300:**,5]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/less_indexes.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/less_indexes.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/less_indexes.rasql
    new file mode 100644
    index 0000000..bf9f395
    - +  
     1select sdom(c[300:350]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/lower_bound_greater_than_upper_bound.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/lower_bound_greater_than_upper_bound.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/lower_bound_greater_than_upper_bound.rasql
    new file mode 100644
    index 0000000..f933df4
    - +  
     1select sdom(c[200:150,200:150]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/materialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/materialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/materialized_tiles_only.rasql
    new file mode 100644
    index 0000000..bf03a00
    - +  
     1select sdom(c[100:110,100:110]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/more_indexes.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/more_indexes.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/more_indexes.rasql
    new file mode 100644
    index 0000000..de7d47f
    - +  
     1select sdom(c[300:350,5,6,4]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles.rasql
    new file mode 100644
    index 0000000..2dcbc4e
    - +  
     1select sdom(c[-400:150,-200:350]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/negative_intersect_nonmaterialized_tiles_2.rasql
    new file mode 100644
    index 0000000..e8c45be
    - +  
     1select sdom(c[-400:-150,-200:-150]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/negative_materialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/negative_materialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/negative_materialized_tiles_only.rasql
    new file mode 100644
    index 0000000..38772c9
    - +  
     1select sdom(c[-400:-310,-400:-310]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/negative_nonmaterialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/negative_nonmaterialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/negative_nonmaterialized_tiles_only.rasql
    new file mode 100644
    index 0000000..9950bf6
    - +  
     1select sdom(c[-100:-50,-100:-50]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/nonmaterialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/nonmaterialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/nonmaterialized_tiles_only.rasql
    new file mode 100644
    index 0000000..3dc6a9e
    - +  
     1select sdom(c[300:350,300:350]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds.rasql
    new file mode 100644
    index 0000000..690b902
    - +  
     1select sdom(c[*:150,-200:*]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice.rasql
    new file mode 100644
    index 0000000..79eb8de
    - +  
     1select sdom(c[*:150,-200]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice_error.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice_error.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_infinite_bounds_slice_error.rasql
    new file mode 100644
    index 0000000..72bb2bb
    - +  
     1select sdom(c[*:150,*]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles.rasql
    new file mode 100644
    index 0000000..76b0fa9
    - +  
     1select sdom(c[200:350,200:350]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_nonmaterialized_tiles_2.rasql
    new file mode 100644
    index 0000000..4bd58d9
    - +  
     1select sdom(c[200:650,200:650]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds.rasql
    new file mode 100644
    index 0000000..9b06ef4
    - +  
     1select sdom(c[-1000:-600,-1000:-600]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_intersect_out_of_bounds_2.rasql
    new file mode 100644
    index 0000000..f1a9120
    - +  
     1select sdom(c[-1000:-600,550:800]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_invalid_infinite_bound.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_invalid_infinite_bound.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_invalid_infinite_bound.rasql
    new file mode 100644
    index 0000000..bcf8915
    - +  
     1select sdom(c[300:**,5]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_less_indexes.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_less_indexes.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_less_indexes.rasql
    new file mode 100644
    index 0000000..8ed0486
    - +  
     1select sdom(c[300:350]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_lower_bound_greater_than_upper_bound.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_lower_bound_greater_than_upper_bound.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_lower_bound_greater_than_upper_bound.rasql
    new file mode 100644
    index 0000000..8090f7b
    - +  
     1select sdom(c[200:150,200:150]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_materialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_materialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_materialized_tiles_only.rasql
    new file mode 100644
    index 0000000..64e7ae9
    - +  
     1select sdom(c[100:110,100:110]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_more_indexes.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_more_indexes.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_more_indexes.rasql
    new file mode 100644
    index 0000000..ecfdba3
    - +  
     1select sdom(c[300:350,5,6,4]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles.rasql
    new file mode 100644
    index 0000000..42c8c51
    - +  
     1select sdom(c[-400:150,-200:350]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles_2.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles_2.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_intersect_nonmaterialized_tiles_2.rasql
    new file mode 100644
    index 0000000..d3beb9e
    - +  
     1select sdom(c[-400:-150,-200:-150]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_negative_materialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_materialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_materialized_tiles_only.rasql
    new file mode 100644
    index 0000000..0e9eca5
    - +  
     1select sdom(c[-400:-310,-400:-310]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_negative_nonmaterialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_nonmaterialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_negative_nonmaterialized_tiles_only.rasql
    new file mode 100644
    index 0000000..fc60c65
    - +  
     1select sdom(c[-100:-50,-100:-50]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_nonmaterialized_tiles_only.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_nonmaterialized_tiles_only.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_nonmaterialized_tiles_only.rasql
    new file mode 100644
    index 0000000..6c7939c
    - +  
     1select sdom(c[300:350,300:350]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_slice_intersect_nonmaterialized.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_slice_intersect_nonmaterialized.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_slice_intersect_nonmaterialized.rasql
    new file mode 100644
    index 0000000..e4c1ba6
    - +  
     1select sdom(c[200:350,5]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/single_three_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/single_three_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/single_three_bounds.rasql
    new file mode 100644
    index 0000000..691df51
    - +  
     1select sdom(c[*:150,*:*:4]) from test_subsetting_single as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/slice_intersect_nonmaterialized.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/slice_intersect_nonmaterialized.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/slice_intersect_nonmaterialized.rasql
    new file mode 100644
    index 0000000..fd702d3
    - +  
     1select sdom(c[200:350,5]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/queries/three_bounds.rasql

    diff --git a/systemtest/testcases_mandatory/test_subsetting/queries/three_bounds.rasql b/systemtest/testcases_mandatory/test_subsetting/queries/three_bounds.rasql
    new file mode 100644
    index 0000000..40a86e4
    - +  
     1select sdom(c[*:150,*:*:4]) from test_subsetting as c
  • new file systemtest/testcases_mandatory/test_subsetting/test.sh

    diff --git a/systemtest/testcases_mandatory/test_subsetting/test.sh b/systemtest/testcases_mandatory/test_subsetting/test.sh
    new file mode 120000
    index 0000000..e1c40fe
    - +  
     1../../util/test_oracle.sh
     2 No newline at end of file
  • new file systemtest/testcases_mandatory/test_subsetting/testdata

    diff --git a/systemtest/testcases_mandatory/test_subsetting/testdata b/systemtest/testcases_mandatory/test_subsetting/testdata
    new file mode 120000
    index 0000000..1c2e2e0
    - +  
     1../test_select/testdata/
     2 No newline at end of file
  • systemtest/util/common.sh

    diff --git a/systemtest/util/common.sh b/systemtest/util/common.sh
    index 00bdb46..7180984 100644
    a b TEST_GREY2=test_grey2  
    6363TEST_RGB2=test_rgb2
    6464TEST_COMPLEX=test_complex
    6565TEST_NULL=nulltest
     66TEST_SUBSETTING=test_subsetting
     67TEST_SUBSETTING_SINGLE=test_subsetting_single
     68TEST_SUBSETTING_3D=test_subsetting_3d
    6669
    6770
    6871# ------------------------------------------------------------------------------
    function run_test()  
    498501              $WGET -q "$SECORE_URL$QUERY" -O "$out"
    499502              WGET_EXIT_CODE=$?
    500503              ;;
    501       select|rasql|nullvalues|jit)
     504      select|rasql|nullvalues|subsetting)
    502505              QUERY=`cat $f`
    503               if [ "$SVC_NAME" = "jit" ]; then
    504                 QUERY="$QUERY [opt 4]"
    505               fi
    506506              $RASQL -q "$QUERY" --out file --outfile "$out" --quiet > /dev/null 2> "$err"
    507507
    508508              # if an exception was thrown, then the err file has non-zero size
  • systemtest/util/rasql.sh

    diff --git a/systemtest/util/rasql.sh b/systemtest/util/rasql.sh
    index 387e5ea..ec7d26e 100644
    a b function import_nullvalues_data()  
    283283}
    284284
    285285#
     286# import data used in rasql subsetting tests. Expects arguments
     287# $1 - testdata dir holding files to be imported
     288#
     289function import_subsetting_data()
     290{
     291  local TESTDATA_PATH="$1"
     292  if [ ! -d "$TESTDATA_PATH" ]; then
     293    error "testdata path $TESTDATA_PATH not found."
     294  fi
     295  if [ ! -f "$TESTDATA_PATH/mr_1.png" ]; then
     296    error "testdata file $TESTDATA_PATH/mr_1.png not found"
     297  fi
     298  if [ ! -f "$TESTDATA_PATH/rgb.png" ]; then
     299    error "testdata file $TESTDATA_PATH/rgb.png not found"
     300  fi
     301 
     302  # check data types
     303  check_type GreySet
     304  check_type RGBSet
     305  check_type GreySet3
     306 
     307  drop_colls $TEST_SUBSETTING $TEST_SUBSETTING_SINGLE $TEST_SUBSETTING_3D
     308
     309  create_coll $TEST_SUBSETTING GreySet
     310  # this creates an object of size: [0:255,0:210]
     311  insert_into $TEST_SUBSETTING "$TESTDATA_PATH/mr_1.png" "" "decode"
     312
     313  # we extend this to an object of size: [0:755,0:710]
     314  # materializing data at: [500:755,500:710]
     315  $RASQL -q "update $TEST_SUBSETTING as m set m assign shift(decode(\$1), [500, 500])" -f "$TESTDATA_PATH/mr_1.png" --quiet > /dev/null
     316
     317  # and let's extend negative in order to test negative indexing: [-500:755,-500:710]
     318  $RASQL -q "update $TEST_SUBSETTING as m set m assign shift(decode(\$1), [-500, -500])" -f "$TESTDATA_PATH/mr_1.png" --quiet > /dev/null
     319 
     320  create_coll $TEST_SUBSETTING_SINGLE RGBSet
     321  insert_into $TEST_SUBSETTING_SINGLE "$TESTDATA_PATH/rgb.png" "" "decode"
     322 
     323  create_coll $TEST_SUBSETTING_3D GreySet3
     324  $RASQL -q "insert into $TEST_SUBSETTING_3D values marray i in [0:0,-500:-500,-500:-500] values 0c" --quiet > /dev/null
     325  $RASQL -q "update $TEST_SUBSETTING_3D as m set m[0,*:*,*:*] assign shift(decode(\$1), [-500, -500])" -f "$TESTDATA_PATH/mr_1.png" --quiet > /dev/null
     326  $RASQL -q "update $TEST_SUBSETTING_3D as m set m[1,*:*,*:*] assign shift(decode(\$1), [500, 500])" -f "$TESTDATA_PATH/mr_1.png" --quiet > /dev/null
     327}
     328
     329#
    286330# drop null values test data, including imported null types
    287331#
    288332drop_nullvalues_data()
  • systemtest/util/test_oracle.sh

    diff --git a/systemtest/util/test_oracle.sh b/systemtest/util/test_oracle.sh
    index 5e1c0a4..1898935 100755
    a b  
    4040#       2013-Dec-03     DM         known_fails file listing queries that are known to fail
    4141#
    4242
    43 PROG=`basename $0`
     43PROG=$(basename $0)
    4444
    4545# get dir of linking script
    4646SOURCE="${BASH_SOURCE[0]}"
    drop_data()  
    8585  [ "$SVC_NAME" == "secore" -o "$SVC_NAME" == "nullvalues" ] || drop_colls $TEST_GREY $TEST_GREY2 $TEST_RGB2 $TEST_COMPLEX
    8686  [ "$SVC_NAME" == "secore" -o "$SVC_NAME" == "select" -o "$SVC_NAME" == "nullvalues" ] || drop_petascope_data
    8787  [ "$SVC_NAME" == "nullvalues" ] && drop_nullvalues_data
     88  [ "$SVC_NAME" == "subsetting" ] || drop_colls $TEST_SUBSETTING
    8889}
    8990
    9091#
    cleanup()  
    100101    exit $RC_OK
    101102  fi
    102103}
    103 
    104 # trap keyboard interrupt (control-c)
    105 trap cleanup SIGINT
     104trap cleanup EXIT
    106105
    107106
    108107# ------------------------------------------------------------------------------
    if [ $? -eq 0 ]; then  
    118117fi
    119118echo "$SCRIPT_DIR" | grep "testcases_services" > /dev/null
    120119if [ $? -eq 0 ]; then
     120  check_postgres
    121121  if [ "$SVC_NAME" != "secore" ]; then
    122122    check_petascope || exit $RC_SKIP
    123123  fi
    124124fi
    125 check_postgres
    126125[ "$SVC_NAME" != "secore" ] && check_rasdaman
    127126check_wget
    128127check_gdal
    for i in $*; do  
    138137  esac
    139138done
    140139
     140#
    141141# run import if necessary
     142#
    142143drop_data
    143144[ "$SVC_NAME" == "secore" -o "$SVC_NAME" == "select" -o "$SVC_NAME" == "nullvalues" ] || import_petascope_data "$TESTDATA_PATH"
    144145[ "$SVC_NAME" == "select" ] && import_rasql_data "$TESTDATA_PATH"
    145146[ "$SVC_NAME" == "nullvalues" ] && import_nullvalues_data "$TESTDATA_PATH"
     147[ "$SVC_NAME" == "subsetting" ] && import_subsetting_data "$TESTDATA_PATH"
    146148if [ -e "$TESTDATA_PATH/complex.binary" ] ; then
    147149  if [ "$SVC_NAME" == "select" -o "$SVC_NAME" == "nullvalues" ]; then
    148150    check_type Gauss2Set
    for f in *; do  
    160162
    161163  # skip non-files
    162164  [ -f "$f" ] || continue
     165  [ "$f" == core ] && continue
    163166
    164167  # skip scripts, we only want queries
    165168  [[ "$f" == *.pre.sh || "$f" == *.post.sh || "$f" == *.check.sh ]] && continue
    166169
    167170  # uncomment for single test run
    168   #[[ "$f" == 01-* ]] || continue
     171  #[[ "$f" == *.rasql ]] || continue
    169172
    170173  if [ "$SVC_NAME" == "wcps" ]; then
    171174    # skip rasql/xml tests in WCPS test suite for now
    done  
    196199
    197200popd > /dev/null
    198201
    199 cleanup