postgresql/src/test/regress/expected/sanity_check.out
Tom Lane d1e027221d Replace the pg_listener-based LISTEN/NOTIFY mechanism with an in-memory queue.
In addition, add support for a "payload" string to be passed along with
each notify event.

This implementation should be significantly more efficient than the old one,
and is also more compatible with Hot Standby usage.  There is not yet any
facility for HS slaves to receive notifications generated on the master,
although such a thing is possible in future.

Joachim Wieland, reviewed by Jeff Davis; also hacked on by me.
2010-02-16 22:34:57 +00:00

175 lines
5.2 KiB
Plaintext

VACUUM;
--
-- sanity check, if we don't have indices the test will take years to
-- complete. But skip TOAST relations (since they will have varying
-- names depending on the current OID counter) as well as temp tables
-- of other backends (to avoid timing-dependent behavior).
--
SELECT relname, relhasindex
FROM pg_class c LEFT JOIN pg_namespace n ON n.oid = relnamespace
WHERE relkind = 'r' AND (nspname ~ '^pg_temp_') IS NOT TRUE
ORDER BY relname;
relname | relhasindex
-------------------------+-------------
a | f
a_star | f
abstime_tbl | f
aggtest | f
array_index_op_test | t
array_op_test | f
b | f
b_star | f
box_tbl | f
bprime | f
bt_f8_heap | t
bt_i4_heap | t
bt_name_heap | t
bt_txt_heap | t
c | f
c_star | f
char_tbl | f
check2_tbl | f
check_tbl | f
circle_tbl | t
city | f
copy_tbl | f
d | f
d_star | f
date_tbl | f
default_tbl | f
defaultexpr_tbl | f
dept | f
e_star | f
emp | f
equipment_r | f
f_star | f
fast_emp4000 | t
float4_tbl | f
float8_tbl | f
func_index_heap | t
hash_f8_heap | t
hash_i4_heap | t
hash_name_heap | t
hash_txt_heap | t
hobbies_r | f
ihighway | t
inet_tbl | f
inhe | f
inhf | f
inhx | t
insert_tbl | f
int2_tbl | f
int4_tbl | f
int8_tbl | f
interval_tbl | f
iportaltest | f
log_table | f
lseg_tbl | f
main_table | f
money_data | f
num_data | f
num_exp_add | t
num_exp_div | t
num_exp_ln | t
num_exp_log10 | t
num_exp_mul | t
num_exp_power_10_ln | t
num_exp_sqrt | t
num_exp_sub | t
num_input_test | f
num_result | f
onek | t
onek2 | t
path_tbl | f
person | f
pg_aggregate | t
pg_am | t
pg_amop | t
pg_amproc | t
pg_attrdef | t
pg_attribute | t
pg_auth_members | t
pg_authid | t
pg_cast | t
pg_class | t
pg_constraint | t
pg_conversion | t
pg_database | t
pg_db_role_setting | t
pg_default_acl | t
pg_depend | t
pg_description | t
pg_enum | t
pg_foreign_data_wrapper | t
pg_foreign_server | t
pg_index | t
pg_inherits | t
pg_language | t
pg_largeobject | t
pg_largeobject_metadata | t
pg_namespace | t
pg_opclass | t
pg_operator | t
pg_opfamily | t
pg_pltemplate | t
pg_proc | t
pg_rewrite | t
pg_shdepend | t
pg_shdescription | t
pg_statistic | t
pg_tablespace | t
pg_trigger | t
pg_ts_config | t
pg_ts_config_map | t
pg_ts_dict | t
pg_ts_parser | t
pg_ts_template | t
pg_type | t
pg_user_mapping | t
point_tbl | t
polygon_tbl | t
ramp | f
real_city | f
reltime_tbl | f
road | t
shighway | t
slow_emp4000 | f
sql_features | f
sql_implementation_info | f
sql_languages | f
sql_packages | f
sql_parts | f
sql_sizing | f
sql_sizing_profiles | f
stud_emp | f
student | f
tenk1 | t
tenk2 | t
test_tsvector | f
text_tbl | f
time_tbl | f
timestamp_tbl | f
timestamptz_tbl | f
timetz_tbl | f
tinterval_tbl | f
varchar_tbl | f
(142 rows)
--
-- another sanity check: every system catalog that has OIDs should have
-- a unique index on OID. This ensures that the OIDs will be unique,
-- even after the OID counter wraps around.
-- We exclude non-system tables from the check by looking at nspname.
--
SELECT relname, nspname
FROM pg_class c LEFT JOIN pg_namespace n ON n.oid = relnamespace
WHERE relhasoids
AND ((nspname ~ '^pg_') IS NOT FALSE)
AND NOT EXISTS (SELECT 1 FROM pg_index i WHERE indrelid = c.oid
AND indkey[0] = -2 AND indnatts = 1
AND indisunique AND indimmediate);
relname | nspname
---------+---------
(0 rows)