Invalid usage of tables in PRIOR and CONNECT BY causes Internal Server Error
Details
| Detail name | Value |
|---|---|
| Changelog Number | 21791 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | Exasol 8.6.0 |
| Fix Versions | Exasol 2025.1.9, Exasol 2026.1.0, Exasol 2025.2.1 |
| Resolution Date | 2026-02-18 |
Description
Queries using functions like PRIOR, CONNECT_BY_ROOT, ROOT expect expressions as input.
Tables given as input cause an internal server error.
Example:
create table X as select 'a' as a from dual;
-- Expected: SyntaxError: tables are not allowed in this context
-- Observed: Internal Server Error
with k1(y) as ( values between 1 and 5 )
select
k1.*
, sys_connect_by_path(y, '-') as pth
, prior X || ' > ' as X
from k1
connect by
y = prior y+1
start with y = 1;
Workaround
As this is an invalid query, there is no workaround.
Fix
The incorrect usage of tables as input with functions like PRIOR is now met with a proper syntax error tables are not allowed in this context.