Strings not separated by comma in IN list cause a crash
Details
| Detail name | Value |
|---|---|
| Changelog Number | 23691 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | Exasol 7.1.0, Exasol 8.0.0 |
| Fix Versions | Exasol 2025.1.1, Exasol 8.29.12, Exasol 2025.2.0 |
| Resolution Date | 2025-08-06 |
Description
If you use an IN list predicate of two strings that are not separated by a comma then you get a crash (from version 8.9.0; versions 8.8.0 and earlier incorrectly ignore the second string).
Example
-- Setup
CREATE SCHEMA Test;
CREATE OR REPLACE TABLE T (A varchar(5));
-- Expected: An appropriate error
-- Observed (from 8.9.0): Error: "Successfully reconnected after internal server error, transaction was rolled back"
-- Observed (until 8.8.0): Query ignores the second string and runs
SELECT T.A in ('X' 'Y') FROM Test.T;
Workaround
Rewrite the query using one of the forms below, depending on the user’s intention.
-- Add a comma
SELECT T.A in ('X', 'Y') FROM Test.T;
-- Combine the strings
SELECT T.A in ('XY') FROM Test.T;
Fix
The query above will now give an appropriate error.