ODBC: prepared execution with no parameters can break the connection
Details
| Detail name | Value |
|---|---|
| Changelog Number | 17451 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | Exasol 7.1.17 |
| Fix Versions | Exasol 7.1.22, Exasol 8.21.0 |
| Resolution Date | 2023-07-24 |
Description
In the following scenario, the SQLExecute function will fail with the error message Error executing statement:
- The query cache feature must be enabled in your session (this is enabled by default)
- You execute a select statement using the ODBC Driver with SQLPrepare and SQLExecute
- There are no parameters given in the query
- The select statements creates a large resultset which is from the query cache.Y
Workaround
Changing any of the above conditions will not cause the error to occur. Several workarounds include:
- Use the Exasol ODBC driver 7.1.16 driver
- Disable query cache for the session (this may have a performance impact)
- Use SQLExecDirect instaed of SQLPrepare and SQLExecute
Fix
In the above scenario, the ODBC function works as expected