From 7d4e660f91101c819e195e4999f93d4efb7d3d92 Mon Sep 17 00:00:00 2001 From: Sergio Oller Date: Tue, 2 Jul 2024 06:25:58 +0200 Subject: [PATCH] oracle: do not query for compression if unsupported compression and compress_for are not supported on older oracle versions so do not query them Fixes: #11557 --- lib/sqlalchemy/dialects/oracle/base.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/sqlalchemy/dialects/oracle/base.py b/lib/sqlalchemy/dialects/oracle/base.py index 4f180cbd9e..e37f2f5399 100644 --- a/lib/sqlalchemy/dialects/oracle/base.py +++ b/lib/sqlalchemy/dialects/oracle/base.py @@ -2051,8 +2051,16 @@ class OracleDialect(default.DefaultDialect): ): query = select( dictionary.all_tables.c.table_name, - dictionary.all_tables.c.compression, - dictionary.all_tables.c.compress_for, + ( + dictionary.all_tables.c.compression + if self._supports_table_compression + else sql.literal_column("NULL").label("compression") + ), + ( + dictionary.all_tables.c.compress_for + if self._supports_table_compress_for + else sql.literal_column("NULL").label("compress_for") + ), ).where(dictionary.all_tables.c.owner == owner) if has_filter_names: query = query.where( -- 2.47.2