Use schema qualification while accessing the catalog objects.

refs #3976
This commit is contained in:
Rahul Shirsat
2021-03-12 11:17:25 +05:30
committed by Akshay Joshi
parent d6ee715d83
commit 9d8360641f
122 changed files with 324 additions and 314 deletions

View File

@@ -4,7 +4,7 @@ SELECT
nspname,
proargtypes
FROM
pg_catalog.pg_proc p JOIN pg_namespace n ON n.oid=p.pronamespace
pg_catalog.pg_proc p JOIN pg_catalog.pg_namespace n ON n.oid=p.pronamespace
WHERE
proargtypes[0] = (SELECT t.oid FROM pg_catalog.pg_type t WHERE pg_catalog.format_type(t.oid, NULL) = {{srctyp|qtLiteral}})
AND prorettype = (SELECT t.oid FROM pg_catalog.pg_type t WHERE pg_catalog.format_type(t.oid, NULL) = {{trgtyp|qtLiteral}})

View File

@@ -3,8 +3,8 @@
SELECT
ca.oid
FROM pg_catalog.pg_cast ca
WHERE ca.castsource = (SELECT t.oid FROM pg_type t WHERE format_type(t.oid, NULL) = {{srctyp|qtLiteral}})
AND ca.casttarget = (SELECT t.oid FROM pg_type t WHERE format_type(t.oid, NULL) = {{trgtyp|qtLiteral}})
WHERE ca.castsource = (SELECT t.oid FROM pg_catalog.pg_type t WHERE pg_catalog.format_type(t.oid, NULL) = {{srctyp|qtLiteral}})
AND ca.casttarget = (SELECT t.oid FROM pg_catalog.pg_type t WHERE pg_catalog.format_type(t.oid, NULL) = {{trgtyp|qtLiteral}})
{% if datlastsysoid %}
AND ca.oid > {{datlastsysoid}}::OID
{% endif %}

View File

@@ -167,11 +167,12 @@ def create_cast(server, source_type, target_type):
# Get 'oid' from newly created cast
pg_cursor.execute(
"SELECT ca.oid FROM pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_type t "
"SELECT ca.oid FROM pg_catalog.pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE format_type(t.oid, NULL)='%s') "
"AND ca.casttarget = (SELECT t.oid FROM pg_type t WHERE "
"format_type(t.oid, NULL) = '%s')" % (source_type, target_type))
"AND ca.casttarget = (SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE pg_catalog.format_type(t.oid, NULL) = '%s')" %
(source_type, target_type))
oid = pg_cursor.fetchone()
cast_id = ''
if oid:
@@ -187,11 +188,12 @@ def verify_cast(connection, source_type, target_type):
try:
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT * FROM pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_type t "
"SELECT * FROM pg_catalog.pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE format_type(t.oid, NULL)='%s') "
"AND ca.casttarget = (SELECT t.oid FROM pg_type t WHERE "
"format_type(t.oid, NULL) = '%s')" % (source_type, target_type))
"AND ca.casttarget = (SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE pg_catalog.format_type(t.oid, NULL) = '%s')" %
(source_type, target_type))
casts = pg_cursor.fetchall()
connection.close()
if len(casts) > 0:
@@ -208,11 +210,12 @@ def drop_cast(connection, source_type, target_type):
try:
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT * FROM pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_type t "
"SELECT * FROM pg_catalog.pg_cast ca WHERE ca.castsource = "
"(SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE format_type(t.oid, NULL)='%s') "
"AND ca.casttarget = (SELECT t.oid FROM pg_type t WHERE "
"format_type(t.oid, NULL) = '%s')" % (source_type, target_type))
"AND ca.casttarget = (SELECT t.oid FROM pg_catalog.pg_type t "
"WHERE pg_catalog.format_type(t.oid, NULL) = '%s')" %
(source_type, target_type))
if pg_cursor.fetchall():
pg_cursor.execute(
"DROP CAST (%s AS %s) CASCADE" % (source_type, target_type))

View File

@@ -55,7 +55,7 @@ def create_event_trigger(server, db_name, schema_name, func_name,
connection.commit()
# Get 'oid' from newly created event trigger
pg_cursor.execute(
"SELECT oid FROM pg_event_trigger WHERE evtname = '%s'"
"SELECT oid FROM pg_catalog.pg_event_trigger WHERE evtname = '%s'"
% trigger_name)
oid = pg_cursor.fetchone()
trigger_id = ''
@@ -88,7 +88,7 @@ def verify_event_trigger(server, db_name, trigger_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_event_trigger WHERE evtname = '%s'"
"SELECT oid FROM pg_catalog.pg_event_trigger WHERE evtname = '%s'"
% trigger_name)
event_trigger = pg_cursor.fetchone()
connection.close()
@@ -116,7 +116,7 @@ def verify_event_trigger_node(self):
"evtevent, "
"(select rolname from pg_authid where oid "
"= pl.evtowner) as evtowner,"
" evtname from pg_event_trigger pl "
" evtname from pg_catalog.pg_event_trigger pl "
"WHERE evtname = '%s'" % self.test_data['name'])
event_trigger = pg_cursor.fetchone()

View File

@@ -53,9 +53,8 @@ def create_extension(server, db_name, extension_name, schema_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created extension
pg_cursor.execute(
"SELECT oid FROM pg_extension WHERE extname = '%s'" %
extension_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_extension "
"WHERE extname = '%s'" % extension_name)
oid = pg_cursor.fetchone()
extension_id = ''
if oid:
@@ -87,8 +86,8 @@ def verify_extension(server, db_name, extension_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"select * from pg_extension where extname='%s'" % extension_name)
pg_cursor.execute("select * from pg_catalog.pg_extension "
"where extname='%s'" % extension_name)
extension = pg_cursor.fetchone()
connection.close()
return extension
@@ -116,7 +115,7 @@ def drop_extension(server, db_name, extension_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT * FROM pg_extension WHERE extname='%s'"
"SELECT * FROM pg_catalog.pg_extension WHERE extname='%s'"
% extension_name)
if pg_cursor.fetchall():
pg_cursor.execute(

View File

@@ -86,7 +86,7 @@ def create_fsrv(server, db_name, fsrv_name, fdw_name):
# Get 'oid' from newly created foreign server
pg_cursor.execute(
"SELECT oid FROM pg_foreign_server WHERE srvname = '%s'"
"SELECT oid FROM pg_catalog.pg_foreign_server WHERE srvname = '%s'"
% fsrv_name)
oid = pg_cursor.fetchone()
fsrv_id = ''
@@ -113,7 +113,7 @@ def verify_fsrv(server, db_name, fsrv_name):
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_foreign_server WHERE srvname = '%s'"
"SELECT oid FROM pg_catalog.pg_foreign_server WHERE srvname = '%s'"
% fsrv_name)
fsrvs = pg_cursor.fetchall()
connection.close()

View File

@@ -71,8 +71,8 @@ def create_user_mapping(server, db_name, fsrv_name):
connection.commit()
# Get 'oid' from newly created user mapping
pg_cursor.execute(
"select umid from pg_user_mappings where srvname = '%s' order by"
" umid asc limit 1" % fsrv_name)
"select umid from pg_catalog.pg_user_mappings where "
"srvname = '%s' order by umid asc limit 1" % fsrv_name)
oid = pg_cursor.fetchone()
um_id = ''
if oid:
@@ -104,8 +104,8 @@ def verify_user_mapping(server, db_name, fsrv_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"select umid from pg_user_mappings where srvname = '%s' order by"
" umid asc limit 1" % fsrv_name)
"select umid from pg_catalog.pg_user_mappings "
"where srvname = '%s' order by umid asc limit 1" % fsrv_name)
user_mapping = pg_cursor.fetchone()
connection.close()
return user_mapping

View File

@@ -74,7 +74,8 @@ def create_fdw(server, db_name, fdw_name):
connection.commit()
# Get 'oid' from newly created foreign data wrapper
pg_cursor.execute(
"SELECT oid FROM pg_foreign_data_wrapper WHERE fdwname = '%s'"
"SELECT oid FROM pg_catalog.pg_foreign_data_wrapper "
"WHERE fdwname = '%s'"
% fdw_name)
oid = pg_cursor.fetchone()
fdw_id = ''
@@ -107,7 +108,8 @@ def verify_fdw(server, db_name, fdw_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_foreign_data_wrapper WHERE fdwname = '%s'"
"SELECT oid FROM pg_catalog.pg_foreign_data_wrapper "
"WHERE fdwname = '%s'"
% fdw_name)
fdw = pg_cursor.fetchone()
connection.close()

View File

@@ -46,8 +46,8 @@ def create_language(server, db_name, lang_name):
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created language
pg_cursor.execute("SELECT oid from pg_language where lanname='%s'" %
lang_name)
pg_cursor.execute("SELECT oid from pg_catalog.pg_language where "
"lanname='%s'" % lang_name)
language = pg_cursor.fetchone()
language_id = language[0]
connection.close()
@@ -68,19 +68,19 @@ def verify_language(self):
self.server['port'],
self.server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT * from pg_language where lanname='%s'" %
self.data["name"])
pg_cursor.execute("SELECT * from pg_catalog.pg_language where "
"lanname='%s'" % self.data["name"])
pg_cursor.execute("select pl.lanname, "
"(select rolname from pg_authid where oid "
"= pl.lanowner) as lanowner, "
"pl.lanpltrusted, "
"( select prosrc from pg_proc where "
"( select prosrc from pg_catalog.pg_proc where "
"oid = pl.lanplcallfoid) as lanplcallfoid, "
"( select prosrc from pg_proc where oid = "
"pl.laninline) as laninline, "
"( select prosrc from pg_proc where oid = "
"pl.lanvalidator) as lanvalidator "
"from pg_language pl where lanname='%s'" %
"( select prosrc from pg_catalog.pg_proc "
"where oid = pl.laninline) as laninline, "
"( select prosrc from pg_catalog.pg_proc "
"where oid = pl.lanvalidator) as lanvalidator "
"from pg_catalog.pg_language pl where lanname='%s'" %
self.data["name"])
language = pg_cursor.fetchall()
expected_output = utils.create_expected_output(
@@ -113,13 +113,13 @@ def delete_language(server, db_name, lang_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT * from pg_language where lanname='%s'" %
lang_name)
pg_cursor.execute("SELECT * from pg_catalog.pg_language where "
"lanname='%s'" % lang_name)
languages = pg_cursor.fetchall()
language_count = len(languages)
if language_count:
pg_cursor.execute(
"DELETE FROM pg_language where lanname='%s'" %
"DELETE FROM pg_catalog.pg_language where lanname='%s'" %
lang_name)
connection.commit()
connection.close()

View File

@@ -67,9 +67,8 @@ def create_publication(server, db_name, publication_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get role oid of newly added publication
pg_cursor.execute("select oid from pg_publication pub where "
"pub.pubname='%s'" %
publication_name)
pg_cursor.execute("select oid from pg_catalog.pg_publication pub "
"where pub.pubname='%s'" % publication_name)
publication = pg_cursor.fetchone()
publication_id = ''
if publication:
@@ -101,7 +100,7 @@ def verify_publication(server, db_name, publication_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_publication pub "
pg_cursor.execute("select * from pg_catalog.pg_publication pub "
"where pub.pubname='%s'" %
publication_name)
publication = pg_cursor.fetchone()
@@ -134,7 +133,7 @@ def delete_publication(server, db_name, publication_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_publication pub where "
pg_cursor.execute("select * from pg_catalog.pg_publication pub where "
"pub.pubname='%s'" %
publication_name)
publication_count = pg_cursor.fetchone()

View File

@@ -13,7 +13,7 @@ WHERE
-- On EnterpriseDB - ignore some objects in the catalog, whose name starts
-- with _*, dual and type_object_source.
SELECT 'sys' ~ (
SELECT nsp.nspname FROM pg_namespace nsp
SELECT nsp.nspname FROM pg_catalog.pg_namespace nsp
WHERE nsp.oid = {{scid}}::oid
) AND (
c.relname NOT LIKE '\\_%' AND c.relname = 'dual' AND

View File

@@ -37,7 +37,8 @@ def create_collation(server, schema_name, coll_name, db_name):
# Get 'oid' from newly created database
pg_cursor.execute("SELECT coll.oid, coll.collname FROM"
" pg_collation coll WHERE coll.collname='%s'" %
" pg_catalog.pg_collation coll WHERE "
"coll.collname='%s'" %
coll_name)
collation = pg_cursor.fetchone()
connection.close()
@@ -58,7 +59,8 @@ def verify_collation(server, db_name, coll_name):
pg_cursor = connection.cursor()
# Get 'oid' from newly created database
pg_cursor.execute("SELECT coll.oid, coll.collname FROM"
" pg_collation coll WHERE coll.collname='%s'" %
" pg_catalog.pg_collation coll "
"WHERE coll.collname='%s'" %
coll_name)
collation = pg_cursor.fetchone()
connection.close()

View File

@@ -536,9 +536,9 @@ It may have been removed by another user or moved to another schema.
"""
condition = """typisdefined AND typtype IN ('b', 'c', 'd', 'e', 'r')
AND NOT EXISTS (SELECT 1 FROM pg_class WHERE relnamespace=typnamespace
AND relname = typname AND relkind != 'c') AND
(typname NOT LIKE '_%' OR NOT EXISTS (SELECT 1 FROM pg_class WHERE
AND NOT EXISTS (SELECT 1 FROM pg_catalog.pg_class
WHERE relnamespace=typnamespace AND relname = typname AND relkind != 'c') AND
(typname NOT LIKE '_%' OR NOT EXISTS (SELECT 1 FROM pg_catalog.pg_class WHERE
relnamespace=typnamespace AND relname = substring(typname FROM 2)::name
AND relkind != 'c'))"""

View File

@@ -57,7 +57,7 @@ def create_domain_constraints(server, db_name, schema_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created domain
pg_cursor.execute("SELECT oid FROM pg_constraint WHERE"
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint WHERE"
" conname='%s'" %
domain_constraint_name)
oid = pg_cursor.fetchone()
@@ -88,7 +88,7 @@ def verify_domain_constraint(server, db_name, domain_constraint_name):
server['host'], server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT oid FROM pg_constraint WHERE"
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint WHERE"
" conname='%s'" %
domain_constraint_name)
domain_con_id = pg_cursor.fetchone()
@@ -132,8 +132,8 @@ def create_domain(server, db_name, schema_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created domain
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_type d WHERE"
" d.typname='%s' AND d.typnamespace='%s'" %
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_catalog.pg_type d "
"WHERE d.typname='%s' AND d.typnamespace='%s'" %
(domain_name, schema_id))
domains = pg_cursor.fetchone()
connection.close()
@@ -161,7 +161,7 @@ def verify_domain(server, db_name, schema_id, domain_name):
server['host'],
server['port'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_type d WHERE"
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_catalog.pg_type d WHERE"
" d.typname='%s' AND d.typnamespace='%s'" %
(domain_name, schema_id))
domains = pg_cursor.fetchone()
@@ -207,7 +207,7 @@ def create_domain_constraints_invalid(server, db_name, schema_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created domain
pg_cursor.execute("SELECT oid FROM pg_constraint WHERE"
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint WHERE"
" conname='%s'" %
domain_constraint_name)
oid = pg_cursor.fetchone()

View File

@@ -53,8 +53,8 @@ def create_domain(server, db_name, schema_name, schema_id, domain_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created domain
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_type d WHERE"
" d.typname='%s' AND d.typnamespace='%s'" %
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_catalog.pg_type d "
"WHERE d.typname='%s' AND d.typnamespace='%s'" %
(domain_name, schema_id))
domains = pg_cursor.fetchone()
connection.close()
@@ -82,7 +82,7 @@ def verify_domain(server, db_name, schema_id, domain_name):
server['host'],
server['port'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_type d WHERE"
pg_cursor.execute("SELECT d.oid, d.typname FROM pg_catalog.pg_type d WHERE"
" d.typname='%s' AND d.typnamespace='%s'" %
(domain_name, schema_id))
domains = pg_cursor.fetchone()

View File

@@ -1,8 +1,8 @@
SELECT
attname, attndims, atttypmod, attoptions, attfdwoptions, pg_catalog.format_type(t.oid,NULL) AS datatype,
attnotnull, attstattarget, attnum, format_type(t.oid, att.atttypmod) AS fulltype,
attnotnull, attstattarget, attnum, pg_catalog.format_type(t.oid, att.atttypmod) AS fulltype,
CASE WHEN length(cn.nspname::text) > 0 AND length(cl.collname::text) > 0 THEN
concat(cn.nspname, '."', cl.collname,'"') ELSE '' END AS collname,
pg_catalog.concat(cn.nspname, '."', cl.collname,'"') ELSE '' END AS collname,
(SELECT COUNT(1) from pg_catalog.pg_type t2 WHERE t2.typname=t.typname) > 1 AS isdup,
pg_catalog.pg_get_expr(def.adbin, def.adrelid) AS typdefault
FROM

View File

@@ -20,7 +20,7 @@ SELECT INH.inheritedfrom, INH.inheritedid, att.attoptions, attfdwoptions,
pg_catalog.concat(cn.nspname, '."', cl.collname,'"')
ELSE '' END AS collname,
pg_catalog.pg_get_expr(def.adbin, def.adrelid) AS typdefault,
(SELECT COUNT(1) from pg_type t2 WHERE t2.typname=t.typname) > 1 AS isdup
(SELECT COUNT(1) from pg_catalog.pg_type t2 WHERE t2.typname=t.typname) > 1 AS isdup
FROM
pg_catalog.pg_attribute att
LEFT JOIN

View File

@@ -1,7 +1,7 @@
{% if attrelid %}
SELECT
a.attname, pg_catalog.format_type(a.atttypid, NULL) AS datatype,
quote_ident(n.nspname)||'.'||quote_ident(c.relname) as inheritedfrom,
pg_catalog.quote_ident(n.nspname)||'.'||quote_ident(c.relname) as inheritedfrom,
c.oid as inheritedid
FROM
pg_catalog.pg_class c

View File

@@ -1,7 +1,7 @@
{% import 'foreign_tables/sql/macros/db_catalogs.macro' as CATALOG %}
{% if attrelid %}
SELECT
pg_catalog.array_agg(quote_ident(n.nspname) || '.' || quote_ident(c.relname)) as inherits
pg_catalog.array_agg(quote_ident(n.nspname) || '.' || pg_catalog.quote_ident(c.relname)) as inherits
FROM
pg_catalog.pg_class c, pg_catalog.pg_namespace n
WHERE
@@ -10,7 +10,7 @@ WHERE
{% else %}
SELECT
c.oid AS value, quote_ident(n.nspname) || '.' || quote_ident(c.relname) as label
c.oid AS value, pg_catalog.quote_ident(n.nspname) || '.' || pg_catalog.quote_ident(c.relname) as label
FROM
pg_catalog.pg_class c, pg_catalog.pg_namespace n
WHERE

View File

@@ -2,14 +2,14 @@ SELECT
c.oid, c.relname AS name, c.relacl, pg_catalog.pg_get_userbyid(relowner) AS owner,
ftoptions, srvname AS ftsrvname, description, nspname AS basensp,
(SELECT
array_agg(provider || '=' || label)
pg_catalog.array_agg(provider || '=' || label)
FROM
pg_catalog.pg_seclabel sl1
WHERE
sl1.objoid=c.oid) AS seclabels
{% if foid %},
(SELECT
array_agg(i.inhparent) FROM pg_inherits i
pg_catalog.array_agg(i.inhparent) FROM pg_catalog.pg_inherits i
WHERE
i.inhrelid = {{foid}}::oid GROUP BY i.inhrelid) AS inherits
{% endif %}

View File

@@ -3,7 +3,7 @@ SELECT --nspname, collname,
pg_catalog.concat(nspname, '."', collname,'"')
ELSE '' END AS copy_collation
FROM
pg_catalog.pg_collation c, pg_namespace n
pg_catalog.pg_collation c, pg_catalog.pg_namespace n
WHERE
c.collnamespace=n.oid
ORDER BY

View File

@@ -96,8 +96,9 @@ def create_foreign_table(server, db_name, schema_name, fsrv_name,
# Get 'oid' from newly created foreign table
pg_cursor.execute(
"SELECT ftrelid FROM pg_foreign_table WHERE ftserver = "
"(SELECT oid FROM pg_foreign_server WHERE srvname = '%s') "
"SELECT ftrelid FROM pg_catalog.pg_foreign_table WHERE ftserver = "
"(SELECT oid FROM pg_catalog.pg_foreign_server "
"WHERE srvname = '%s') "
"ORDER BY ftrelid ASC limit 1" % fsrv_name)
oid = pg_cursor.fetchone()
@@ -122,8 +123,9 @@ def verify_foreign_table(server, db_name, fsrv_name):
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT ftrelid FROM pg_foreign_table WHERE ftserver = "
"(SELECT oid FROM pg_foreign_server WHERE srvname = '%s') "
"SELECT ftrelid FROM pg_catalog.pg_foreign_table WHERE ftserver = "
"(SELECT oid FROM pg_catalog.pg_foreign_server "
"WHERE srvname = '%s') "
"ORDER BY ftrelid ASC limit 1" % fsrv_name)
fts = pg_cursor.fetchone()
connection.close()

View File

@@ -7,7 +7,7 @@ SELECT
cfg.cfgnamespace as schema,
CASE WHEN (np.nspname not in ('public', 'pg_catalog') AND length(parser.prsname::text) > 0
AND parser.prsname != 'default') THEN
pg_catalog.concat(quote_ident(np.nspname), '.', quote_ident(parser.prsname))
pg_catalog.concat(pg_catalog.quote_ident(np.nspname), '.', pg_catalog.quote_ident(parser.prsname))
ELSE parser.prsname END AS prsname,
description
FROM

View File

@@ -5,18 +5,18 @@ SELECT
FROM
(
SELECT
E'-- Text Search CONFIGURATION: ' || quote_ident(nspname) || E'.'
E'-- Text Search CONFIGURATION: ' || pg_catalog.quote_ident(nspname) || E'.'
|| (cfg.cfgname) ||
E'\n\n-- DROP TEXT SEARCH CONFIGURATION ' || quote_ident(nspname) ||
E'.' || quote_ident(cfg.cfgname) ||
E'\n\nCREATE TEXT SEARCH CONFIGURATION ' || quote_ident(nspname) ||
E'.' || quote_ident(cfg.cfgname) || E' (\n' ||
E'\n\n-- DROP TEXT SEARCH CONFIGURATION ' || pg_catalog.quote_ident(nspname) ||
E'.' || pg_catalog.quote_ident(cfg.cfgname) ||
E'\n\nCREATE TEXT SEARCH CONFIGURATION ' || pg_catalog.quote_ident(nspname) ||
E'.' || pg_catalog.quote_ident(cfg.cfgname) || E' (\n' ||
E'\tPARSER = ' || parsername ||
E'\n);' ||
CASE
WHEN description IS NOT NULL THEN
E'\n\nCOMMENT ON TEXT SEARCH CONFIGURATION ' ||
quote_ident(nspname) || E'.' || quote_ident(cfg.cfgname) ||
pg_catalog.quote_ident(nspname) || E'.' || pg_catalog.quote_ident(cfg.cfgname) ||
E' IS ' || pg_catalog.quote_literal(description) || E';'
ELSE ''
END || E'\n' ||
@@ -24,8 +24,8 @@ FROM
pg_catalog.array_to_string(
array(
SELECT
'ALTER TEXT SEARCH CONFIGURATION ' || quote_ident(b.nspname) ||
E'.' || quote_ident(cfg.cfgname) || ' ADD MAPPING FOR ' ||
'ALTER TEXT SEARCH CONFIGURATION ' || pg_catalog.quote_ident(b.nspname) ||
E'.' || pg_catalog.quote_ident(cfg.cfgname) || ' ADD MAPPING FOR ' ||
t.alias || ' WITH ' ||
pg_catalog.array_to_string(array_agg(
CASE WHEN (pg_ns.nspname != 'pg_catalog') THEN

View File

@@ -11,7 +11,7 @@ SELECT
) AS token,
pg_catalog.array_agg(
CASE WHEN (pg_ns.nspname != 'pg_catalog') THEN
CONCAT(pg_ns.nspname, '.', pg_ts_dict.dictname)
pg_catalog.CONCAT(pg_ns.nspname, '.', pg_ts_dict.dictname)
ELSE
pg_catalog.pg_ts_dict.dictname END) AS dictname
FROM

View File

@@ -1,5 +1,5 @@
SELECT
format_type(oid, NULL) AS out_arg_type
pg_catalog.format_type(oid, NULL) AS out_arg_type
FROM
pg_catalog.pg_type
WHERE

View File

@@ -1,5 +1,5 @@
SELECT
format_type(oid, NULL) AS out_arg_type
pg_catalog.format_type(oid, NULL) AS out_arg_type
FROM
pg_catalog.pg_type
WHERE

View File

@@ -26,7 +26,7 @@ FROM
(d).is_grantable AS is_grantable,
(d).privilege_type AS privilege_type
FROM
(SELECT pg_catalog.aclexplode(db.proacl) AS d FROM pg_proc db
(SELECT pg_catalog.aclexplode(db.proacl) AS d FROM pg_catalog.pg_proc db
WHERE db.oid = {{fnid}}::OID) a ORDER BY privilege_type
) d
) d

View File

@@ -26,7 +26,7 @@ FROM
(d).is_grantable AS is_grantable,
(d).privilege_type AS privilege_type
FROM
(SELECT pg_catalog.aclexplode(db.proacl) AS d FROM pg_proc db
(SELECT pg_catalog.aclexplode(db.proacl) AS d FROM pg_catalog.pg_proc db
WHERE db.oid = {{fnid}}::OID) a ORDER BY privilege_type
) d
) d

View File

@@ -1,5 +1,5 @@
SELECT
format_type(oid, NULL) AS out_arg_type
pg_catalog.format_type(oid, NULL) AS out_arg_type
FROM
pg_catalog.pg_type
WHERE

View File

@@ -43,7 +43,7 @@ def create_trigger_function(server, db_name, schema_name, func_name,
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -72,7 +72,7 @@ def create_trigger_function_with_trigger(server, db_name, schema_name,
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -91,7 +91,7 @@ def verify_trigger_function(server, db_name, func_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -133,7 +133,7 @@ def create_procedure(server, db_name, schema_name, func_name, s_type,
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -166,7 +166,7 @@ def create_function(server, db_name, schema_name, func_name, args=None,
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -194,7 +194,7 @@ def create_support_internal_function(server, db_name, schema_name, func_name):
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -213,7 +213,7 @@ def verify_procedure(server, db_name, proc_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.g_proc pro WHERE pro.proname='%s'" %
proc_name)
procs = pg_cursor.fetchone()
connection.close()

View File

@@ -4,7 +4,7 @@ SELECT pg_proc.oid,
proallargtypes,
proargnames AS argnames,
pronargdefaults,
oidvectortypes(proargtypes) AS proargtypenames,
pg_catalog.oidvectortypes(proargtypes) AS proargtypenames,
proargmodes,
proargnames,
pg_catalog.pg_get_expr(proargdefaults, 'pg_catalog.pg_class'::regclass) AS proargdefaultvals,

View File

@@ -80,7 +80,7 @@ END %s;""" % (self.schema_name, self.pkg_name, self.proc_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created package
pg_cursor.execute("SELECT oid FROM pg_namespace"
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_namespace"
" WHERE nspname='%s'" %
self.pkg_name)
self.package_id = pg_cursor.fetchone()[0]

View File

@@ -46,8 +46,8 @@ def create_package(server, db_name, schema_name, pkg_name, proc_name):
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created package
pg_cursor.execute("SELECT oid FROM pg_namespace WHERE nspname='%s'" %
pkg_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_namespace "
"WHERE nspname='%s'" % pkg_name)
package_id = pg_cursor.fetchone()[0]
connection.close()
return package_id
@@ -75,8 +75,8 @@ def verify_package(server, db_name, pkg_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT oid FROM pg_namespace WHERE nspname='%s'" %
pkg_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_namespace "
"WHERE nspname='%s'" % pkg_name)
package = pg_cursor.fetchone()
connection.close()
return package

View File

@@ -48,8 +48,8 @@ def create_sequences(server, db_name, schema_name, sequence_name,
pg_cursor.execute(query)
connection.commit()
# Get 'oid' from newly created sequence
pg_cursor.execute("select oid from pg_class where relname='%s'" %
sequence_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % sequence_name)
sequence = pg_cursor.fetchone()
sequence_id = ''
if sequence:
@@ -80,8 +80,8 @@ def verify_sequence(server, db_name, sequence_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_class where relname='%s'" %
sequence_name)
pg_cursor.execute("select * from pg_catalog.pg_class "
"where relname='%s'" % sequence_name)
sequence = pg_cursor.fetchone()
connection.close()
return sequence

View File

@@ -61,8 +61,8 @@ def create_compound_trigger(server, db_name, schema_name, table_name,
pg_cursor.execute(query)
connection.set_isolation_level(old_isolation_level)
connection.commit()
pg_cursor.execute("SELECT oid FROM pg_trigger where tgname='%s'" %
trigger_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_trigger "
"where tgname='%s'" % trigger_name)
trigger = pg_cursor.fetchone()
trigger_id = ''
if trigger:
@@ -106,8 +106,8 @@ def create_view(server, db_name, schema_name, sql_query, view_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created view
pg_cursor.execute("select oid from pg_class where relname='%s'" %
view_name)
pg_cursor.execute("select oid from pg_catalog.pg_class where "
"relname='%s'" % view_name)
view = pg_cursor.fetchone()
view_id = view[0]
connection.close()
@@ -137,8 +137,8 @@ def verify_compound_trigger(server, db_name, trigger_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT oid FROM pg_trigger where tgname='%s'" %
trigger_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_trigger "
"where tgname='%s'" % trigger_name)
trigger = pg_cursor.fetchone()
connection.close()
return trigger

View File

@@ -123,7 +123,7 @@ def create_check_constraint(server, db_name, schema_name, table_name,
connection.commit()
# Get oid of newly added check constraint
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s'" %
"SELECT oid FROM pg_catalog.pg_constraint where conname='%s'" %
check_constraint_name)
chk_constraint_record = pg_cursor.fetchone()
connection.close()
@@ -153,7 +153,7 @@ def verify_check_constraint(server, db_name, check_constraint_name):
server['port'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s'" %
"SELECT oid FROM pg_catalog.pg_constraint where conname='%s'" %
check_constraint_name)
chk_constraint_record = pg_cursor.fetchone()
connection.close()

View File

@@ -112,8 +112,8 @@ def create_exclusion_constraint(server, db_name, schema_name, table_name,
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get oid of newly added index constraint
pg_cursor.execute(
"SELECT conindid FROM pg_constraint where conname='%s'" % key_name)
pg_cursor.execute("SELECT conindid FROM pg_catalog.pg_constraint "
"where conname='%s'" % key_name)
index_constraint = pg_cursor.fetchone()
connection.close()
oid = index_constraint[0]
@@ -142,8 +142,8 @@ def verify_exclusion_constraint(server, db_name, index_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_class where relname='%s'" %
index_name)
pg_cursor.execute("select * from pg_catalog.pg_class "
"where relname='%s'" % index_name)
index_record = pg_cursor.fetchone()
connection.close()
return index_record

View File

@@ -133,9 +133,8 @@ def create_foreignkey(server, db_name, schema_name, local_table_name,
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get oid of newly added foreign key
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s_id_fkey'" %
local_table_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint "
"where conname='%s_id_fkey'" % local_table_name)
fk_record = pg_cursor.fetchone()
connection.close()
fk_id = fk_record[0]
@@ -168,8 +167,8 @@ def verify_foreignkey(server, db_name, local_table_name, fk_name=None):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s'" % conname)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint "
"where conname='%s'" % conname)
fk_record = pg_cursor.fetchone()
connection.close()
return fk_record

View File

@@ -120,8 +120,8 @@ def create_index_constraint(server, db_name, schema_name, table_name,
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get oid of newly added index constraint
pg_cursor.execute(
"SELECT conindid FROM pg_constraint where conname='%s'" % key_name)
pg_cursor.execute("SELECT conindid FROM pg_catalog.pg_constraint "
"where conname='%s'" % key_name)
index_constraint = pg_cursor.fetchone()
connection.close()
oid = index_constraint[0]
@@ -149,9 +149,8 @@ def verify_index_constraint(server, db_name, constraint_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s'" %
constraint_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_constraint "
"where conname='%s'" % constraint_name)
index_constraint = pg_cursor.fetchone()
connection.close()
return index_constraint

View File

@@ -59,7 +59,7 @@ def verify_constraint(server, db_name, constraint_name):
server['port'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"SELECT oid FROM pg_constraint where conname='%s'" %
"SELECT oid FROM pg_catalog.pg_constraint where conname='%s'" %
constraint_name)
chk_constraint_record = pg_cursor.fetchone()
connection.close()

View File

@@ -194,8 +194,8 @@ def create_index(server, db_name, schema_name, table_name, index_name,
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get oid of newly added index
pg_cursor.execute("select oid from pg_class where relname='%s'" %
index_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % index_name)
index_record = pg_cursor.fetchone()
index_oid = ''
if index_record:
@@ -227,8 +227,8 @@ def verify_index(server, db_name, index_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_class where relname='%s'" %
index_name)
pg_cursor.execute("select * from pg_catalog.pg_class "
"where relname='%s'" % index_name)
index_record = pg_cursor.fetchone()
connection.close()
return index_record

View File

@@ -52,8 +52,8 @@ def create_policy(server, db_name, schema_name, table_name, policy_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get role oid of newly added policy
pg_cursor.execute("select oid from pg_policy where polname='%s'" %
policy_name)
pg_cursor.execute("select oid from pg_catalog.pg_policy where "
"polname='%s'" % policy_name)
policy = pg_cursor.fetchone()
policy_id = ''
if policy:
@@ -85,8 +85,8 @@ def verify_policy(server, db_name, policy_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_policy where polname='%s'" %
policy_name)
pg_cursor.execute("select * from pg_catalog.pg_policy where "
"polname='%s'" % policy_name)
policy = pg_cursor.fetchone()
connection.close()
return policy
@@ -121,8 +121,8 @@ def delete_policy(server, db_name, policy_name, schema_name, table_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_policy where polname='%s'" %
policy_name)
pg_cursor.execute("select * from pg_catalog.pg_policy "
"where polname='%s'" % policy_name)
policy_count = pg_cursor.fetchone()
if policy_count:
old_isolation_level = connection.isolation_level

View File

@@ -52,8 +52,8 @@ def create_rule(server, db_name, schema_name, table_name, rule_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get role oid of newly added rule
pg_cursor.execute("select oid from pg_rewrite where rulename='%s'" %
rule_name)
pg_cursor.execute("select oid from pg_catalog.pg_rewrite where "
"rulename='%s'" % rule_name)
rule = pg_cursor.fetchone()
rule_id = ''
if rule:
@@ -85,8 +85,8 @@ def verify_rule(server, db_name, rule_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_rewrite where rulename='%s'" %
rule_name)
pg_cursor.execute("select * from pg_catalog.pg_rewrite where "
"rulename='%s'" % rule_name)
rule = pg_cursor.fetchone()
connection.close()
return rule

View File

@@ -6,7 +6,7 @@ SELECT att.attname as name, att.atttypid, att.attlen, att.attnum, att.attndims,
pg_catalog.format_type(ty.oid,att.atttypmod) AS displaytypname,
pg_catalog.format_type(ty.oid,att.atttypmod) AS cltype,
CASE WHEN ty.typelem > 0 THEN ty.typelem ELSE ty.oid END as elemoid,
(SELECT nspname FROM pg_namespace WHERE oid = ty.typnamespace) as typnspname,
(SELECT nspname FROM pg_catalog.pg_namespace WHERE oid = ty.typnamespace) as typnspname,
ty.typstorage AS defaultstorage,
description, pi.indkey,
(SELECT count(1) FROM pg_catalog.pg_type t2 WHERE t2.typname=ty.typname) > 1 AS isdup,

View File

@@ -28,7 +28,7 @@ FROM pg_catalog.pg_attribute att
JOIN pg_catalog.pg_namespace na ON na.oid=cl.relnamespace
LEFT OUTER JOIN pg_catalog.pg_type et ON et.oid=ty.typelem
LEFT OUTER JOIN pg_catalog.pg_attrdef def ON adrelid=att.attrelid AND adnum=att.attnum
LEFT OUTER JOIN pg_description des ON (des.objoid=att.attrelid AND des.objsubid=att.attnum AND des.classoid='pg_class'::regclass)
LEFT OUTER JOIN pg_catalog.pg_description des ON (des.objoid=att.attrelid AND des.objsubid=att.attnum AND des.classoid='pg_class'::regclass)
LEFT OUTER JOIN (pg_catalog.pg_depend JOIN pg_catalog.pg_class cs ON classid='pg_class'::regclass AND objid=cs.oid AND cs.relkind='S') ON refobjid=att.attrelid AND refobjsubid=att.attnum
LEFT OUTER JOIN pg_catalog.pg_namespace ns ON ns.oid=cs.relnamespace
LEFT OUTER JOIN pg_catalog.pg_index pi ON pi.indrelid=att.attrelid AND indisprimary

View File

@@ -13,7 +13,7 @@ SELECT att.attname as name, att.atttypid, att.attlen, att.attnum, att.attndims,
pg_catalog.concat(pg_catalog.quote_ident(nspc.nspname),'.',pg_catalog.quote_ident(coll.collname))
ELSE '' END AS collspcname,
EXISTS(SELECT 1 FROM pg_catalog.pg_constraint WHERE conrelid=att.attrelid AND contype='f' AND att.attnum=ANY(conkey)) As is_fk,
(SELECT array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=att.attrelid AND sl1.objsubid=att.attnum) AS seclabels,
(SELECT pg_catalog.array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=att.attrelid AND sl1.objsubid=att.attnum) AS seclabels,
(CASE WHEN (att.attnum < 1) THEN true ElSE false END) AS is_sys_column, tab.relname as relname,
(CASE WHEN tab.relkind = 'v' THEN true ELSE false END) AS is_view_only
FROM pg_catalog.pg_attribute att

View File

@@ -4,7 +4,7 @@ SELECT * FROM
,typlen, typtype, t.oid, nspname,
(SELECT COUNT(1) FROM pg_catalog.pg_type t2 WHERE t2.typname = t.typname) > 1 AS isdup
FROM pg_catalog.pg_type t
JOIN pg_namespace nsp ON typnamespace=nsp.oid
JOIN pg_catalog.pg_namespace nsp ON typnamespace=nsp.oid
WHERE (NOT (typname = 'unknown' AND nspname = 'pg_catalog'))
AND typisdefined AND typtype IN ('b', 'c', 'd', 'e', 'r')
AND NOT EXISTS (select 1 from pg_catalog.pg_class where relnamespace=typnamespace and relname = typname and relkind != 'c')

View File

@@ -3,7 +3,7 @@ SELECT cls.oid,
indnkeyatts as col_count,
amname,
CASE WHEN length(spcname::text) > 0 THEN spcname ELSE
(SELECT sp.spcname FROM pg_database dtb
(SELECT sp.spcname FROM pg_catalog.pg_database dtb
JOIN pg_catalog.pg_tablespace sp ON dtb.dattablespace=sp.oid
WHERE dtb.oid = {{ did }}::oid)
END as spcname,

View File

@@ -16,7 +16,7 @@ FROM pg_catalog.pg_index i
JOIN pg_catalog.pg_attribute a ON (a.attrelid = i.indexrelid AND attnum = {{loop.index}})
JOIN pg_catalog.pg_type ty ON ty.oid=a.atttypid
LEFT OUTER JOIN pg_catalog.pg_opclass o ON (o.oid = i.indclass[{{loop.index -1}}])
LEFT OUTER JOIN pg_catalog.pg_constraint c ON (c.conindid = i.indexrelid) LEFT OUTER JOIN pg_operator op ON (op.oid = c.conexclop[{{loop.index}}])
LEFT OUTER JOIN pg_catalog.pg_constraint c ON (c.conindid = i.indexrelid) LEFT OUTER JOIN pg_catalog.pg_operator op ON (op.oid = c.conexclop[{{loop.index}}])
LEFT OUTER JOIN pg_catalog.pg_collation coll ON a.attcollation=coll.oid
LEFT OUTER JOIN pg_catalog.pg_namespace nspc ON coll.collnamespace=nspc.oid
WHERE i.indexrelid = {{cid}}::oid

View File

@@ -32,7 +32,7 @@ class TestColumnForeignKeyGetConstraintCols(BaseTestGenerator):
cursor = connection.cursor()
cursor.execute("SELECT pg_class.oid as table_id, "
"pg_attribute.attnum as column_id "
"FROM pg_class join pg_attribute on "
"FROM pg_catalog.pg_class join pg_attribute on "
"attrelid=pg_class.oid "
"where pg_class.relname='test_table'"
" and pg_attribute.attname = 'some_column'")

View File

@@ -8,7 +8,7 @@ FROM (
pg_catalog.unnest(indkey) AS table_colnum,
pg_catalog.unnest(ARRAY(SELECT pg_catalog.generate_series(1, i.indnatts) AS n)) attnum
FROM
pg_index i
pg_catalog.pg_index i
WHERE i.indexrelid = {{cid}}::OID
) i JOIN pg_catalog.pg_attribute a
ON (a.attrelid = i.indrelid AND i.table_colnum = a.attnum)

View File

@@ -1,6 +1,6 @@
SELECT rel.oid, rel.relname AS name, rel.reltablespace AS spcoid,rel.relacl AS relacl_str,
(CASE WHEN length(spc.spcname::text) > 0 THEN spc.spcname ELSE
(SELECT sp.spcname FROM pg_database dtb
(SELECT sp.spcname FROM pg_catalog.pg_database dtb
JOIN pg_catalog.pg_tablespace sp ON dtb.dattablespace=sp.oid
WHERE dtb.oid = {{ did }}::oid)
END) as spcname,
@@ -14,8 +14,8 @@ SELECT rel.oid, rel.relname AS name, rel.reltablespace AS spcoid,rel.relacl AS r
WHERE tgrelid=rel.oid) AS isrepl,
(SELECT count(*) FROM pg_catalog.pg_trigger WHERE tgrelid=rel.oid AND tgisinternal = FALSE) AS triggercount,
(SELECT ARRAY(SELECT CASE WHEN (nspname NOT LIKE 'pg\_%') THEN
quote_ident(nspname)||'.'||quote_ident(c.relname)
ELSE quote_ident(c.relname) END AS inherited_tables
pg_catalog.quote_ident(nspname)||'.'||pg_catalog.quote_ident(c.relname)
ELSE pg_catalog.quote_ident(c.relname) END AS inherited_tables
FROM pg_catalog.pg_inherits i
JOIN pg_catalog.pg_class c ON c.oid = i.inhparent
JOIN pg_catalog.pg_namespace n ON n.oid=c.relnamespace
@@ -50,7 +50,7 @@ SELECT rel.oid, rel.relname AS name, rel.reltablespace AS spcoid,rel.relacl AS r
rel.reloptions AS reloptions, tst.reloptions AS toast_reloptions, rel.reloftype, typ.typname,
typ.typrelid AS typoid,
(CASE WHEN rel.reltoastrelid = 0 THEN false ELSE true END) AS hastoasttable,
(SELECT array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=rel.oid AND sl1.objsubid=0) AS seclabels,
(SELECT pg_catalog.array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=rel.oid AND sl1.objsubid=0) AS seclabels,
(CASE WHEN rel.oid <= {{ datlastsysoid}}::oid THEN true ElSE false END) AS is_sys_table,
-- Added for partition table
(CASE WHEN rel.relkind = 'p' THEN true ELSE false END) AS is_partitioned,

View File

@@ -51,7 +51,7 @@ SELECT rel.oid, rel.relname AS name, rel.reltablespace AS spcoid,rel.relacl AS r
CASE WHEN typ.typname IS NOT NULL THEN (select pg_catalog.quote_ident(nspname) FROM pg_catalog.pg_namespace WHERE oid = {{scid}}::oid )||'.'||pg_catalog.quote_ident(typ.typname) ELSE typ.typname END AS typname,
typ.typrelid AS typoid,rel.relrowsecurity as rlspolicy, rel.relforcerowsecurity as forcerlspolicy,
(CASE WHEN rel.reltoastrelid = 0 THEN false ELSE true END) AS hastoasttable,
(SELECT array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=rel.oid AND sl1.objsubid=0) AS seclabels,
(SELECT pg_catalog.array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=rel.oid AND sl1.objsubid=0) AS seclabels,
(CASE WHEN rel.oid <= {{ datlastsysoid}}::oid THEN true ElSE false END) AS is_sys_table
FROM pg_catalog.pg_class rel
LEFT OUTER JOIN pg_catalog.pg_tablespace spc on spc.oid=rel.reltablespace

View File

@@ -1,4 +1,4 @@
SELECT cl.oid as value, quote_ident(nspname)||'.'||quote_ident(relname) AS label
SELECT cl.oid as value, pg_catalog.quote_ident(nspname)||'.'||pg_catalog.quote_ident(relname) AS label
FROM pg_catalog.pg_namespace nsp, pg_class cl
WHERE relnamespace=nsp.oid AND relkind='r'
AND nsp.nspname NOT LIKE E'pg\_temp\_%'

View File

@@ -1,5 +1,5 @@
SELECT nsp.nspname AS schema ,rel.relname AS table
FROM pg_class rel
FROM pg_catalog.pg_class rel
JOIN pg_namespace nsp
ON rel.relnamespace = nsp.oid::oid
WHERE rel.oid = {{tid}}::oid
WHERE rel.oid = {{tid}}::oid

View File

@@ -1,7 +1,7 @@
SELECT t.oid,t.tgname AS name, t.xmin, t.tgenabled AS is_enable_trigger, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
COALESCE(substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE (PROCEDURE|FUNCTION)'),
substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
COALESCE(pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE (PROCEDURE|FUNCTION)'),
pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
-- We need to convert tgargs column bytea datatype to array datatype
(pg_catalog.string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
{% if datlastsysoid %}

View File

@@ -1,7 +1,7 @@
SELECT t.oid,t.tgname AS name, t.xmin, t.tgenabled AS is_enable_trigger, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
COALESCE(substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE PROCEDURE'),
substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
COALESCE(pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE PROCEDURE'),
pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
-- We need to convert tgargs column bytea datatype to array datatype
(pg_catalog.string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
{% if datlastsysoid %}

View File

@@ -1,7 +1,7 @@
SELECT t.oid,t.tgname AS name, t.xmin, t.tgenabled AS is_enable_trigger, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
COALESCE(substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE (PROCEDURE|FUNCTION)'),
substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
COALESCE(pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE (PROCEDURE|FUNCTION)'),
pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
-- We need to convert tgargs column bytea datatype to array datatype
(pg_catalog.string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
{% if datlastsysoid %}

View File

@@ -1,7 +1,7 @@
SELECT t.oid,t.tgname AS name, t.xmin, t.tgenabled AS is_enable_trigger, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
COALESCE(substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE (PROCEDURE|FUNCTION)'),
substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
-- We need to convert tgargs column bytea datatype to array datatype
(pg_catalog.string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
{% if datlastsysoid %}

View File

@@ -1,7 +1,7 @@
SELECT t.oid,t.tgname AS name, t.xmin, t.tgenabled AS is_enable_trigger, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
COALESCE(substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) EXECUTE PROCEDURE'),
substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
pg_catalog.substring(pg_catalog.pg_get_triggerdef(t.oid, true), 'WHEN (.*) \$trigger')) AS whenclause,
-- We need to convert tgargs column bytea datatype to array datatype
(pg_catalog.string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
{% if datlastsysoid %}

View File

@@ -28,7 +28,7 @@ class TestColumnAclSql(SQLTemplateTestBase):
def test_setup(self, connection, cursor):
cursor.execute("SELECT pg_class.oid AS table_id, "
"pg_attribute.attnum AS column_id "
"FROM pg_class JOIN pg_attribute ON "
"FROM pg_catalog.pg_class JOIN pg_attribute ON "
"attrelid=pg_class.oid "
"WHERE pg_class.relname='test_table'"
" AND pg_attribute.attname = 'some_column'")

View File

@@ -25,7 +25,8 @@ class TestColumnPropertiesSql(SQLTemplateTestBase):
self.table_id = -1
def test_setup(self, connection, cursor):
cursor.execute("SELECT oid FROM pg_class where relname='test_table'")
cursor.execute("SELECT oid FROM pg_catalog.pg_class "
"where relname='test_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -26,7 +26,8 @@ class TestTablesAclSql(SQLTemplateTestBase):
def test_setup(self, connection, cursor):
cursor.execute("GRANT SELECT ON test_table TO PUBLIC")
cursor = connection.cursor()
cursor.execute("SELECT oid FROM pg_class WHERE relname='test_table'")
cursor.execute("SELECT oid FROM pg_catalog.pg_class WHERE relname="
"'test_table'")
self.table_id = cursor.fetchone()[0]
def generate_sql(self, version):

View File

@@ -56,10 +56,11 @@ class TestTablesPropertiesSql(SQLTemplateTestBase):
SELECT
db.oid as did, datlastsysoid
FROM
pg_database db
pg_catalog.pg_database db
WHERE db.datname = '{0}'""".format(self.database_name)
)
self.database_id, self.last_system_oid = cursor.fetchone()
cursor.execute("SELECT oid FROM pg_class where relname='test_table'")
cursor.execute("SELECT oid FROM pg_catalog.pg_class where relname="
"'test_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -28,7 +28,7 @@ class TestTriggerGetOidSql(SQLTemplateTestBase):
def test_setup(self, connection, cursor):
cursor.execute("SELECT pg_class.oid AS table_id, "
"pg_attribute.attnum AS column_id "
"FROM pg_class JOIN pg_attribute ON "
"FROM pg_catalog.pg_class JOIN pg_attribute ON "
"attrelid=pg_class.oid "
"WHERE pg_class.relname='test_table'"
" AND pg_attribute.attname = 'some_column'")

View File

@@ -25,7 +25,7 @@ class TestTriggerNodesSql(SQLTemplateTestBase):
def test_setup(self, connection, cursor):
cursor.execute("SELECT pg_class.oid AS table_id "
"FROM pg_class "
"FROM pg_catalog.pg_class "
"WHERE pg_class.relname='test_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -126,8 +126,8 @@ def create_table(server, db_name, schema_name, table_name, custom_query=None):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created table
pg_cursor.execute("select oid from pg_class where relname='%s'" %
table_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % table_name)
table = pg_cursor.fetchone()
table_id = ''
if table:
@@ -159,8 +159,8 @@ def verify_table(server, db_name, table_id):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT * FROM pg_class tb WHERE tb.oid=%s" %
table_id)
pg_cursor.execute("SELECT * FROM pg_catalog.pg_class tb "
"WHERE tb.oid=%s" % table_id)
table = pg_cursor.fetchone()
connection.close()
return table
@@ -227,8 +227,8 @@ def create_table_for_partition(
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created table
pg_cursor.execute("select oid from pg_class where relname='%s'" %
table_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % table_name)
table = pg_cursor.fetchone()
table_id = ''
if table:
@@ -574,8 +574,8 @@ def get_table_id(server, db_name, table_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select oid from pg_class where relname='%s'" %
table_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % table_name)
table = pg_cursor.fetchone()
if table:
table_id = table[0]

View File

@@ -56,8 +56,8 @@ def create_trigger(server, db_name, schema_name, table_name, trigger_name,
pg_cursor.execute(query)
connection.set_isolation_level(old_isolation_level)
connection.commit()
pg_cursor.execute("SELECT oid FROM pg_trigger where tgname='%s'" %
trigger_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_trigger "
"where tgname='%s'" % trigger_name)
trigger = pg_cursor.fetchone()
trigger_id = ''
if trigger:
@@ -89,8 +89,8 @@ def verify_trigger(server, db_name, trigger_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT oid FROM pg_trigger where tgname='%s'" %
trigger_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_trigger "
"where tgname='%s'" % trigger_name)
trigger = pg_cursor.fetchone()
connection.close()
return trigger

View File

@@ -417,7 +417,7 @@ class BaseTableView(PGChildNodeView, BasePartitionTable, VacuumSettings):
# if created then only add extended stats
status, is_pgstattuple = self.conn.execute_scalar("""
SELECT (count(extname) > 0) AS is_pgstattuple
FROM pg_extension
FROM pg_catalog.pg_extension
WHERE extname='pgstattuple'
""")
if not status:

View File

@@ -1,12 +1,12 @@
{% macro LIST(tbl) -%}
({{ tbl }}.nspname = 'pg_catalog' AND EXISTS
(SELECT 1 FROM pg_class WHERE relname = 'pg_class' AND
(SELECT 1 FROM pg_catalog.pg_class WHERE relname = 'pg_class' AND
relnamespace = {{ tbl }}.oid LIMIT 1)) OR
({{ tbl }}.nspname = 'pgagent' AND EXISTS
(SELECT 1 FROM pg_class WHERE relname = 'pga_job' AND
(SELECT 1 FROM pg_catalog.pg_class WHERE relname = 'pga_job' AND
relnamespace = {{ tbl }}.oid LIMIT 1)) OR
({{ tbl }}.nspname = 'information_schema' AND EXISTS
(SELECT 1 FROM pg_class WHERE relname = 'tables' AND
(SELECT 1 FROM pg_catalog.pg_class WHERE relname = 'tables' AND
relnamespace = {{ tbl }}.oid LIMIT 1))
{%- endmacro %}
{% macro IS_CATALOG_SCHEMA(schema_col_name) -%}

View File

@@ -11,7 +11,7 @@ SELECT
(SELECT pg_catalog.array_to_string(defaclacl::text[], ', ') FROM pg_catalog.pg_default_acl WHERE defaclobjtype = 'f' AND defaclnamespace = nsp.oid) AS funcacl,
(SELECT pg_catalog.array_agg(provider || '=' || label) FROM pg_catalog.pg_seclabels sl1 WHERE sl1.objoid=nsp.oid) AS seclabels
FROM
pg_namespace nsp
pg_catalog.pg_namespace nsp
LEFT OUTER JOIN pg_catalog.pg_description des ON
(des.objoid=nsp.oid AND des.classoid='pg_namespace'::regclass)
LEFT JOIN pg_catalog.pg_roles r ON (r.oid = nsp.nspowner)

View File

@@ -1,16 +1,16 @@
{% macro LIST(tbl) -%}
({{ tbl }}.nspname = 'pg_catalog' AND EXISTS
(SELECT 1 FROM pg_class
(SELECT 1 FROM pg_catalog.pg_class
WHERE relname = 'pg_class' AND relnamespace = {{ tbl }}.oid LIMIT 1)) OR
({{ tbl }}.nspname = 'pgagent' AND EXISTS
(SELECT 1 FROM pg_class
(SELECT 1 FROM pg_catalog.pg_class
WHERE relname = 'pga_job' AND relnamespace = {{ tbl }}.oid LIMIT 1)) OR
({{ tbl }}.nspname = 'information_schema' AND EXISTS
(SELECT 1 FROM pg_class
(SELECT 1 FROM pg_catalog.pg_class
WHERE relname = 'tables' AND relnamespace = {{ tbl }}.oid LIMIT 1)) OR
({{ tbl }}.nspname = 'dbo' OR {{ tbl }}.nspname = 'sys') OR
({{ tbl }}.nspname = 'dbms_job_procedure' AND EXISTS
(SELECT 1 FROM pg_proc
(SELECT 1 FROM pg_catalog.pg_proc
WHERE pronamespace = {{ tbl }}.oid and proname = 'run_job' LIMIT 1))
{%- endmacro %}
{% macro IS_CATALOG_SCHEMA(schema_col_name) -%}

View File

@@ -6,7 +6,7 @@ SELECT
ELSE 3 END AS nsptyp,
nsp.nspname AS name,
nsp.oid,
array_to_string(nsp.nspacl::text[], ', ') as acl,
pg_catalog.array_to_string(nsp.nspacl::text[], ', ') as acl,
r.rolname AS namespaceowner, description,
pg_catalog.has_schema_privilege(nsp.oid, 'CREATE') AS can_create,
{### Default ACL for Tables ###}

View File

@@ -64,7 +64,8 @@ def create_schema(connection, schema_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get schema details of newly created schema
pg_cursor.execute("SELECT sch.oid, sch.nspname FROM pg_namespace sch"
pg_cursor.execute("SELECT sch.oid, sch.nspname FROM "
"pg_catalog.pg_namespace sch"
" WHERE sch.nspname='%s'" % schema_name)
schema = pg_cursor.fetchone()
connection.close()
@@ -83,7 +84,7 @@ def verify_schemas(server, db_name, schema_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT oid,* FROM pg_namespace sch"
pg_cursor.execute("SELECT oid,* FROM pg_catalog.pg_namespace sch"
" WHERE sch.nspname='%s'" % schema_name)
schema = pg_cursor.fetchone()
connection.close()

View File

@@ -7,7 +7,7 @@ SELECT attnum, attname, pg_catalog.format_type(t.oid,NULL) AS typname, attndims,
CASE WHEN t.typelem > 0 THEN t.typelem ELSE t.oid END as elemoid
FROM pg_catalog.pg_attribute att
JOIN pg_catalog.pg_type t ON t.oid=atttypid
JOIN pg_namespace nsp ON t.typnamespace=nsp.oid
JOIN pg_catalog.pg_namespace nsp ON t.typnamespace=nsp.oid
LEFT OUTER JOIN pg_catalog.pg_type b ON t.typelem=b.oid
LEFT OUTER JOIN pg_catalog.pg_collation c ON att.attcollation=c.oid
LEFT OUTER JOIN pg_catalog.pg_namespace nspc ON c.collnamespace=nspc.oid
@@ -30,7 +30,7 @@ SELECT rngsubtype, st.typname,
CASE WHEN n.nspname IS NOT NULL THEN pg_catalog.concat(pg_catalog.quote_ident(n.nspname), '.', pg_catalog.quote_ident(col.collname)) ELSE col.collname END AS collname,
rngsubopc, opc.opcname,
rngcanonical, rngsubdiff
FROM pg_range
FROM pg_catalog.pg_range
LEFT JOIN pg_catalog.pg_type st ON st.oid=rngsubtype
LEFT JOIN pg_catalog.pg_collation col ON col.oid=rngcollation
LEFT JOIN pg_catalog.pg_namespace n ON col.collnamespace=n.oid

View File

@@ -2,10 +2,10 @@ SELECT * FROM
(SELECT pg_catalog.format_type(t.oid,NULL) AS typname,
CASE WHEN typelem > 0 THEN typelem ELSE t.oid END AS elemoid,
typlen, typtype, t.oid, nspname,
(SELECT COUNT(1) FROM pg_type t2 WHERE t2.typname = t.typname) > 1 AS isdup,
(SELECT COUNT(1) FROM pg_catalog.pg_type t2 WHERE t2.typname = t.typname) > 1 AS isdup,
CASE WHEN t.typcollation != 0 THEN TRUE ELSE FALSE END AS is_collatable
FROM pg_catalog.pg_type t
JOIN pg_catalog.pg_namespace nsp ON typnamespace=nsp.oid
WHERE (NOT (typname = 'unknown' AND nspname = 'pg_catalog')) AND typisdefined AND typtype IN ('b', 'c', 'd', 'e', 'r') AND NOT EXISTS (select 1 from pg_class where relnamespace=typnamespace and relname = typname and relkind != 'c') AND (typname not like '_%' OR NOT EXISTS (select 1 from pg_class where relnamespace=typnamespace and relname = substring(typname from 2)::name and relkind != 'c')) AND nsp.nspname != 'information_schema'
WHERE (NOT (typname = 'unknown' AND nspname = 'pg_catalog')) AND typisdefined AND typtype IN ('b', 'c', 'd', 'e', 'r') AND NOT EXISTS (select 1 from pg_catalog.pg_class where relnamespace=typnamespace and relname = typname and relkind != 'c') AND (typname not like '_%' OR NOT EXISTS (select 1 from pg_catalog.pg_class where relnamespace=typnamespace and relname = substring(typname from 2)::name and relkind != 'c')) AND nsp.nspname != 'information_schema'
) AS dummy
ORDER BY nspname <> 'pg_catalog', nspname <> 'public', nspname, 1

View File

@@ -65,8 +65,8 @@ def create_type(server, db_name, schema_name, type_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created type
pg_cursor.execute(
"select oid from pg_type where typname='%s'" % type_name)
pg_cursor.execute("select oid from pg_catalog.pg_type "
"where typname='%s'" % type_name)
schema_type = pg_cursor.fetchone()
type_id = schema_type[0]
connection.close()
@@ -94,8 +94,8 @@ def verify_type(server, db_name, type_name):
server['host'],
server['port'])
pg_cursor = connection.cursor()
pg_cursor.execute(
"select oid from pg_type where typname='%s'" % type_name)
pg_cursor.execute("select oid from pg_catalog.pg_type "
"where typname='%s'" % type_name)
schema_type = pg_cursor.fetchone()
connection.close()
return schema_type

View File

@@ -10,7 +10,7 @@ SELECT
description As comment,
pg_catalog.pg_get_viewdef(c.oid, true) AS definition,
nsp.nspname AS schema,
array_to_string(c.relacl::text[], ', ') AS acl,
pg_catalog.array_to_string(c.relacl::text[], ', ') AS acl,
{#=============Checks if it is system view================#}
{% if vid and datlastsysoid %}
CASE WHEN {{vid}} <= {{datlastsysoid}} THEN True ELSE False END AS system_view,

View File

@@ -93,7 +93,7 @@ def create_trigger_function_with_trigger(server, db_name, schema_name,
connection.commit()
# Get 'oid' from newly created function
pg_cursor.execute("SELECT pro.oid, pro.proname FROM"
" pg_proc pro WHERE pro.proname='%s'" %
" pg_catalog.pg_proc pro WHERE pro.proname='%s'" %
func_name)
functions = pg_cursor.fetchone()
connection.close()
@@ -139,8 +139,8 @@ def create_trigger(server, db_name, schema_name, table_name, trigger_name,
pg_cursor.execute(query)
connection.set_isolation_level(old_isolation_level)
connection.commit()
pg_cursor.execute("SELECT oid FROM pg_trigger where tgname='%s'" %
trigger_name)
pg_cursor.execute("SELECT oid FROM pg_catalog.pg_trigger "
"where tgname='%s'" % trigger_name)
trigger = pg_cursor.fetchone()
trigger_id = ''
if trigger:
@@ -184,8 +184,8 @@ def create_view(server, db_name, schema_name, view_name, sql_query=None,
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get 'oid' from newly created view
pg_cursor.execute("select oid from pg_class where relname='%s'" %
view_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % view_name)
view = pg_cursor.fetchone()
view_id = view[0]
connection.close()
@@ -215,8 +215,8 @@ def verify_view(server, db_name, view_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select oid from pg_class where relname='%s'" %
view_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % view_name)
view = pg_cursor.fetchone()
connection.close()
return view
@@ -236,8 +236,8 @@ def get_view_id(server, db_name, view_name):
connection.set_isolation_level(0)
pg_cursor = connection.cursor()
# Get 'oid' from newly created view
pg_cursor.execute("select oid from pg_class where relname='%s'" %
view_name)
pg_cursor.execute("select oid from pg_catalog.pg_class "
"where relname='%s'" % view_name)
view = pg_cursor.fetchone()
view_id = None
if view:

View File

@@ -71,9 +71,8 @@ def create_subscription(server, db_name, subscription_name):
connection.set_isolation_level(old_isolation_level)
connection.commit()
# Get role oid of newly added subscription
pg_cursor.execute("select oid from pg_subscription sub where "
"sub.subname='%s'" %
subscription_name)
pg_cursor.execute("select oid from pg_catalog.pg_subscription sub "
"where sub.subname='%s'" % subscription_name)
subscription = pg_cursor.fetchone()
subscription_id = ''
if subscription:
@@ -105,7 +104,7 @@ def verify_subscription(server, db_name, subscription_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_subscription sub "
pg_cursor.execute("select * from pg_catalog.pg_subscription sub "
"where sub.subname='%s'" %
subscription_name)
subscription = pg_cursor.fetchone()
@@ -138,7 +137,7 @@ def delete_subscription(server, db_name, subscription_name):
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("select * from pg_subscription sub where "
pg_cursor.execute("select * from pg_catalog.pg_subscription sub where "
"sub.subname='%s'" %
subscription_name)
subscription_count = pg_cursor.fetchone()

View File

@@ -8,13 +8,13 @@ SELECT
{### Default ACL for Tables ###}
(SELECT pg_catalog.array_to_string(ARRAY(
SELECT pg_catalog.array_to_string(defaclacl::text[], ', ')
FROM pg_default_acl
FROM pg_catalog.pg_default_acl
WHERE defaclobjtype = 'r' AND defaclnamespace = 0::OID
), ', ')) AS tblacl,
{### Default ACL for Sequnces ###}
(SELECT pg_catalog.array_to_string(ARRAY(
SELECT pg_catalog.array_to_string(defaclacl::text[], ', ')
FROM pg_default_acl
FROM pg_catalog.pg_default_acl
WHERE defaclobjtype = 'S' AND defaclnamespace = 0::OID
), ', ')) AS seqacl,
{### Default ACL for Functions ###}

View File

@@ -8,7 +8,7 @@ SELECT
{### Default ACL for Tables ###}
(SELECT pg_catalog.array_to_string(ARRAY(
SELECT pg_catalog.array_to_string(defaclacl::text[], ', ')
FROM pg_default_acl
FROM pg_catalog.pg_default_acl
WHERE defaclobjtype = 'r' AND defaclnamespace = 0::OID
), ', ')) AS tblacl,
{### Default ACL for Sequnces ###}

View File

@@ -28,8 +28,8 @@ FROM
grantee.oid AS grantee,
pr.type AS privilege_type,
pg_catalog.aclcontains(c.datacl, pg_catalog.makeaclitem(grantee.oid, u_grantor.oid, pr.type, true)) AS is_grantable
FROM pg_catalog.pg_database c, pg_authid u_grantor, (
SELECT pg_authid.oid, pg_authid.rolname
FROM pg_catalog.pg_database c, pg_catalog.pg_authid u_grantor, (
SELECT pg_catalog.pg_authid.oid, pg_catalog.pg_authid.rolname
FROM pg_catalog.pg_authid
UNION ALL
SELECT 0::oid AS oid, 'PUBLIC') grantee(oid, rolname),

View File

@@ -64,8 +64,8 @@ SELECT
WHERE EXISTS(
SELECT has_schema_privilege('pgagent', 'USAGE')
WHERE EXISTS(
SELECT cl.oid FROM pg_class cl
LEFT JOIN pg_namespace ns ON ns.oid=relnamespace
SELECT cl.oid FROM pg_catalog.pg_class cl
LEFT JOIN pg_catalog.pg_namespace ns ON ns.oid=relnamespace
WHERE relname='pga_job' AND nspname='pgagent'
)
)

View File

@@ -106,8 +106,8 @@ def is_pgagent_installed_on_server(self):
WHERE EXISTS(
SELECT has_schema_privilege('pgagent', 'USAGE')
WHERE EXISTS(
SELECT cl.oid FROM pg_class cl
LEFT JOIN pg_namespace ns ON ns.oid=relnamespace
SELECT cl.oid FROM pg_catalog.pg_class cl
LEFT JOIN pg_catalog.pg_namespace ns ON ns.oid=relnamespace
WHERE relname='pga_job' AND nspname='pgagent'
)
)

View File

@@ -33,7 +33,7 @@ CREATE ROLE {{ conn|qtIdent(data.rolname) }} WITH{% if data.rolcanlogin and data
PASSWORD {% if data.rolpassword is none %}NULL{% else %}{% if dummy %}'xxxxxx'{% else %} {{ data.rolpassword | qtLiteral }}{% endif %}{% endif %}{% endif %};{% if data.rolsuper and data.rolcatupdate is sameas false %}
UPDATE pg_authid SET rolcatupdate=false WHERE rolname = {{ data.rolname|qtLiteral }};{% endif %}{% if data.members and data.members|length > 0 %}
UPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname = {{ data.rolname|qtLiteral }};{% endif %}{% if data.members and data.members|length > 0 %}
GRANT {{ conn|qtIdent(data.members)|join(', ') }} TO {{ conn|qtIdent(data.rolname) }};{% endif %}{% if data.admins and data.admins|length > 0 %}

View File

@@ -18,7 +18,7 @@ FROM
CASE WHEN rolconnlimit > 0 THEN E'\n CONNECTION LIMIT ' || rolconnlimit ELSE '' END ||
CASE WHEN rolvaliduntil IS NOT NULL THEN E'\n VALID UNTIL ' || pg_catalog.quote_literal(rolvaliduntil::text) ELSE '' END || ';' ||
-- PostgreSQL < 9.5
CASE WHEN rolsuper AND NOT rolcatupdate THEN E'\n\nUPDATE pg_authid SET rolcatupdate=false WHERE rolname=' || pg_catalog.quote_literal(rolname) || ';' ELSE '' END AS sql
CASE WHEN rolsuper AND NOT rolcatupdate THEN E'\n\nUPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname=' || pg_catalog.quote_literal(rolname) || ';' ELSE '' END AS sql
FROM
pg_catalog.pg_roles r
WHERE

View File

@@ -50,7 +50,7 @@ ALTER ROLE {{ conn|qtIdent(rolname) }}{% if 'rolcanlogin' in data %}
data.rolsuper %}
UPDATE pg_authid SET rolcatupdate=false WHERE rolname = {{ rolname|qtLiteral }};
UPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname = {{ rolname|qtLiteral }};
{% elif
rolSuper and
@@ -59,12 +59,12 @@ UPDATE pg_authid SET rolcatupdate=false WHERE rolname = {{ rolname|qtLiteral }};
{% if data.rolcatupdate %}
UPDATE pg_authid SET rolcatupdate=true WHERE rolname = {{ rolname|qtLiteral }};
UPDATE pg_catalog.pg_authid SET rolcatupdate=true WHERE rolname = {{ rolname|qtLiteral }};
{% else %}
UPDATE pg_authid SET rolcatupdate=false WHERE rolname = {{ rolname|qtLiteral }};
UPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname = {{ rolname|qtLiteral }};
{% endif %}
{% endif %}

View File

@@ -81,7 +81,7 @@ FROM
datname, pg_catalog.split_part(rolconfig, '=', 1) AS param, pg_catalog.replace(rolconfig, pg_catalog.split_part(rolconfig, '=', 1) || '=', '') AS value
FROM
(SELECT
d.datname, unnest(c.setconfig) AS rolconfig
d.datname, pg_catalog.unnest(c.setconfig) AS rolconfig
FROM
(SELECT *
FROM

View File

@@ -10,6 +10,6 @@ CREATE ROLE "Role1_$%{}[]()&*^!@""'`\/#" WITH
REPLICATION;
UPDATE pg_authid SET rolcatupdate=false WHERE rolname = 'Role1_$%{}[]()&*^!@"''`\/#';
UPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname = 'Role1_$%{}[]()&*^!@"''`\/#';
COMMENT ON ROLE "Role1_$%{}[]()&*^!@""'`\/#" IS 'This is detailed description';

View File

@@ -10,6 +10,6 @@ CREATE ROLE "Role2_$%{}[]()&*^!@""'`\/#" WITH
REPLICATION;
UPDATE pg_authid SET rolcatupdate=false WHERE rolname = 'Role2_$%{}[]()&*^!@"''`\/#'';
UPDATE pg_catalog.pg_authid SET rolcatupdate=false WHERE rolname = 'Role2_$%{}[]()&*^!@"''`\/#'';
COMMENT ON ROLE "Role2_$%{}[]()&*^!@""'`\/#" IS 'This is detailed description';

View File

@@ -37,5 +37,5 @@ COMMENT ON TABLESPACE {{ conn|qtIdent(data.name) }}
{% endif %}
{# ======== The SQl Below will fetch id for given dataspace ======== #}
{% if tablespace %}
SELECT ts.oid FROM pg_tablespace ts WHERE spcname = {{tablespace|qtLiteral}};
SELECT ts.oid FROM pg_catalog.pg_tablespace ts WHERE spcname = {{tablespace|qtLiteral}};
{% endif %}

View File

@@ -63,8 +63,8 @@ def create_tablespace(server, test_tablespace_name, test_tablespace_dir=None):
# Get 'oid' from newly created tablespace
pg_cursor.execute(
"SELECT ts.oid from pg_tablespace ts WHERE ts.spcname='%s'" %
test_tablespace_name)
"SELECT ts.oid from pg_catalog.pg_tablespace ts "
"WHERE ts.spcname='%s'" % test_tablespace_name)
oid = pg_cursor.fetchone()
tspc_id = ''
if oid:
@@ -93,7 +93,7 @@ def verify_table_space(server, test_tablespace_name):
server['port'],
server['sslmode'])
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT * FROM pg_tablespace ts WHERE"
pg_cursor.execute("SELECT * FROM pg_catalog.pg_tablespace ts WHERE"
" ts.spcname='%s'" % test_tablespace_name)
tablespace_count = len(pg_cursor.fetchall())
connection.close()
@@ -107,7 +107,7 @@ def verify_table_space(server, test_tablespace_name):
def delete_tablespace(connection, test_tablespace_name):
try:
pg_cursor = connection.cursor()
pg_cursor.execute("SELECT * FROM pg_tablespace ts WHERE"
pg_cursor.execute("SELECT * FROM pg_catalog.pg_tablespace ts WHERE"
" ts.spcname='%s'" % test_tablespace_name)
tablespace_count = len(pg_cursor.fetchall())
if tablespace_count:

View File

@@ -68,7 +68,7 @@ LEFT JOIN pg_catalog.pg_namespace ftstns ON ftst.tmplnamespace=ftstns.oid
LEFT JOIN pg_catalog.pg_extension ext ON ext.oid=dep.objid
LEFT JOIN pg_catalog.pg_policy pl ON pl.oid=dep.objid
{{where_clause}} AND
classid IN ( SELECT oid FROM pg_class WHERE relname IN
classid IN ( SELECT oid FROM pg_catalog.pg_class WHERE relname IN
('pg_class', 'pg_constraint', 'pg_conversion', 'pg_language', 'pg_proc', 'pg_rewrite', 'pg_namespace',
'pg_trigger', 'pg_type', 'pg_attrdef', 'pg_event_trigger', 'pg_foreign_server', 'pg_foreign_data_wrapper',
'pg_collation', 'pg_ts_config', 'pg_ts_dict', 'pg_ts_parser', 'pg_ts_template', 'pg_extension', 'pg_policy'))

View File

@@ -1,8 +1,8 @@
SELECT rolname AS refname, refclassid, deptype
FROM pg_shdepend dep
LEFT JOIN pg_roles r ON refclassid=1260 AND refobjid=r.oid
FROM pg_catalog.pg_shdepend dep
LEFT JOIN pg_catalog.pg_roles r ON refclassid=1260 AND refobjid=r.oid
{{where_clause}}
{% if db_name %}
AND dep.dbid = (SELECT oid FROM pg_database WHERE datname = {{ db_name|qtLiteral }})
AND dep.dbid = (SELECT oid FROM pg_catalog.pg_database WHERE datname = {{ db_name|qtLiteral }})
{% endif %}
ORDER BY 1

View File

@@ -25,8 +25,8 @@ class TestDependenciesSql(SQLTemplateTestBase):
self.table_id = -1
def test_setup(self, connection, cursor):
cursor.execute("SELECT pg_class.oid AS table_id "
"FROM pg_class "
cursor.execute("SELECT pg_catalog.pg_class.oid AS table_id "
"FROM pg_catalog.pg_class "
"WHERE pg_class.relname='test_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -26,7 +26,7 @@ class TestDependentsSql(SQLTemplateTestBase):
def test_setup(self, connection, cursor):
cursor.execute("SELECT pg_class.oid AS table_id "
"FROM pg_class "
"FROM pg_catalog.pg_class "
"WHERE pg_class.relname='test_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -48,7 +48,7 @@ class TestRoleDependenciesSql(SQLTemplateTestBase):
database_name, "test_new_role_table")
cursor = connection.cursor()
cursor.execute("SELECT pg_class.oid AS table_id "
"FROM pg_class "
"FROM pg_catalog.pg_class "
"WHERE pg_class.relname='test_new_role_table'")
self.table_id = cursor.fetchone()[0]

View File

@@ -374,7 +374,7 @@ ROLLBACK;"""
-- 2. (Done) Create table in public schema.
-- 3. (Done) ROLLBACK transaction.
-- 4. Check if table is *NOT* created.
SELECT relname FROM pg_class
SELECT relname FROM pg_catalog.pg_class
WHERE relkind IN ('r','s','t') and relnamespace = 2200::oid;"""
self.page.execute_query(query)
@@ -458,7 +458,7 @@ ROLLBACK;"""
-- 3. (Done) Create table in public schema.
-- 4. (Done) ROLLBACK transaction
-- 5. Check if table is created event after ROLLBACK.
SELECT relname FROM pg_class
SELECT relname FROM pg_catalog.pg_class
WHERE relkind IN ('r','s','t') and relnamespace = 2200::oid;"""
self.page.execute_query(query)
@@ -553,7 +553,7 @@ END;"""
-- 4. (Done) Generate error in transaction.
-- 5. (Done) END transaction.
-- 6. Check if table is *NOT* created after ending transaction.
SELECT relname FROM pg_class
SELECT relname FROM pg_catalog.pg_class
WHERE relkind IN ('r','s','t') and relnamespace = 2200::oid;"""
self.page.execute_query(query)
self.page.wait_for_query_tool_loading_indicator_to_disappear()
@@ -687,7 +687,8 @@ SELECT 1, pg_sleep(300)"""
self.page.execute_query("SET jit_above_cost=10;")
self.page.clear_query_tool()
self.page.fill_codemirror_area_with("SELECT count(*) FROM pg_class;")
self.page.fill_codemirror_area_with(
"SELECT count(*) FROM pg_catalog.pg_class;")
explain_op = self.page.find_by_css_selector(
QueryToolLocators.btn_explain_options_dropdown)
explain_op.click()

Some files were not shown because too many files have changed in this diff Show More