IS NULL in combination with views can cause an internal server errors in rare cases
Details
| Detail name | Value |
|---|---|
| Changelog Number | 5495 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | EXASOL 6.0.6 |
| Fix Versions | EXASOL 6.0.7 |
| Resolution Date | 2017-12-19 |
The combination of IS NULL, views and joins can lead to an internal server error in Exasol.
How To Reproduce
DROP SCHEMA TEST CASCADE; CREATE SCHEMA TEST; CREATE OR REPLACE TABLE T1(C0 INT); CREATE OR REPLACE TABLE T2(C1 INT); CREATE OR REPLACE VIEW V1 AS SELECT T2.C1 FROM T2 RIGHT JOIN T1 ON TRUE; WITH V2 AS( SELECT CASE WHEN(C1 IS NULL) THEN 1 ELSE 0 END AS C2 FROM V1 ) SELECT * FROM ( SELECT * FROM V2 ) LEFT JOIN ( SELECT * FROM V2 WHERE C2 = 1 ) ON TRUE;
Error:
[40005] Successfully reconnected after internal server error, transaction was rolled back.
Workaround
Disable the view optimization with the parameter:
-disableViewOptimization=1