Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions aws_advanced_python_wrapper/database_dialect.py
Original file line number Diff line number Diff line change
Expand Up @@ -380,8 +380,8 @@ def is_blue_green_status_available(self, conn: Connection) -> bool:


class RdsPgDialect(PgDatabaseDialect, BlueGreenDialect):
_EXTENSIONS_QUERY = ("SELECT (setting LIKE '%rds_tools%') AS rds_tools, "
"(setting LIKE '%aurora_stat_utils%') AS aurora_stat_utils "
_EXTENSIONS_QUERY = ("SELECT (setting OPERATOR(pg_catalog.~~) '%rds_tools%') AS rds_tools, "
"(setting OPERATOR(pg_catalog.~~) '%aurora_stat_utils%') AS aurora_stat_utils "
"FROM pg_catalog.pg_settings "
"WHERE name OPERATOR(pg_catalog.=) 'rds.extensions'")
_DIALECT_UPDATE_CANDIDATES = (DialectCode.AURORA_PG, DialectCode.GLOBAL_AURORA_PG, DialectCode.MULTI_AZ_CLUSTER_PG)
Expand All @@ -391,7 +391,7 @@ class RdsPgDialect(PgDatabaseDialect, BlueGreenDialect):
"WHERE id OPERATOR(pg_catalog.=) rds_tools.dbi_resource_id()")
_BG_STATUS_QUERY = (f"SELECT version, endpoint, port, role, status "
f"FROM rds_tools.show_topology('aws_advanced_python_wrapper-{DriverInfo.DRIVER_VERSION}')")
_BG_STATUS_EXISTS_QUERY = "SELECT 'rds_tools.show_topology'::regproc"
_BG_STATUS_EXISTS_QUERY = "SELECT 'rds_tools.show_topology'::pg_catalog.regproc"

@property
def host_id_query(self) -> str:
Expand Down Expand Up @@ -497,7 +497,7 @@ def is_blue_green_status_available(self, conn: Connection) -> bool:
class AuroraPgDialect(PgDatabaseDialect, TopologyAwareDatabaseDialect, AuroraLimitlessDialect, BlueGreenDialect):
_DIALECT_UPDATE_CANDIDATES: Tuple[DialectCode, ...] = (DialectCode.GLOBAL_AURORA_PG, DialectCode.MULTI_AZ_CLUSTER_PG)

_AURORA_UTILS_EXIST_QUERY = "SELECT (setting LIKE '%aurora_stat_utils%') AS aurora_stat_utils " \
_AURORA_UTILS_EXIST_QUERY = "SELECT (setting OPERATOR(pg_catalog.~~) '%aurora_stat_utils%') AS aurora_stat_utils " \
"FROM pg_catalog.pg_settings WHERE name OPERATOR(pg_catalog.=) 'rds.extensions'"

_HAS_TOPOLOGY_QUERY = "SELECT 1 FROM pg_catalog.aurora_replica_status() LIMIT 1"
Expand All @@ -515,7 +515,7 @@ class AuroraPgDialect(PgDatabaseDialect, TopologyAwareDatabaseDialect, AuroraLim

_BG_STATUS_QUERY = (f"SELECT version, endpoint, port, role, status "
f"FROM pg_catalog.get_blue_green_fast_switchover_metadata('aws_advanced_python_wrapper-{DriverInfo.DRIVER_VERSION}')")
_BG_STATUS_EXISTS_QUERY = "SELECT 'pg_catalog.get_blue_green_fast_switchover_metadata'::regproc"
_BG_STATUS_EXISTS_QUERY = "SELECT 'pg_catalog.get_blue_green_fast_switchover_metadata'::pg_catalog.regproc"
_WRITER_HOST_QUERY = \
("SELECT SERVER_ID FROM pg_catalog.aurora_replica_status() "
"WHERE SESSION_ID OPERATOR(pg_catalog.=) 'MASTER_SESSION_ID' "
Expand Down Expand Up @@ -628,15 +628,15 @@ def get_host_list_provider_supplier(self, plugin_service: PluginService) -> Call


class GlobalAuroraPgDialect(AuroraPgDialect, GlobalAuroraTopologyDialect):
_GLOBAL_STATUS_TABLE_EXISTS_QUERY = "select 'pg_catalog.aurora_global_db_status'::regproc"
_GLOBAL_INSTANCE_STATUS_EXISTS_QUERY = "select 'pg_catalog.aurora_global_db_instance_status'::regproc"
_GLOBAL_STATUS_TABLE_EXISTS_QUERY = "SELECT 'pg_catalog.aurora_global_db_status'::pg_catalog.regproc"
_GLOBAL_INSTANCE_STATUS_EXISTS_QUERY = "SELECT 'pg_catalog.aurora_global_db_instance_status'::pg_catalog.regproc"
_TOPOLOGY_QUERY = \
("SELECT SERVER_ID, CASE WHEN SESSION_ID = 'MASTER_SESSION_ID' THEN TRUE ELSE FALSE END, "
("SELECT SERVER_ID, CASE WHEN SESSION_ID OPERATOR(pg_catalog.=) 'MASTER_SESSION_ID' THEN TRUE ELSE FALSE END, "
"VISIBILITY_LAG_IN_MSEC, AWS_REGION "
"FROM pg_catalog.aurora_global_db_instance_status()")
_REGION_COUNT_QUERY = "SELECT count(1) FROM pg_catalog.aurora_global_db_status()"
_REGION_COUNT_QUERY = "SELECT pg_catalog.count(1) FROM pg_catalog.aurora_global_db_status()"
_REGION_BY_INSTANCE_ID_QUERY = \
"SELECT AWS_REGION FROM pg_catalog.aurora_global_db_instance_status() WHERE SERVER_ID = %s"
"SELECT AWS_REGION FROM pg_catalog.aurora_global_db_instance_status() WHERE SERVER_ID OPERATOR(pg_catalog.=) %s"

@property
def dialect_update_candidates(self) -> Optional[Tuple[DialectCode, ...]]:
Expand Down