Opened 8 years ago
Last modified 5 years ago
#1385 closed defect
case fails on array joins with different tiling — at Version 2
Reported by: | Dimitar Misev | Owned by: | apercov |
---|---|---|---|
Priority: | major | Milestone: | 10.0 |
Component: | qlparser | Version: | development |
Keywords: | Cc: | Peter Baumann | |
Complexity: | Medium |
Description (last modified by )
Currently the CASE statement must only contain arrays that adhere to the same tiling scheme. This may not always be the case, so the algorithm should be generalized.
E.g. these queries in the systemtest:
---------------------------------------------------------------------- induction_all_operations_int_divide.rasql select (case when test_grey2 = 0 then 0c else div(test_grey, test_grey2) end) from test_grey, test_grey2 ---------------------------------------------------------------------- induction_all_operations_modulo.rasql select (case when test_grey2 = 0 then 0c else mod(test_grey, test_grey2) end) from test_grey, test_grey2
.. fail when test_grey and test_grey2 (mr collections basically) are inserted with different tiling schemes:
rasql --user rasadmin --passwd rasadmin -q 'create collection test_grey GreySet' rasql --user rasadmin --passwd rasadmin -q 'create collection test_grey2 GreySet' rasql --user rasadmin --passwd rasadmin -q 'insert into test_grey values decode($1 ) tiling aligned [0:49,0:29] tile size 1500' -f $RMANSRC/src/systemtest/testcases_mandatory/test_select/testdata/mr_1.png rasql --user rasadmin --passwd rasadmin -q 'insert into test_grey2 values decode($1 ) tiling aligned [0:29,0:59] tile size 1800' -f $RMANSRC/src/systemtest/testcases_mandatory/test_select/testdata/mr_1.png
It may be useful to check how the tiles are matched in binary operations like + and replicate that in qtcase*
select test_grey + test_grey2 from test_grey, test_grey2
Change History (2)
comment:1 by , 6 years ago
Description: | modified (diff) |
---|
comment:2 by , 5 years ago
Description: | modified (diff) |
---|---|
Owner: | changed from | to
Status: | new → assigned |
Note:
See TracTickets
for help on using tickets.