3 * No.2-1 table definitions.
6 \d dbms_stats.backup_history
7 Table "dbms_stats.backup_history"
8 Column | Type | Modifiers
9 ---------+--------------------------+------------------------------------------------------------------------
10 id | bigint | not null default nextval('dbms_stats.backup_history_id_seq'::regclass)
11 time | timestamp with time zone | not null
12 unit | character(1) | not null
15 "backup_history_pkey" PRIMARY KEY, btree (id)
17 TABLE "dbms_stats.column_stats_backup" CONSTRAINT "column_stats_backup_id_fkey" FOREIGN KEY (id) REFERENCES dbms_stats.backup_history(id) ON DELETE CASCADE
18 TABLE "dbms_stats.relation_stats_backup" CONSTRAINT "relation_stats_backup_id_fkey" FOREIGN KEY (id) REFERENCES dbms_stats.backup_history(id) ON DELETE CASCADE
21 \d dbms_stats.column_stats_backup
22 Table "dbms_stats.column_stats_backup"
23 Column | Type | Modifiers
24 -------------+---------------------+-----------
25 id | bigint | not null
26 statypid | oid | not null
27 starelid | oid | not null
28 staattnum | smallint | not null
29 stainherit | boolean | not null
30 stanullfrac | real | not null
31 stawidth | integer | not null
32 stadistinct | real | not null
33 stakind1 | smallint | not null
34 stakind2 | smallint | not null
35 stakind3 | smallint | not null
36 stakind4 | smallint | not null
37 stakind5 | smallint | not null
38 staop1 | oid | not null
39 staop2 | oid | not null
40 staop3 | oid | not null
41 staop4 | oid | not null
42 staop5 | oid | not null
43 stanumbers1 | real[] |
44 stanumbers2 | real[] |
45 stanumbers3 | real[] |
46 stanumbers4 | real[] |
47 stanumbers5 | real[] |
48 stavalues1 | dbms_stats.anyarray |
49 stavalues2 | dbms_stats.anyarray |
50 stavalues3 | dbms_stats.anyarray |
51 stavalues4 | dbms_stats.anyarray |
52 stavalues5 | dbms_stats.anyarray |
54 "column_stats_backup_pkey" PRIMARY KEY, btree (id, starelid, staattnum, stainherit)
55 Foreign-key constraints:
56 "column_stats_backup_id_fkey" FOREIGN KEY (id) REFERENCES dbms_stats.backup_history(id) ON DELETE CASCADE
57 "column_stats_backup_id_fkey1" FOREIGN KEY (id, starelid) REFERENCES dbms_stats.relation_stats_backup(id, relid) ON DELETE CASCADE
60 \d dbms_stats._column_stats_locked
61 Table "dbms_stats._column_stats_locked"
62 Column | Type | Modifiers
63 -------------+---------------------+-----------
64 starelid | oid | not null
65 staattnum | smallint | not null
66 stainherit | boolean | not null
80 stanumbers1 | real[] |
81 stanumbers2 | real[] |
82 stanumbers3 | real[] |
83 stanumbers4 | real[] |
84 stanumbers5 | real[] |
85 stavalues1 | dbms_stats.anyarray |
86 stavalues2 | dbms_stats.anyarray |
87 stavalues3 | dbms_stats.anyarray |
88 stavalues4 | dbms_stats.anyarray |
89 stavalues5 | dbms_stats.anyarray |
91 "_column_stats_locked_pkey" PRIMARY KEY, btree (starelid, staattnum, stainherit)
92 Foreign-key constraints:
93 "_column_stats_locked_starelid_fkey" FOREIGN KEY (starelid) REFERENCES dbms_stats._relation_stats_locked(relid) ON DELETE CASCADE
95 invalidate_column_cache BEFORE INSERT OR DELETE OR UPDATE ON dbms_stats._column_stats_locked FOR EACH ROW EXECUTE PROCEDURE dbms_stats.invalidate_column_cache()
98 \d dbms_stats.relation_stats_backup
99 Table "dbms_stats.relation_stats_backup"
100 Column | Type | Modifiers
101 ------------------+--------------------------+-----------
102 id | bigint | not null
103 relid | oid | not null
104 relname | text | not null
105 relpages | integer | not null
106 reltuples | real | not null
107 relallvisible | integer | not null
108 curpages | integer | not null
109 last_analyze | timestamp with time zone |
110 last_autoanalyze | timestamp with time zone |
112 "relation_stats_backup_pkey" PRIMARY KEY, btree (id, relid)
113 Foreign-key constraints:
114 "relation_stats_backup_id_fkey" FOREIGN KEY (id) REFERENCES dbms_stats.backup_history(id) ON DELETE CASCADE
116 TABLE "dbms_stats.column_stats_backup" CONSTRAINT "column_stats_backup_id_fkey1" FOREIGN KEY (id, starelid) REFERENCES dbms_stats.relation_stats_backup(id, relid) ON DELETE CASCADE
119 \d dbms_stats._relation_stats_locked
120 Table "dbms_stats._relation_stats_locked"
121 Column | Type | Modifiers
122 ------------------+--------------------------+-----------
123 relid | oid | not null
124 relname | text | not null
127 relallvisible | integer |
129 last_analyze | timestamp with time zone |
130 last_autoanalyze | timestamp with time zone |
132 "_relation_stats_locked_pkey" PRIMARY KEY, btree (relid)
134 TABLE "dbms_stats._column_stats_locked" CONSTRAINT "_column_stats_locked_starelid_fkey" FOREIGN KEY (starelid) REFERENCES dbms_stats._relation_stats_locked(relid) ON DELETE CASCADE
136 invalidate_relation_cache BEFORE INSERT OR DELETE OR UPDATE ON dbms_stats._relation_stats_locked FOR EACH ROW EXECUTE PROCEDURE dbms_stats.invalidate_relation_cache()
139 * No.2-2 view definitions.
142 \dS+ dbms_stats.column_stats_effective
143 View "dbms_stats.column_stats_effective"
144 Column | Type | Modifiers | Storage | Description
145 -------------+---------------------+-----------+----------+-------------
146 starelid | oid | | plain |
147 staattnum | smallint | | plain |
148 stainherit | boolean | | plain |
149 stanullfrac | real | | plain |
150 stawidth | integer | | plain |
151 stadistinct | real | | plain |
152 stakind1 | smallint | | plain |
153 stakind2 | smallint | | plain |
154 stakind3 | smallint | | plain |
155 stakind4 | smallint | | plain |
156 stakind5 | smallint | | plain |
157 staop1 | oid | | plain |
158 staop2 | oid | | plain |
159 staop3 | oid | | plain |
160 staop4 | oid | | plain |
161 staop5 | oid | | plain |
162 stanumbers1 | real[] | | extended |
163 stanumbers2 | real[] | | extended |
164 stanumbers3 | real[] | | extended |
165 stanumbers4 | real[] | | extended |
166 stanumbers5 | real[] | | extended |
167 stavalues1 | dbms_stats.anyarray | | extended |
168 stavalues2 | dbms_stats.anyarray | | extended |
169 stavalues3 | dbms_stats.anyarray | | extended |
170 stavalues4 | dbms_stats.anyarray | | extended |
171 stavalues5 | dbms_stats.anyarray | | extended |
199 FROM ( SELECT (dbms_stats.merge(v.*, s.*)).starelid AS starelid,
200 (dbms_stats.merge(v.*, s.*)).staattnum AS staattnum,
201 (dbms_stats.merge(v.*, s.*)).stainherit AS stainherit,
202 (dbms_stats.merge(v.*, s.*)).stanullfrac AS stanullfrac,
203 (dbms_stats.merge(v.*, s.*)).stawidth AS stawidth,
204 (dbms_stats.merge(v.*, s.*)).stadistinct AS stadistinct,
205 (dbms_stats.merge(v.*, s.*)).stakind1 AS stakind1,
206 (dbms_stats.merge(v.*, s.*)).stakind2 AS stakind2,
207 (dbms_stats.merge(v.*, s.*)).stakind3 AS stakind3,
208 (dbms_stats.merge(v.*, s.*)).stakind4 AS stakind4,
209 (dbms_stats.merge(v.*, s.*)).stakind5 AS stakind5,
210 (dbms_stats.merge(v.*, s.*)).staop1 AS staop1,
211 (dbms_stats.merge(v.*, s.*)).staop2 AS staop2,
212 (dbms_stats.merge(v.*, s.*)).staop3 AS staop3,
213 (dbms_stats.merge(v.*, s.*)).staop4 AS staop4,
214 (dbms_stats.merge(v.*, s.*)).staop5 AS staop5,
215 (dbms_stats.merge(v.*, s.*)).stanumbers1 AS stanumbers1,
216 (dbms_stats.merge(v.*, s.*)).stanumbers2 AS stanumbers2,
217 (dbms_stats.merge(v.*, s.*)).stanumbers3 AS stanumbers3,
218 (dbms_stats.merge(v.*, s.*)).stanumbers4 AS stanumbers4,
219 (dbms_stats.merge(v.*, s.*)).stanumbers5 AS stanumbers5,
220 (dbms_stats.merge(v.*, s.*)).stavalues1 AS stavalues1,
221 (dbms_stats.merge(v.*, s.*)).stavalues2 AS stavalues2,
222 (dbms_stats.merge(v.*, s.*)).stavalues3 AS stavalues3,
223 (dbms_stats.merge(v.*, s.*)).stavalues4 AS stavalues4,
224 (dbms_stats.merge(v.*, s.*)).stavalues5 AS stavalues5
226 FULL JOIN dbms_stats._column_stats_locked v USING (starelid, staattnum, stainherit)
227 WHERE NOT dbms_stats.is_system_catalog(starelid::regclass) AND (EXISTS ( SELECT NULL::unknown
229 WHERE a.attrelid = starelid AND a.attnum = staattnum AND a.attisdropped = false))) m
230 WHERE m.starelid IS NOT NULL;
233 \dS+ dbms_stats.relation_stats_effective
234 View "dbms_stats.relation_stats_effective"
235 Column | Type | Modifiers | Storage | Description
236 ------------------+--------------------------+-----------+----------+-------------
237 relid | oid | | plain |
238 relname | text | | extended |
239 relpages | integer | | plain |
240 reltuples | real | | plain |
241 relallvisible | integer | | plain |
242 curpages | integer | | plain |
243 last_analyze | timestamp with time zone | | plain |
244 last_autoanalyze | timestamp with time zone | | plain |
246 SELECT c.oid AS relid,
247 dbms_stats.relname(n.nspname::text, c.relname::text) AS relname,
248 COALESCE(v.relpages, c.relpages) AS relpages,
249 COALESCE(v.reltuples, c.reltuples) AS reltuples,
250 COALESCE(v.relallvisible, c.relallvisible) AS relallvisible,
251 COALESCE(v.curpages, (pg_relation_size(c.oid::regclass) / current_setting('block_size'::text)::integer)::integer) AS curpages,
252 COALESCE(v.last_analyze, pg_stat_get_last_analyze_time(c.oid)) AS last_analyze,
253 COALESCE(v.last_autoanalyze, pg_stat_get_last_autoanalyze_time(c.oid)) AS last_autoanalyze
255 JOIN pg_namespace n ON c.relnamespace = n.oid
256 LEFT JOIN dbms_stats._relation_stats_locked v ON v.relid = c.oid
257 WHERE dbms_stats.is_target_relkind(c.relkind) AND NOT dbms_stats.is_system_schema(n.nspname::text);
260 \dS+ dbms_stats.stats
261 View "dbms_stats.stats"
262 Column | Type | Modifiers | Storage | Description
263 ------------------------+---------------------+-----------+----------+-------------
264 schemaname | name | | plain |
265 tablename | name | | plain |
266 attname | name | | plain |
267 inherited | boolean | | plain |
268 null_frac | real | | plain |
269 avg_width | integer | | plain |
270 n_distinct | real | | plain |
271 most_common_vals | dbms_stats.anyarray | | extended |
272 most_common_freqs | real[] | | extended |
273 histogram_bounds | dbms_stats.anyarray | | extended |
274 correlation | real | | plain |
275 most_common_elems | dbms_stats.anyarray | | extended |
276 most_common_elem_freqs | real[] | | extended |
277 elem_count_histogram | real[] | | extended |
279 SELECT n.nspname AS schemaname,
280 c.relname AS tablename,
282 s.stainherit AS inherited,
283 s.stanullfrac AS null_frac,
284 s.stawidth AS avg_width,
285 s.stadistinct AS n_distinct,
287 WHEN s.stakind1 = 1 THEN s.stavalues1
288 WHEN s.stakind2 = 1 THEN s.stavalues2
289 WHEN s.stakind3 = 1 THEN s.stavalues3
290 WHEN s.stakind4 = 1 THEN s.stavalues4
291 WHEN s.stakind5 = 1 THEN s.stavalues5
292 ELSE NULL::dbms_stats.anyarray
293 END AS most_common_vals,
295 WHEN s.stakind1 = 1 THEN s.stanumbers1
296 WHEN s.stakind2 = 1 THEN s.stanumbers2
297 WHEN s.stakind3 = 1 THEN s.stanumbers3
298 WHEN s.stakind4 = 1 THEN s.stanumbers4
299 WHEN s.stakind5 = 1 THEN s.stanumbers5
301 END AS most_common_freqs,
303 WHEN s.stakind1 = 2 THEN s.stavalues1
304 WHEN s.stakind2 = 2 THEN s.stavalues2
305 WHEN s.stakind3 = 2 THEN s.stavalues3
306 WHEN s.stakind4 = 2 THEN s.stavalues4
307 WHEN s.stakind5 = 2 THEN s.stavalues5
308 ELSE NULL::dbms_stats.anyarray
309 END AS histogram_bounds,
311 WHEN s.stakind1 = 3 THEN s.stanumbers1[1]
312 WHEN s.stakind2 = 3 THEN s.stanumbers2[1]
313 WHEN s.stakind3 = 3 THEN s.stanumbers3[1]
314 WHEN s.stakind4 = 3 THEN s.stanumbers4[1]
315 WHEN s.stakind5 = 3 THEN s.stanumbers5[1]
319 WHEN s.stakind1 = 4 THEN s.stavalues1
320 WHEN s.stakind2 = 4 THEN s.stavalues2
321 WHEN s.stakind3 = 4 THEN s.stavalues3
322 WHEN s.stakind4 = 4 THEN s.stavalues4
323 WHEN s.stakind5 = 4 THEN s.stavalues5
324 ELSE NULL::dbms_stats.anyarray
325 END AS most_common_elems,
327 WHEN s.stakind1 = 4 THEN s.stanumbers1
328 WHEN s.stakind2 = 4 THEN s.stanumbers2
329 WHEN s.stakind3 = 4 THEN s.stanumbers3
330 WHEN s.stakind4 = 4 THEN s.stanumbers4
331 WHEN s.stakind5 = 4 THEN s.stanumbers5
333 END AS most_common_elem_freqs,
335 WHEN s.stakind1 = 5 THEN s.stanumbers1
336 WHEN s.stakind2 = 5 THEN s.stanumbers2
337 WHEN s.stakind3 = 5 THEN s.stanumbers3
338 WHEN s.stakind4 = 5 THEN s.stanumbers4
339 WHEN s.stakind5 = 5 THEN s.stanumbers5
341 END AS elem_count_histogram
342 FROM dbms_stats.column_stats_effective s
343 JOIN pg_class c ON c.oid = s.starelid
344 JOIN pg_attribute a ON c.oid = a.attrelid AND a.attnum = s.staattnum
345 LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
346 WHERE NOT a.attisdropped AND has_column_privilege(c.oid, a.attnum, 'select'::text);
349 \dS+ dbms_stats.column_stats_locked
350 View "dbms_stats.column_stats_locked"
351 Column | Type | Modifiers | Storage | Description
352 -------------+---------------------+-----------+----------+-------------
353 starelid | oid | | plain |
354 staattnum | smallint | | plain |
355 stainherit | boolean | | plain |
356 stanullfrac | real | | plain |
357 stawidth | integer | | plain |
358 stadistinct | real | | plain |
359 stakind1 | smallint | | plain |
360 stakind2 | smallint | | plain |
361 stakind3 | smallint | | plain |
362 stakind4 | smallint | | plain |
363 stakind5 | smallint | | plain |
364 staop1 | oid | | plain |
365 staop2 | oid | | plain |
366 staop3 | oid | | plain |
367 staop4 | oid | | plain |
368 staop5 | oid | | plain |
369 stanumbers1 | real[] | | extended |
370 stanumbers2 | real[] | | extended |
371 stanumbers3 | real[] | | extended |
372 stanumbers4 | real[] | | extended |
373 stanumbers5 | real[] | | extended |
374 stavalues1 | dbms_stats.anyarray | | extended |
375 stavalues2 | dbms_stats.anyarray | | extended |
376 stavalues3 | dbms_stats.anyarray | | extended |
377 stavalues4 | dbms_stats.anyarray | | extended |
378 stavalues5 | dbms_stats.anyarray | | extended |
380 SELECT _column_stats_locked.starelid,
381 _column_stats_locked.staattnum,
382 _column_stats_locked.stainherit,
383 _column_stats_locked.stanullfrac,
384 _column_stats_locked.stawidth,
385 _column_stats_locked.stadistinct,
386 _column_stats_locked.stakind1,
387 _column_stats_locked.stakind2,
388 _column_stats_locked.stakind3,
389 _column_stats_locked.stakind4,
390 _column_stats_locked.stakind5,
391 _column_stats_locked.staop1,
392 _column_stats_locked.staop2,
393 _column_stats_locked.staop3,
394 _column_stats_locked.staop4,
395 _column_stats_locked.staop5,
396 _column_stats_locked.stanumbers1,
397 _column_stats_locked.stanumbers2,
398 _column_stats_locked.stanumbers3,
399 _column_stats_locked.stanumbers4,
400 _column_stats_locked.stanumbers5,
401 _column_stats_locked.stavalues1,
402 _column_stats_locked.stavalues2,
403 _column_stats_locked.stavalues3,
404 _column_stats_locked.stavalues4,
405 _column_stats_locked.stavalues5
406 FROM dbms_stats._column_stats_locked
407 WHERE has_column_privilege(_column_stats_locked.starelid, _column_stats_locked.staattnum, 'SELECT'::text);
410 \dS+ dbms_stats.relation_stats_locked
411 View "dbms_stats.relation_stats_locked"
412 Column | Type | Modifiers | Storage | Description
413 ------------------+--------------------------+-----------+----------+-------------
414 relid | oid | | plain |
415 relname | text | | extended |
416 relpages | integer | | plain |
417 reltuples | real | | plain |
418 relallvisible | integer | | plain |
419 curpages | integer | | plain |
420 last_analyze | timestamp with time zone | | plain |
421 last_autoanalyze | timestamp with time zone | | plain |
423 SELECT _relation_stats_locked.relid,
424 _relation_stats_locked.relname,
425 _relation_stats_locked.relpages,
426 _relation_stats_locked.reltuples,
427 _relation_stats_locked.relallvisible,
428 _relation_stats_locked.curpages,
429 _relation_stats_locked.last_analyze,
430 _relation_stats_locked.last_autoanalyze
431 FROM dbms_stats._relation_stats_locked;
434 * No.2-4 dbms_stats.anyarray
437 SELECT n.nspname, t.typname, t.typlen, t.typbyval, t.typtype,
438 t.typcategory, t.typispreferred, t.typisdefined, t.typdelim,
439 t.typrelid, t.typelem, t.typinput, t.typoutput, t.typreceive,
440 t.typsend, t.typmodin, t.typmodout, t.typanalyze, t.typalign,
441 t.typstorage, t.typnotnull, t.typbasetype, t.typtypmod, t.typndims,
442 t.typcollation, t.typdefaultbin, t.typdefault, t.typacl
443 FROM pg_type t, pg_namespace n
444 WHERE t.typnamespace = n.oid
445 AND n.nspname = 'dbms_stats'
446 AND t.typname = 'anyarray';
447 nspname | typname | typlen | typbyval | typtype | typcategory | typispreferred | typisdefined | typdelim | typrelid | typelem | typinput | typoutput | typreceive | typsend | typmodin | typmodout | typanalyze | typalign | typstorage | typnotnull | typbasetype | typtypmod | typndims | typcollation | typdefaultbin | typdefault | typacl
448 ------------+----------+--------+----------+---------+-------------+----------------+--------------+----------+----------+---------+------------------------+-------------------------+--------------------------+--------------------------+----------+-----------+------------+----------+------------+------------+-------------+-----------+----------+--------------+---------------+------------+--------
449 dbms_stats | anyarray | -1 | f | b | P | f | t | , | 0 | 0 | dbms_stats.anyarray_in | dbms_stats.anyarray_out | dbms_stats.anyarray_recv | dbms_stats.anyarray_send | - | - | - | d | x | f | 0 | -1 | 0 | 0 | (null) | (null) | (null)
453 * No.5-1 dbms_stats.merge
455 UPDATE pg_statistic SET
456 stanullfrac = staattnum,
457 stawidth = staattnum,
458 stadistinct = staattnum,
469 stanumbers1 = ARRAY[staattnum,4],
470 stanumbers2 = ARRAY[staattnum,1],
471 stanumbers3 = ARRAY[staattnum,2],
472 stanumbers4 = ARRAY[staattnum,3],
473 stanumbers5 = ARRAY[staattnum,5],
474 stavalues2 = array_cat(stavalues1,stavalues1),
475 stavalues3 = array_cat(array_cat(stavalues1,stavalues1),stavalues1),
476 stavalues4 = array_cat(array_cat(array_cat(stavalues1,stavalues1),stavalues1),stavalues1)
477 ,stavalues5 = array_cat(array_cat(array_cat(array_cat(stavalues1,stavalues1),stavalues1),stavalues1),stavalues1)
478 WHERE starelid = 'st0'::regclass;
479 SELECT dbms_stats.lock_table_stats('st0');
485 UPDATE dbms_stats._column_stats_locked SET
487 stanullfrac = -staattnum,
488 stawidth = -staattnum,
489 stadistinct = -staattnum,
500 stanumbers1 = ARRAY[-staattnum,22],
501 stanumbers2 = ARRAY[-staattnum,23],
502 stanumbers3 = ARRAY[-staattnum,24],
503 stanumbers4 = ARRAY[-staattnum,21],
504 stanumbers5 = ARRAY[-staattnum,25],
505 stavalues1 = stavalues3,
506 stavalues2 = stavalues2,
507 stavalues3 = stavalues1,
508 stavalues4 = stavalues4
509 ,stavalues5 = stavalues5
512 * Driver function dbms_stats.merge1
514 CREATE FUNCTION dbms_stats.merge1(
515 lhs dbms_stats._column_stats_locked,
516 rhs pg_catalog.pg_statistic
518 '$libdir/pg_dbms_stats', 'dbms_stats_merge'
520 SELECT * FROM columns_locked_v
521 WHERE starelid = 'st0'::regclass;
522 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
523 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
524 st0 | 1 | id | t | -1 | -1 | -1 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-1,22} | {-1,23} | {-1,24} | {-1,21} | {-1,25} | {1,2,1,2,1,2} | {1,2,1,2} | {1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
525 st0 | 2 | name | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
528 SELECT * FROM plain_columns_statistic_v
529 WHERE starelid = 'st0'::regclass;
530 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
531 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+-------------------+---------------------------+-----------------------------------+-------------------------------------------
532 st0 | 1 | f | 1 | 1 | 1 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | {1,4} | {1,1} | {1,2} | {1,3} | {1,5} | {1,2} | {1,2,1,2} | {1,2,1,2,1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
533 st0 | 2 | f | 2 | 2 | 2 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | {2,4} | {2,1} | {2,2} | {2,3} | {2,5} | {"test "} | {"test ","test "} | {"test ","test ","test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
536 SET client_min_messages TO LOG;
538 SELECT (m.merge).starelid::regclass,
540 (m.merge).stainherit,
541 (m.merge).stanullfrac,
543 (m.merge).stadistinct,
554 (m.merge).stanumbers1,
555 (m.merge).stanumbers2,
556 (m.merge).stanumbers3,
557 (m.merge).stanumbers4,
558 (m.merge).stanumbers5,
559 (m.merge).stavalues1,
560 (m.merge).stavalues2,
561 (m.merge).stavalues3,
563 ,(m.merge).stavalues5
564 FROM (SELECT dbms_stats.merge(NULL, s)
566 WHERE starelid = 'st0'::regclass
567 AND staattnum = '1'::int2) m;
568 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
569 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+---------------+-------------------+-----------------------
570 st0 | 1 | f | 1 | 1 | 1 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | {1,4} | {1,1} | {1,2} | {1,3} | {1,5} | {1,2} | {1,2,1,2} | {1,2,1,2,1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
574 SELECT (m.merge).starelid::regclass,
576 (m.merge).stainherit,
577 (m.merge).stanullfrac,
579 (m.merge).stadistinct,
590 (m.merge).stanumbers1,
591 (m.merge).stanumbers2,
592 (m.merge).stanumbers3,
593 (m.merge).stanumbers4,
594 (m.merge).stanumbers5,
595 (m.merge).stavalues1,
596 (m.merge).stavalues2,
597 (m.merge).stavalues3,
599 ,(m.merge).stavalues5
600 FROM (SELECT dbms_stats.merge(v, NULL)
601 FROM dbms_stats._column_stats_locked v
602 WHERE starelid = 'st0'::regclass
603 AND staattnum = '2'::int2) m;
604 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
605 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
606 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
610 SELECT dbms_stats.merge(NULL, NULL);
617 SELECT (m.merge).starelid::regclass,
619 (m.merge).stainherit,
620 (m.merge).stanullfrac,
622 (m.merge).stadistinct,
633 (m.merge).stanumbers1,
634 (m.merge).stanumbers2,
635 (m.merge).stanumbers3,
636 (m.merge).stanumbers4,
637 (m.merge).stanumbers5,
638 (m.merge).stavalues1,
639 (m.merge).stavalues2,
640 (m.merge).stavalues3,
642 ,(m.merge).stavalues5
643 FROM (SELECT dbms_stats.merge(v, s)
644 FROM dbms_stats._column_stats_locked v,
646 WHERE v.starelid = 'st0'::regclass
647 AND v.staattnum = '2'::int2
648 AND s.starelid = 'st0'::regclass
649 AND s.staattnum = '1'::int2) m;
650 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
651 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
652 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
656 SELECT (m.merge).starelid::regclass,
658 (m.merge).stainherit,
659 (m.merge).stanullfrac,
661 (m.merge).stadistinct,
672 (m.merge).stanumbers1,
673 (m.merge).stanumbers2,
674 (m.merge).stanumbers3,
675 (m.merge).stanumbers4,
676 (m.merge).stanumbers5,
677 (m.merge).stavalues1,
678 (m.merge).stavalues2,
679 (m.merge).stavalues3,
681 ,(m.merge).stavalues5
682 FROM (SELECT dbms_stats.merge(v, s)
683 FROM dbms_stats._column_stats_locked v,
685 WHERE v.starelid = 'st0'::regclass
686 AND v.staattnum = '2'::int2
687 AND s.starelid = 'st0'::regclass
688 AND s.staattnum = '1'::int2) m;
689 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
690 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
691 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
695 SELECT dbms_stats.merge1(v, s)
696 FROM dbms_stats._column_stats_locked v,
698 WHERE v.starelid = 'st0'::regclass
699 AND v.staattnum = '2'::int2
700 AND s.starelid = 'st0'::regclass
701 AND s.staattnum = '1'::int2;
702 ERROR: return type must be a row type
704 SELECT dbms_stats.merge(NULL, (
705 s.starelid::regclass, s.staattnum, s.stainherit,
706 s.stanullfrac, s.stawidth, s.stadistinct,
707 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
709 s.staop1, s.staop2, s.staop3,
711 NULL, s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
713 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
717 WHERE s.starelid = 'st0'::regclass
718 AND s.staattnum = '1'::int2;
725 SELECT (m.merge).starelid::regclass,
727 (m.merge).stainherit,
728 (m.merge).stanullfrac,
730 (m.merge).stadistinct,
741 (m.merge).stanumbers1,
742 (m.merge).stanumbers2,
743 (m.merge).stanumbers3,
744 (m.merge).stanumbers4,
745 (m.merge).stanumbers5,
746 (m.merge).stavalues1,
747 (m.merge).stavalues2,
748 (m.merge).stavalues3,
750 ,(m.merge).stavalues5
751 FROM (SELECT dbms_stats.merge(NULL, (
752 s.starelid::regclass, s.staattnum, s.stainherit,
753 s.stanullfrac, s.stawidth, s.stadistinct,
754 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
756 s.staop1, s.staop2, s.staop3, s.staop4,
758 NULL, s.stanumbers2, s.stanumbers3, s.stanumbers4,
760 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
764 WHERE s.starelid = 'st0'::regclass
765 AND s.staattnum = '1'::int2) m;
766 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
767 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+---------------+-------------------+-----------------------
768 st0 | 1 | f | 1 | 1 | 1 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | (null) | {1,1} | {1,2} | {1,3} | {1,5} | {1,2} | {1,2,1,2} | {1,2,1,2,1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
772 SELECT dbms_stats.merge((
773 v.starelid::regclass, v.staattnum, v.stainherit,
774 v.stanullfrac, v.stawidth, v.stadistinct,
775 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
777 v.staop1, v.staop2, v.staop3,
779 NULL, v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
781 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
784 FROM dbms_stats._column_stats_locked v
785 WHERE v.starelid = 'st0'::regclass
786 AND v.staattnum = '2'::int2;
793 SELECT (m.merge).starelid::regclass,
795 (m.merge).stainherit,
796 (m.merge).stanullfrac,
798 (m.merge).stadistinct,
809 (m.merge).stanumbers1,
810 (m.merge).stanumbers2,
811 (m.merge).stanumbers3,
812 (m.merge).stanumbers4,
813 (m.merge).stanumbers5,
814 (m.merge).stavalues1,
815 (m.merge).stavalues2,
816 (m.merge).stavalues3,
818 ,(m.merge).stavalues5
819 FROM (SELECT dbms_stats.merge((
820 v.starelid::regclass, v.staattnum, v.stainherit,
821 v.stanullfrac, v.stawidth, v.stadistinct,
822 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
824 v.staop1, v.staop2, v.staop3, v.staop4,
826 NULL, v.stanumbers2, v.stanumbers3, v.stanumbers4,
828 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
831 FROM dbms_stats._column_stats_locked v
832 WHERE v.starelid = 'st0'::regclass
833 AND v.staattnum = '2'::int2) m;
834 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
835 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
836 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | (null) | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
840 SELECT dbms_stats.merge((
841 v.starelid::regclass, v.staattnum, v.stainherit,
842 v.stanullfrac, v.stawidth, v.stadistinct,
843 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
845 v.staop1, v.staop2, v.staop3,
847 NULL, v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
849 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
852 s.starelid::regclass, s.staattnum, s.stainherit,
853 s.stanullfrac, s.stawidth, s.stadistinct,
854 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
856 s.staop1, s.staop2, s.staop3,
858 NULL, s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
860 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
863 FROM dbms_stats._column_stats_locked v,
865 WHERE v.starelid = 'st0'::regclass
866 AND v.staattnum = '2'::int2
867 AND s.starelid = 'st0'::regclass
868 AND s.staattnum = '1'::int2;
869 LOG: pg_dbms_stats: bad statistics
870 DETAIL: column "staop5" should not be null
877 SELECT (m.merge).starelid::regclass,
879 (m.merge).stainherit,
880 (m.merge).stanullfrac,
882 (m.merge).stadistinct,
893 (m.merge).stanumbers1,
894 (m.merge).stanumbers2,
895 (m.merge).stanumbers3,
896 (m.merge).stanumbers4,
897 (m.merge).stanumbers5,
898 (m.merge).stavalues1,
899 (m.merge).stavalues2,
900 (m.merge).stavalues3,
902 ,(m.merge).stavalues5
903 FROM (SELECT dbms_stats.merge((
904 v.starelid::regclass, v.staattnum, v.stainherit,
905 v.stanullfrac, v.stawidth, v.stadistinct,
906 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
908 v.staop1, v.staop2, v.staop3, v.staop4,
910 NULL, v.stanumbers2, v.stanumbers3, v.stanumbers4,
912 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
915 s.starelid::regclass, s.staattnum, s.stainherit,
916 s.stanullfrac, s.stawidth, s.stadistinct,
917 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
919 s.staop1, s.staop2, s.staop3, s.staop4,
921 NULL, s.stanumbers2, s.stanumbers3, s.stanumbers4,
923 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
926 FROM dbms_stats._column_stats_locked v,
928 WHERE v.starelid = 'st0'::regclass
929 AND v.staattnum = '2'::int2
930 AND s.starelid = 'st0'::regclass
931 AND s.staattnum = '1'::int2) m;
932 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
933 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
934 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | (null) | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
938 SELECT (m.merge).starelid::regclass,
940 (m.merge).stainherit,
941 (m.merge).stanullfrac,
943 (m.merge).stadistinct,
954 (m.merge).stanumbers1,
955 (m.merge).stanumbers2,
956 (m.merge).stanumbers3,
957 (m.merge).stanumbers4,
958 (m.merge).stanumbers5,
959 (m.merge).stavalues1,
960 (m.merge).stavalues2,
961 (m.merge).stavalues3,
963 ,(m.merge).stavalues5
964 FROM (SELECT dbms_stats.merge((
967 NULL, NULL, NULL, NULL,
968 NULL, NULL, NULL, NULL,
969 NULL, NULL, NULL, NULL,
970 NULL, NULL, NULL, NULL
971 ,NULL, NULL, NULL, NULL
974 WHERE s.starelid = 'st0'::regclass
975 AND s.staattnum = '1'::int2) m;
976 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
977 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+---------------+-------------------+-----------------------
978 st0 | 1 | f | 1 | 1 | 1 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | {1,4} | {1,1} | {1,2} | {1,3} | {1,5} | {1,2} | {1,2,1,2} | {1,2,1,2,1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
982 SELECT (m.merge).starelid::regclass,
984 (m.merge).stainherit,
985 (m.merge).stanullfrac,
987 (m.merge).stadistinct,
998 (m.merge).stanumbers1,
999 (m.merge).stanumbers2,
1000 (m.merge).stanumbers3,
1001 (m.merge).stanumbers4,
1002 (m.merge).stanumbers5,
1003 (m.merge).stavalues1,
1004 (m.merge).stavalues2,
1005 (m.merge).stavalues3,
1006 (m.merge).stavalues4
1007 ,(m.merge).stavalues5
1008 FROM (SELECT dbms_stats.merge(v, (
1011 NULL, NULL, NULL, NULL,
1012 NULL, NULL, NULL, NULL,
1013 NULL, NULL, NULL, NULL,
1014 NULL, NULL, NULL, NULL,
1015 NULL, NULL, NULL, NULL))
1016 FROM dbms_stats._column_stats_locked v
1017 WHERE v.starelid = 'st0'::regclass
1018 AND v.staattnum = '2'::int2) m;
1019 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
1020 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
1021 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
1025 SELECT (m.merge).starelid::regclass,
1026 (m.merge).staattnum,
1027 (m.merge).stainherit,
1028 (m.merge).stanullfrac,
1030 (m.merge).stadistinct,
1041 (m.merge).stanumbers1,
1042 (m.merge).stanumbers2,
1043 (m.merge).stanumbers3,
1044 (m.merge).stanumbers4,
1045 (m.merge).stanumbers5,
1046 (m.merge).stavalues1,
1047 (m.merge).stavalues2,
1048 (m.merge).stavalues3,
1049 (m.merge).stavalues4
1050 ,(m.merge).stavalues5
1051 FROM (SELECT dbms_stats.merge(v, s)
1052 FROM dbms_stats._column_stats_locked v,
1054 WHERE v.starelid = 'st0'::regclass
1055 AND v.staattnum = '2'::int2
1056 AND s.starelid = 'st0'::regclass
1057 AND s.staattnum = '1'::int2) m;
1058 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
1059 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
1060 st0 | 2 | t | -2 | -2 | -2 | 2 | 3 | 4 | 1 | 5 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
1064 SELECT dbms_stats.merge((
1065 v.starelid::regclass, v.staattnum, v.stainherit,
1066 v.stanullfrac, v.stawidth, v.stadistinct,
1067 NULL, NULL, NULL, NULL,
1068 NULL, NULL, NULL, NULL,
1069 NULL, NULL, NULL, NULL,
1070 NULL, NULL, NULL, NULL
1071 ,NULL, NULL, NULL, NULL
1073 s.starelid::regclass, s.staattnum, s.stainherit,
1074 s.stanullfrac, s.stawidth, s.stadistinct,
1075 NULL, NULL, NULL, NULL,
1076 NULL, NULL, NULL, NULL,
1077 NULL, NULL, NULL, NULL,
1078 NULL, NULL, NULL, NULL,
1079 NULL, NULL, NULL, NULL))
1080 FROM dbms_stats._column_stats_locked v,
1082 WHERE v.starelid = 'st0'::regclass
1083 AND v.staattnum = '2'::int2
1084 AND s.starelid = 'st0'::regclass
1085 AND s.staattnum = '1'::int2;
1086 LOG: pg_dbms_stats: bad statistics
1087 DETAIL: column "stakind1" should not be null
1094 SELECT (m.merge).starelid::regclass,
1095 (m.merge).staattnum,
1096 (m.merge).stainherit,
1097 (m.merge).stanullfrac,
1099 (m.merge).stadistinct,
1110 (m.merge).stanumbers1,
1111 (m.merge).stanumbers2,
1112 (m.merge).stanumbers3,
1113 (m.merge).stanumbers4,
1114 (m.merge).stanumbers5,
1115 (m.merge).stavalues1,
1116 (m.merge).stavalues2,
1117 (m.merge).stavalues3,
1118 (m.merge).stavalues4
1119 ,(m.merge).stavalues5
1120 FROM (SELECT dbms_stats.merge((
1121 v.starelid::regclass, v.staattnum, v.stainherit,
1122 v.stanullfrac, v.stawidth, v.stadistinct,
1123 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
1125 v.staop1, v.staop2, v.staop3,
1127 NULL, v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1129 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1132 s.starelid::regclass, s.staattnum, s.stainherit,
1133 s.stanullfrac, s.stawidth, s.stadistinct,
1134 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
1136 s.staop1, s.staop2, s.staop3, s.staop4,
1138 s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1140 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1143 FROM dbms_stats._column_stats_locked v,
1145 WHERE v.starelid = 'st0'::regclass
1146 AND v.staattnum = '1'::int2
1147 AND s.starelid = 'st0'::regclass
1148 AND s.staattnum = '1'::int2) m;
1149 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
1150 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+---------------+-------------------+-----------------------
1151 st0 | 1 | t | -1 | -1 | -1 | 4 | 1 | 2 | 3 | 5 | 14 | 11 | 12 | 13 | 15 | {1,4} | {1,1} | {1,2} | {1,3} | {1,5} | {1,2} | {1,2,1,2} | {1,2,1,2,1,2} | {1,2,1,2,1,2,1,2} | {1,2,1,2,1,2,1,2,1,2}
1155 SELECT dbms_stats.merge((
1156 v.starelid::regclass, v.staattnum, v.stainherit,
1157 v.stanullfrac, v.stawidth, v.stadistinct,
1158 v.stakind1, v.stakind2, v.stakind3, v.stakind4,
1160 v.staop1, v.staop2, v.staop3,
1162 NULL, v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1164 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1167 s.starelid::regclass, s.staattnum, s.stainherit,
1168 s.stanullfrac, s.stawidth, s.stadistinct,
1169 s.stakind1, s.stakind2, s.stakind3, s.stakind4,
1171 s.staop1, s.staop2, s.staop3,
1173 NULL, s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1175 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1178 FROM dbms_stats._column_stats_locked v,
1180 WHERE v.starelid = 'st0'::regclass
1181 AND v.staattnum = '1'::int2
1182 AND s.starelid = 'st0'::regclass
1183 AND s.staattnum = '1'::int2;
1184 LOG: pg_dbms_stats: bad statistics
1185 DETAIL: column "staop5" should not be null
1192 SELECT (m.merge).starelid::regclass,
1193 (m.merge).staattnum,
1194 (m.merge).stainherit,
1195 (m.merge).stanullfrac,
1197 (m.merge).stadistinct,
1208 (m.merge).stanumbers1,
1209 (m.merge).stanumbers2,
1210 (m.merge).stanumbers3,
1211 (m.merge).stanumbers4,
1212 (m.merge).stanumbers5,
1213 (m.merge).stavalues1,
1214 (m.merge).stavalues2,
1215 (m.merge).stavalues3,
1216 (m.merge).stavalues4
1217 ,(m.merge).stavalues5
1218 FROM (SELECT dbms_stats.merge((
1219 v.starelid::regclass, v.staattnum, v.stainherit,
1220 v.stanullfrac, v.stawidth, v.stadistinct,
1223 v.staop1, v.staop2, v.staop3, v.staop4,
1225 v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1227 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1230 s.starelid::regclass, s.staattnum, s.stainherit,
1231 s.stanullfrac, s.stawidth, s.stadistinct,
1234 s.staop1, s.staop2, s.staop3, s.staop4,
1236 s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1238 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1241 FROM dbms_stats._column_stats_locked v,
1243 WHERE v.starelid = 'st0'::regclass
1244 AND v.staattnum = '2'::int2
1245 AND s.starelid = 'st0'::regclass
1246 AND s.staattnum = '1'::int2) m;
1247 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
1248 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
1249 st0 | 2 | t | -2 | -2 | -2 | 1 | 1 | 1 | 1 | 1 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
1253 SELECT (m.merge).starelid::regclass,
1254 (m.merge).staattnum,
1255 (m.merge).stainherit,
1256 (m.merge).stanullfrac,
1258 (m.merge).stadistinct,
1269 (m.merge).stanumbers1,
1270 (m.merge).stanumbers2,
1271 (m.merge).stanumbers3,
1272 (m.merge).stanumbers4,
1273 (m.merge).stanumbers5,
1274 (m.merge).stavalues1,
1275 (m.merge).stavalues2,
1276 (m.merge).stavalues3,
1277 (m.merge).stavalues4
1278 ,(m.merge).stavalues5
1279 FROM (SELECT dbms_stats.merge((v.starelid::regclass, v.staattnum, v.stainherit,
1280 v.stanullfrac, v.stawidth, v.stadistinct,
1283 v.staop1, v.staop2, v.staop3, v.staop4,
1285 v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1287 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1290 s.starelid::regclass, s.staattnum, s.stainherit,
1291 s.stanullfrac, s.stawidth, s.stadistinct,
1294 s.staop1, s.staop2, s.staop3, s.staop4,
1296 s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1298 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1301 FROM dbms_stats._column_stats_locked v,
1303 WHERE v.starelid = 'st0'::regclass
1304 AND v.staattnum = '2'::int2
1305 AND s.starelid = 'st0'::regclass
1306 AND s.staattnum = '1'::int2) m;
1307 starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
1308 ----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+---------------------------+-------------------+------------+-----------------------------------+-------------------------------------------
1309 st0 | 2 | t | -2 | -2 | -2 | 2 | 2 | 2 | 2 | 2 | 22 | 23 | 24 | 21 | 25 | {-2,22} | {-2,23} | {-2,24} | {-2,21} | {-2,25} | {"test ","test ","test "} | {"test ","test "} | {"test "} | {"test ","test ","test ","test "} | {"test ","test ","test ","test ","test "}
1313 SELECT dbms_stats.merge((v.starelid::regclass, '2', v.stainherit,
1314 v.stanullfrac, v.stawidth, v.stadistinct,
1317 v.staop1, v.staop2, v.staop3, v.staop4,
1319 v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1321 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1324 s.starelid::regclass, s.staattnum, s.stainherit,
1325 s.stanullfrac, s.stawidth, s.stadistinct,
1328 s.staop1, s.staop2, s.staop3, s.staop4,
1330 s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1332 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1335 FROM dbms_stats._column_stats_locked v,
1337 WHERE v.starelid = 'st0'::regclass
1338 AND v.staattnum = '1'::int2
1339 AND s.starelid = 'st0'::regclass
1340 AND s.staattnum = '1'::int2;
1341 LOG: pg_dbms_stats: bad column type
1342 DETAIL: type of column "name" has been changed
1343 HINT: need to execute dbms_stats.unlock('st0', 'name')
1350 SELECT dbms_stats.merge((v.starelid::regclass, '2', v.stainherit,
1351 v.stanullfrac, v.stawidth, v.stadistinct,
1354 v.staop1, v.staop2, v.staop3, v.staop4,
1356 v.stanumbers1, v.stanumbers2, v.stanumbers3, v.stanumbers4,
1358 v.stavalues1, v.stavalues2, v.stavalues3, v.stavalues4
1361 s.starelid::regclass, s.staattnum, s.stainherit,
1362 s.stanullfrac, s.stawidth, s.stadistinct,
1365 s.staop1, s.staop2, s.staop3, s.staop4,
1367 s.stanumbers1, s.stanumbers2, s.stanumbers3, s.stanumbers4,
1369 s.stavalues1, s.stavalues2, s.stavalues3, s.stavalues4
1372 FROM dbms_stats._column_stats_locked v,
1374 WHERE v.starelid = 'st0'::regclass
1375 AND v.staattnum = '1'::int2
1376 AND s.starelid = 'st0'::regclass
1377 AND s.staattnum = '1'::int2;
1378 LOG: pg_dbms_stats: bad column type
1379 DETAIL: type of column "name" has been changed
1380 HINT: need to execute dbms_stats.unlock('st0', 'name')
1386 RESET client_min_messages;
1387 SELECT dbms_stats.unlock_database_stats();
1388 unlock_database_stats
1389 -----------------------
1394 * No.6-4 dbms_stats.is_target_relkind
1397 SELECT dbms_stats.is_target_relkind('f');
1404 SELECT dbms_stats.is_target_relkind('m');
1411 * No.7-1 dbms_stats.backup
1413 DELETE FROM dbms_stats.backup_history;
1414 INSERT INTO dbms_stats.backup_history(id, time, unit) values(1, '2012-01-01', 'd');
1416 SELECT dbms_stats.backup(1, 's0.sft0'::regclass, NULL);
1422 SELECT count(*) FROM dbms_stats.relation_stats_backup;
1428 SELECT count(*) FROM dbms_stats.column_stats_backup;
1435 DELETE FROM dbms_stats.relation_stats_backup;
1436 SELECT dbms_stats.backup(1, 's0.smv0'::regclass, NULL);
1442 SELECT count(*) FROM dbms_stats.relation_stats_backup;
1448 SELECT count(*) FROM dbms_stats.column_stats_backup;
1455 DELETE FROM dbms_stats.relation_stats_backup;
1456 SELECT dbms_stats.backup(1, NULL, 1::int2);
1462 SELECT relid::regclass FROM dbms_stats.relation_stats_backup
1485 SELECT starelid::regclass, staattnum FROM dbms_stats.column_stats_backup
1486 GROUP BY starelid, staattnum
1487 ORDER BY starelid, staattnum;
1488 starelid | staattnum
1489 ----------+-----------
1502 DELETE FROM dbms_stats.relation_stats_backup;
1503 SELECT dbms_stats.backup(1, NULL::regclass, NULL);
1509 SELECT relid::regclass FROM dbms_stats.relation_stats_backup
1532 SELECT starelid::regclass, staattnum FROM dbms_stats.column_stats_backup
1533 GROUP BY starelid, staattnum
1534 ORDER BY starelid, staattnum;
1535 starelid | staattnum
1536 ----------+-----------
1557 DELETE FROM dbms_stats.relation_stats_backup;
1558 \! psql contrib_regression -c "SELECT dbms_stats.backup(NULL, 's0.st0'::regclass, NULL)" > results/ut_no2_1_17.out 2>&1
1559 SELECT count(*) FROM dbms_stats.relation_stats_backup;
1565 SELECT count(*) FROM dbms_stats.column_stats_backup;
1572 * No.8-1 dbms_stats.backup
1574 SELECT setval('dbms_stats.backup_history_id_seq',1, false);
1581 * Stab function dbms_stats.backup
1583 ALTER FUNCTION dbms_stats.backup(
1587 RENAME TO truth_func_backup;
1588 CREATE OR REPLACE FUNCTION dbms_stats.backup(
1595 RAISE NOTICE 'arguments are %, %, %', $1, $2, $3;
1601 DELETE FROM dbms_stats.backup_history;
1602 SELECT dbms_stats.backup('s0.st0'::regclass, 'id', 'dummy comment');
1603 NOTICE: arguments are 1, s0.st0, 1
1604 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1605 VALUES (current_timestamp, unit_type, $3)
1606 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1607 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1613 SELECT id, unit, comment FROM dbms_stats.backup_history;
1615 ----+------+---------------
1616 1 | c | dummy comment
1620 DELETE FROM dbms_stats.backup_history;
1621 SELECT dbms_stats.backup('s0.st0'::regclass, NULL, 'dummy comment');
1622 NOTICE: arguments are 2, s0.st0, <NULL>
1623 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1624 VALUES (current_timestamp, unit_type, $3)
1625 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1626 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1632 SELECT id, unit, comment FROM dbms_stats.backup_history;
1634 ----+------+---------------
1635 2 | t | dummy comment
1639 DELETE FROM dbms_stats.backup_history;
1640 SELECT dbms_stats.backup(NULL::regclass, 'id', 'dummy comment');
1641 ERROR: relation is required
1642 SELECT id, unit, comment FROM dbms_stats.backup_history;
1644 ----+------+---------
1648 DELETE FROM dbms_stats.backup_history;
1649 SELECT dbms_stats.backup(NULL::regclass, NULL, 'dummy comment');
1650 NOTICE: arguments are 3, <NULL>, <NULL>
1651 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1652 VALUES (current_timestamp, unit_type, $3)
1653 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1654 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1660 SELECT id, unit, comment FROM dbms_stats.backup_history;
1662 ----+------+---------------
1663 3 | d | dummy comment
1667 DELETE FROM dbms_stats.backup_history;
1668 SELECT dbms_stats.backup(0, NULL, 'dummy comment');
1669 ERROR: relation "-" does not exist
1670 SELECT id, unit, comment FROM dbms_stats.backup_history;
1672 ----+------+---------
1676 DELETE FROM dbms_stats.backup_history;
1677 SELECT dbms_stats.backup('s0.st0'::regclass, NULL, 'dummy comment');
1678 NOTICE: arguments are 4, s0.st0, <NULL>
1679 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1680 VALUES (current_timestamp, unit_type, $3)
1681 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1682 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1688 SELECT id, unit, comment FROM dbms_stats.backup_history;
1690 ----+------+---------------
1691 4 | t | dummy comment
1695 DELETE FROM dbms_stats.backup_history;
1696 SELECT dbms_stats.backup(
1697 'pg_toast.pg_toast_2618'::regclass,
1700 ERROR: can not backup statistics of "pg_toast.pg_toast_2618" with relkind "t"
1701 HINT: only tables and indexes are supported
1702 SELECT id, unit, comment FROM dbms_stats.backup_history;
1704 ----+------+---------
1708 DELETE FROM dbms_stats.backup_history;
1709 SELECT dbms_stats.backup('s0.st0_idx'::regclass, NULL, 'dummy comment');
1710 NOTICE: arguments are 5, s0.st0_idx, <NULL>
1711 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1712 VALUES (current_timestamp, unit_type, $3)
1713 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1714 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1720 SELECT id, unit, comment FROM dbms_stats.backup_history;
1722 ----+------+---------------
1723 5 | t | dummy comment
1727 DELETE FROM dbms_stats.backup_history;
1728 SELECT dbms_stats.backup('s0.ss0'::regclass, NULL, 'dummy comment');
1729 ERROR: can not backup statistics of "s0.ss0" with relkind "S"
1730 HINT: only tables and indexes are supported
1731 SELECT id, unit, comment FROM dbms_stats.backup_history;
1733 ----+------+---------
1737 DELETE FROM dbms_stats.backup_history;
1738 SELECT dbms_stats.backup('s0.sc0'::regclass, NULL, 'dummy comment');
1739 ERROR: can not backup statistics of "s0.sc0" with relkind "c"
1740 HINT: only tables and indexes are supported
1741 SELECT id, unit, comment FROM dbms_stats.backup_history;
1743 ----+------+---------
1747 DELETE FROM dbms_stats.backup_history;
1748 SELECT dbms_stats.backup('s0.sft0'::regclass, NULL, 'dummy comment');
1749 NOTICE: arguments are 6, s0.sft0, <NULL>
1750 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1751 VALUES (current_timestamp, unit_type, $3)
1752 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1753 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1759 SELECT id, unit, comment FROM dbms_stats.backup_history;
1761 ----+------+---------------
1762 6 | t | dummy comment
1766 DELETE FROM dbms_stats.backup_history;
1767 SELECT dbms_stats.backup('s0.smv0'::regclass, NULL, 'dummy comment');
1768 NOTICE: arguments are 7, s0.smv0, <NULL>
1769 CONTEXT: SQL statement "INSERT INTO dbms_stats.backup_history(time, unit, comment)
1770 VALUES (current_timestamp, unit_type, $3)
1771 RETURNING dbms_stats.backup(id, $1, set_attnum)"
1772 PL/pgSQL function dbms_stats.backup(regclass,text,text) line 42 at SQL statement
1778 SELECT id, unit, comment FROM dbms_stats.backup_history;
1780 ----+------+---------------
1781 7 | t | dummy comment
1785 DELETE FROM dbms_stats.backup_history;
1786 SELECT dbms_stats.backup('pg_catalog.pg_class'::regclass, NULL, 'dummy comment');
1787 ERROR: can not backup statistics of system catalog "pg_class"
1788 SELECT id, unit, comment FROM dbms_stats.backup_history;
1790 ----+------+---------
1794 DELETE FROM dbms_stats.backup_history;
1795 SELECT dbms_stats.backup('s0.st0'::regclass, 'dummy', 'dummy comment');
1796 ERROR: column "dummy" of "s0.st0" does not exist
1797 SELECT id, unit, comment FROM dbms_stats.backup_history;
1799 ----+------+---------
1803 DELETE FROM dbms_stats.backup_history;
1804 DELETE FROM pg_statistic
1805 WHERE starelid = 's0.st0'::regclass
1806 AND staattnum = 1::int2;
1807 SELECT count(*) FROM dbms_stats.column_stats_effective
1808 WHERE starelid = 's0.st0'::regclass
1809 AND staattnum = 1::int2;
1815 SELECT dbms_stats.backup('s0.st0'::regclass, 'id', 'dummy comment');
1816 ERROR: no statistic for column "id" of "s0.st0" exists
1817 SELECT id, unit, comment FROM dbms_stats.backup_history;
1819 ----+------+---------
1823 * Stab function dbms_stats.backup
1825 ALTER FUNCTION dbms_stats.backup(
1829 RENAME TO truth_func_backup;
1830 CREATE OR REPLACE FUNCTION dbms_stats.backup(
1831 relid regclass DEFAULT NULL,
1832 attname text DEFAULT NULL,
1833 comment text DEFAULT NULL)
1837 IF $3 = '<NULL>' THEN
1838 RAISE NOTICE 'third argument is not NULL but string "<NULL>"';
1840 RAISE NOTICE 'arguments are %, %, %', $1, $2, $3;
1846 * No.8-3 dbms_stats.backup_schema_stats
1848 SELECT setval('dbms_stats.backup_history_id_seq',9, false);
1855 SELECT dbms_stats.backup_schema_stats('s0', 'comment');
1856 NOTICE: arguments are 9, s0.st0, <NULL>
1857 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1859 FROM pg_catalog.pg_class c,
1860 pg_catalog.pg_namespace n
1861 WHERE n.nspname = schemaname
1862 AND c.relnamespace = n.oid
1863 AND dbms_stats.is_target_relkind(c.relkind)
1866 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1867 NOTICE: arguments are 9, s0.st0_idx, <NULL>
1868 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1870 FROM pg_catalog.pg_class c,
1871 pg_catalog.pg_namespace n
1872 WHERE n.nspname = schemaname
1873 AND c.relnamespace = n.oid
1874 AND dbms_stats.is_target_relkind(c.relkind)
1877 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1878 NOTICE: arguments are 9, s0.st1, <NULL>
1879 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1881 FROM pg_catalog.pg_class c,
1882 pg_catalog.pg_namespace n
1883 WHERE n.nspname = schemaname
1884 AND c.relnamespace = n.oid
1885 AND dbms_stats.is_target_relkind(c.relkind)
1888 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1889 NOTICE: arguments are 9, s0.st1_idx, <NULL>
1890 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1892 FROM pg_catalog.pg_class c,
1893 pg_catalog.pg_namespace n
1894 WHERE n.nspname = schemaname
1895 AND c.relnamespace = n.oid
1896 AND dbms_stats.is_target_relkind(c.relkind)
1899 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1900 NOTICE: arguments are 9, s0.st2, <NULL>
1901 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1903 FROM pg_catalog.pg_class c,
1904 pg_catalog.pg_namespace n
1905 WHERE n.nspname = schemaname
1906 AND c.relnamespace = n.oid
1907 AND dbms_stats.is_target_relkind(c.relkind)
1910 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1911 NOTICE: arguments are 9, s0.st2_idx, <NULL>
1912 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1914 FROM pg_catalog.pg_class c,
1915 pg_catalog.pg_namespace n
1916 WHERE n.nspname = schemaname
1917 AND c.relnamespace = n.oid
1918 AND dbms_stats.is_target_relkind(c.relkind)
1921 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1922 NOTICE: arguments are 9, s0.sft0, <NULL>
1923 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1925 FROM pg_catalog.pg_class c,
1926 pg_catalog.pg_namespace n
1927 WHERE n.nspname = schemaname
1928 AND c.relnamespace = n.oid
1929 AND dbms_stats.is_target_relkind(c.relkind)
1932 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1933 NOTICE: arguments are 9, s0.smv0, <NULL>
1934 CONTEXT: SQL statement "SELECT dbms_stats.backup(backup_id, cn.oid, NULL)
1936 FROM pg_catalog.pg_class c,
1937 pg_catalog.pg_namespace n
1938 WHERE n.nspname = schemaname
1939 AND c.relnamespace = n.oid
1940 AND dbms_stats.is_target_relkind(c.relkind)
1943 PL/pgSQL function dbms_stats.backup_schema_stats(text,text) line 16 at PERFORM
1945 ---------------------
1949 SELECT id, unit, comment FROM dbms_stats.backup_history
1953 ----+------+---------
1958 SELECT dbms_stats.backup_schema_stats('s00', 'comment');
1959 ERROR: schema "s00" does not exist
1960 SELECT id, unit, comment FROM dbms_stats.backup_history
1964 ----+------+---------
1969 SELECT dbms_stats.backup_schema_stats('pg_catalog', 'comment');
1970 ERROR: can not backup statistics of relation in system schema "pg_catalog"
1971 SELECT id, unit, comment FROM dbms_stats.backup_history
1975 ----+------+---------
1980 * Delete stab function dbms_stats.backup
1982 DROP FUNCTION dbms_stats.backup(
1986 ALTER FUNCTION dbms_stats.truth_func_backup(
1991 DROP FUNCTION dbms_stats.backup(
1995 ALTER FUNCTION dbms_stats.truth_func_backup(
2002 * create backup statistics state A
2004 DELETE FROM dbms_stats.backup_history;
2005 INSERT INTO dbms_stats.backup_history(id, time, unit)
2006 VALUES (1, '2012-02-29 23:59:56.999999', 'd');
2007 SELECT setval('dbms_stats.backup_history_id_seq',1);
2013 SELECT dbms_stats.backup();
2019 UPDATE dbms_stats.backup_history
2020 SET time = '2012-02-29 23:59:57'
2022 SELECT dbms_stats.backup('s0.st0');
2028 UPDATE dbms_stats.backup_history
2029 SET time = '2012-02-29 23:59:57.000001'
2031 SELECT dbms_stats.backup();
2037 UPDATE dbms_stats.backup_history
2038 SET time = '2012-02-29 23:59:58'
2040 DELETE FROM dbms_stats.relation_stats_backup
2042 SELECT dbms_stats.backup('s0.st0', 'id');
2048 UPDATE dbms_stats.backup_history
2049 SET time = '2012-03-01 00:00:00'
2051 SELECT dbms_stats.backup('s0.st0');
2057 UPDATE dbms_stats.backup_history
2058 SET time = '2012-03-01 00:00:02'
2060 SELECT dbms_stats.backup('public.st0');
2066 UPDATE dbms_stats.backup_history
2067 SET time = '2012-03-01 00:00:04'
2069 INSERT INTO dbms_stats.backup_history(time, unit)
2070 VALUES ('2012-03-01 00:00:06', 's');
2071 SELECT dbms_stats.backup(8, c.oid, NULL)
2072 FROM pg_catalog.pg_class c,
2073 pg_catalog.pg_namespace n
2074 WHERE n.nspname = 's0'
2075 AND c.relnamespace = n.oid
2076 AND c.relkind IN ('r', 'i');
2087 SELECT * FROM dbms_stats.backup_history
2089 id | time | unit | comment
2090 ----+-------------------------------------+------+---------
2091 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
2092 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
2093 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
2094 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
2095 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
2096 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
2097 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
2098 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
2101 SELECT * FROM relations_backup_v;
2102 id | relid | relname | relpages | reltuples | relallvisible | curpages
2103 ----+------------+----------------+----------+-----------+---------------+----------
2104 2 | pt0 | public.pt0 | 0 | 0 | 0 | 0
2105 2 | pt0_idx | public.pt0_idx | 2 | 0 | 0 | 2
2106 2 | st0 | public.st0 | 1 | 2 | 1 | 1
2107 2 | st0_idx | public.st0_idx | 2 | 2 | 0 | 2
2108 2 | st1 | public.st1 | 45 | 10000 | 45 | 45
2109 2 | s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2110 2 | s0.st0_idx | s0.st0_idx | 2 | 2 | 0 | 2
2111 2 | s0.st1 | s0.st1 | 1 | 3 | 1 | 1
2112 2 | s0.st1_idx | s0.st1_idx | 2 | 3 | 0 | 2
2113 2 | s0.st2 | s0.st2 | 1 | 3 | 1 | 1
2114 2 | s0.st2_idx | s0.st2_idx | 2 | 3 | 0 | 2
2115 2 | s1.st0 | s1.st0 | 1 | 4 | 1 | 1
2116 2 | st1_idx | public.st1_idx | 30 | 10000 | 0 | 30
2117 2 | st1_exp | public.st1_exp | 30 | 10000 | 0 | 30
2118 2 | s0.sft0 | s0.sft0 | 1 | 10 | 0 | 0
2119 2 | s0.smv0 | s0.smv0 | 1 | 2 | 1 | 1
2120 3 | s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2121 5 | s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2122 6 | s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2123 7 | st0 | public.st0 | 1 | 2 | 1 | 1
2124 8 | s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2125 8 | s0.st0_idx | s0.st0_idx | 2 | 2 | 0 | 2
2126 8 | s0.st1 | s0.st1 | 1 | 3 | 1 | 1
2127 8 | s0.st1_idx | s0.st1_idx | 2 | 3 | 0 | 2
2128 8 | s0.st2 | s0.st2 | 1 | 3 | 1 | 1
2129 8 | s0.st2_idx | s0.st2_idx | 2 | 3 | 0 | 2
2132 SELECT * FROM columns_backup_v;
2133 id | statypid | starelid | staattnum | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
2134 ----+----------+----------+-----------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+------------------------+-------------+-------------+-------------+-------------+------------------------+------------+------------+------------+------------
2135 2 | 23 | st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2136 2 | 1042 | st0 | 2 | f | 0 | 6 | -0.5 | 1 | 3 | 0 | 0 | 0 | 1054 | 1058 | 0 | 0 | 0 | {1} | {1} | (null) | (null) | (null) | {"test "} | (null) | (null) | (null) | (null)
2137 2 | 23 | st1 | 1 | f | 0 | 4 | 3 | 1 | 3 | 0 | 0 | 0 | 96 | 97 | 0 | 0 | 0 | {0.3334,0.3333,0.3333} | {0.3332} | (null) | (null) | (null) | {1,0,2} | (null) | (null) | (null) | (null)
2138 2 | 25 | st1 | 2 | f | 0 | 2 | 3 | 1 | 3 | 0 | 0 | 0 | 98 | 664 | 0 | 0 | 0 | {0.3334,0.3333,0.3333} | {0.3332} | (null) | (null) | (null) | {1,0,2} | (null) | (null) | (null) | (null)
2139 2 | 23 | s0.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2140 2 | 23 | s0.st0 | 1 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2141 2 | 23 | s0.st0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2142 2 | 23 | s0.st0 | 2 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2143 2 | 23 | s0.st1 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {4,5,6} | (null) | (null) | (null) | (null)
2144 2 | 23 | s0.st1 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {40,50,60} | (null) | (null) | (null) | (null)
2145 2 | 23 | s0.st2 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3} | (null) | (null) | (null) | (null)
2146 2 | 25 | s0.st2 | 2 | f | 0 | 5 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {0.5} | (null) | (null) | (null) | {1,comment,test} | (null) | (null) | (null) | (null)
2147 2 | 23 | s1.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3,4} | (null) | (null) | (null) | (null)
2148 2 | 23 | s1.st0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {15,25,35,45} | (null) | (null) | (null) | (null)
2149 2 | 25 | st1_exp | 1 | f | 0 | 5 | 3 | 1 | 3 | 0 | 0 | 0 | 98 | 664 | 0 | 0 | 0 | {0.3334,0.3333,0.3333} | {0.3332} | (null) | (null) | (null) | {1,0,2} | (null) | (null) | (null) | (null)
2150 2 | 23 | s0.sft0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3,4,5,6,7,8,9,10} | (null) | (null) | (null) | (null)
2151 2 | 23 | s0.smv0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2152 2 | 23 | s0.smv0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2153 2 | 25 | s0.smv0 | 3 | f | 0 | 3 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,test} | (null) | (null) | (null) | (null)
2154 3 | 23 | s0.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2155 3 | 23 | s0.st0 | 1 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2156 3 | 23 | s0.st0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2157 3 | 23 | s0.st0 | 2 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2158 5 | 23 | s0.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2159 5 | 23 | s0.st0 | 1 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2160 6 | 23 | s0.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2161 6 | 23 | s0.st0 | 1 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2162 6 | 23 | s0.st0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2163 6 | 23 | s0.st0 | 2 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2164 7 | 23 | st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2165 7 | 1042 | st0 | 2 | f | 0 | 6 | -0.5 | 1 | 3 | 0 | 0 | 0 | 1054 | 1058 | 0 | 0 | 0 | {1} | {1} | (null) | (null) | (null) | {"test "} | (null) | (null) | (null) | (null)
2166 8 | 23 | s0.st0 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2167 8 | 23 | s0.st0 | 1 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2168 8 | 23 | s0.st0 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2169 8 | 23 | s0.st0 | 2 | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2170 8 | 23 | s0.st1 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {4,5,6} | (null) | (null) | (null) | (null)
2171 8 | 23 | s0.st1 | 2 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {40,50,60} | (null) | (null) | (null) | (null)
2172 8 | 23 | s0.st2 | 1 | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3} | (null) | (null) | (null) | (null)
2173 8 | 25 | s0.st2 | 2 | f | 0 | 5 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {0.5} | (null) | (null) | (null) | {1,comment,test} | (null) | (null) | (null) | (null)
2178 * No.9-1 dbms_stats.restore
2181 DELETE FROM dbms_stats._relation_stats_locked;
2183 SELECT relation::regclass, mode
2185 WHERE mode LIKE '%ExclusiveLock%'
2186 ORDER BY relation::regclass::text, mode;
2188 ----------+---------------
2189 (null) | ExclusiveLock
2192 SELECT dbms_stats.restore(2, 's0.st0', NULL);
2198 SELECT relation::regclass, mode
2200 WHERE mode LIKE '%ExclusiveLock%'
2201 ORDER BY relation::regclass::text, mode;
2203 ----------------------------------------+--------------------------
2204 dbms_stats._column_stats_locked | RowExclusiveLock
2205 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
2206 dbms_stats._column_stats_locked_pkey | RowExclusiveLock
2207 dbms_stats._relation_stats_locked | RowExclusiveLock
2208 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
2209 dbms_stats._relation_stats_locked_pkey | RowExclusiveLock
2210 (null) | ExclusiveLock
2211 (null) | ExclusiveLock
2215 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2223 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2224 starelid | attname | stainherit
2225 ----------+---------+------------
2233 DELETE FROM dbms_stats._relation_stats_locked;
2234 SELECT dbms_stats.restore(2, 'st0', NULL);
2240 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2248 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2249 starelid | attname | stainherit
2250 ----------+---------+------------
2256 DELETE FROM dbms_stats._relation_stats_locked;
2257 SELECT dbms_stats.restore(2, 's00.s0', NULL);
2258 ERROR: schema "s00" does not exist
2259 LINE 1: SELECT dbms_stats.restore(2, 's00.s0', NULL);
2261 SELECT count(*) FROM dbms_stats.column_stats_locked;
2267 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2274 DELETE FROM dbms_stats._relation_stats_locked;
2275 SELECT dbms_stats.restore(NULL, 's0.st0', NULL);
2276 ERROR: backup id is required
2277 SELECT count(*) FROM dbms_stats.column_stats_locked;
2283 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2290 DELETE FROM dbms_stats._relation_stats_locked;
2291 SELECT dbms_stats.restore(2, 's0.st0', 'id');
2297 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2305 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2306 starelid | attname | stainherit
2307 ----------+---------+------------
2313 DELETE FROM dbms_stats._relation_stats_locked;
2314 SELECT dbms_stats.restore(2, NULL, 'id');
2315 ERROR: relation is required
2316 SELECT count(*) FROM dbms_stats.column_stats_locked;
2322 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2329 DELETE FROM dbms_stats._relation_stats_locked;
2330 SELECT dbms_stats.restore(2, 's0.st0', NULL);
2336 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2344 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2345 starelid | attname | stainherit
2346 ----------+---------+------------
2354 DELETE FROM dbms_stats._relation_stats_locked;
2355 SELECT dbms_stats.restore(2, NULL, NULL);
2376 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2399 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2400 starelid | attname | stainherit
2401 ----------+---------+------------
2424 DELETE FROM dbms_stats._relation_stats_locked;
2425 SELECT dbms_stats.restore(0, 's0.st0', NULL);
2426 ERROR: backup id 0 does not exist
2427 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2434 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2435 starelid | attname | stainherit
2436 ----------+---------+------------
2440 DELETE FROM dbms_stats._relation_stats_locked;
2441 SELECT dbms_stats.restore(2, 0, 'id');
2442 ERROR: relation "-" does not exist
2443 SELECT count(*) FROM dbms_stats.column_stats_locked;
2449 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2456 DELETE FROM dbms_stats._relation_stats_locked;
2457 SELECT dbms_stats.restore(1, 's0.st0', NULL);
2458 ERROR: relation "s0.st0" does not exist in previous backup
2459 SELECT count(*) FROM dbms_stats.column_stats_locked;
2465 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2472 DELETE FROM dbms_stats._relation_stats_locked;
2473 SELECT dbms_stats.restore(2, 's0.st0', 'dummy');
2474 ERROR: column "dummy" of "s0.st0" does not exist
2475 SELECT count(*) FROM dbms_stats.column_stats_locked;
2481 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2488 DELETE FROM dbms_stats._relation_stats_locked;
2489 SELECT dbms_stats.restore(1, 's0.st0', 'id');
2490 ERROR: relation "s0.st0" does not exist in previous backup
2491 SELECT count(*) FROM dbms_stats.column_stats_locked;
2497 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2504 DELETE FROM dbms_stats._relation_stats_locked;
2505 ALTER TABLE s1.st0 DROP COLUMN id;
2506 SELECT dbms_stats.restore(2, 's1.st0', 'id');
2507 ERROR: column "id" of "s1.st0" does not exist
2508 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2515 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2516 starelid | attname | stainherit
2517 ----------+---------+------------
2521 DELETE FROM dbms_stats._relation_stats_locked;
2522 \set s1_st0_oid `psql contrib_regression -tA -c "SELECT c.oid FROM pg_class c, pg_namespace n WHERE c.relnamespace = n.oid AND n.nspname = 's1' AND c.relname = 'st0';"`
2524 -- SELECT dbms_stats.restore(2, :s1_st0_oid, NULL);
2525 -- To avoid test unstability caused by relation id alloction, the test
2526 -- above is omitted.
2527 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2533 SELECT count(*) FROM dbms_stats.column_stats_locked;
2539 CREATE TABLE s1.st0(id integer, num integer);
2540 INSERT INTO s1.st0 VALUES (1, 15), (2, 25), (3, 35), (4, 45);
2543 DELETE FROM dbms_stats._relation_stats_locked;
2544 SELECT dbms_stats.restore(2, 's0.st0', NULL);
2550 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2558 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2559 starelid | attname | stainherit
2560 ----------+---------+------------
2568 DELETE FROM dbms_stats._relation_stats_locked;
2569 INSERT INTO dbms_stats.relation_stats_backup(
2570 id, relid, relname, relpages, reltuples,
2574 'pg_toast.pg_toast_2618'::regclass,
2575 'pg_toast.pg_toast_2618', 1, 1,
2578 SELECT * FROM relations_backup_v
2580 AND relname = 'pg_toast.pg_toast_2618';
2581 id | relid | relname | relpages | reltuples | relallvisible | curpages
2582 ----+------------------------+------------------------+----------+-----------+---------------+----------
2583 2 | pg_toast.pg_toast_2618 | pg_toast.pg_toast_2618 | 1 | 1 | 1 | 1
2586 SELECT dbms_stats.restore(2, 'pg_toast.pg_toast_2618', NULL);
2591 SELECT count(*) FROM dbms_stats.column_stats_locked;
2597 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2603 DELETE FROM dbms_stats.relation_stats_backup
2605 AND relname = 'pg_toast.pg_toast_2618';
2607 DELETE FROM dbms_stats._relation_stats_locked;
2608 SELECT dbms_stats.restore(2, 's0.st0_idx', NULL);
2614 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
2622 SELECT starelid, attname, stainherit FROM columns_locked_v c;
2623 starelid | attname | stainherit
2624 ----------+---------+------------
2628 DELETE FROM dbms_stats._relation_stats_locked;
2629 INSERT INTO dbms_stats.relation_stats_backup(
2630 id, relid, relname, relpages, reltuples,
2633 VALUES (2, 's0.ss0'::regclass, 's0.ss0', 1, 1,
2636 SELECT * FROM relations_backup_v
2638 AND relname = 's0.ss0';
2639 id | relid | relname | relpages | reltuples | relallvisible | curpages
2640 ----+--------+---------+----------+-----------+---------------+----------
2641 2 | s0.ss0 | s0.ss0 | 1 | 1 | 1 | 1
2644 SELECT dbms_stats.restore(2, 's0.ss0', NULL);
2649 SELECT count(*) FROM dbms_stats.column_stats_locked;
2655 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2661 DELETE FROM dbms_stats.relation_stats_backup
2663 AND relname = 's0.ss0';
2665 DELETE FROM dbms_stats._relation_stats_locked;
2666 INSERT INTO dbms_stats.relation_stats_backup(
2667 id, relid, relname, relpages, reltuples,
2670 VALUES (2, 's0.sc0'::regclass, 's0.sc0', 1, 1,
2673 SELECT * FROM relations_backup_v
2675 AND relname = 's0.sc0';
2676 id | relid | relname | relpages | reltuples | relallvisible | curpages
2677 ----+--------+---------+----------+-----------+---------------+----------
2678 2 | s0.sc0 | s0.sc0 | 1 | 1 | 1 | 1
2681 SELECT dbms_stats.restore(2, 's0.sc0', NULL);
2686 SELECT count(*) FROM dbms_stats.column_stats_locked;
2692 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2698 DELETE FROM dbms_stats.relation_stats_backup
2700 AND relname = 's0.sc0';
2702 DELETE FROM dbms_stats._relation_stats_locked;
2703 INSERT INTO dbms_stats.relation_stats_backup(
2704 id, relid, relname, relpages, reltuples,
2707 VALUES (3, 's0.sft0'::regclass, 's0.sft0', 1, 1,
2710 SELECT * FROM relations_backup_v
2712 AND relname = 's0.sft0';
2713 id | relid | relname | relpages | reltuples | relallvisible | curpages
2714 ----+---------+---------+----------+-----------+---------------+----------
2715 3 | s0.sft0 | s0.sft0 | 1 | 1 | 1 | 1
2718 SELECT dbms_stats.restore(2, 's0.sft0', NULL);
2724 SELECT count(*) FROM dbms_stats.column_stats_locked;
2730 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2736 DELETE FROM dbms_stats.relation_stats_backup
2738 AND relname = 's0.sft0';
2740 DELETE FROM dbms_stats._relation_stats_locked;
2741 INSERT INTO dbms_stats.relation_stats_backup(
2742 id, relid, relname, relpages, reltuples,
2745 VALUES (3, 's0.smv0'::regclass, 's0.smv0', 1, 1,
2748 SELECT * FROM relations_backup_v
2750 AND relname = 's0.smv0';
2751 id | relid | relname | relpages | reltuples | relallvisible | curpages
2752 ----+---------+---------+----------+-----------+---------------+----------
2753 3 | s0.smv0 | s0.smv0 | 1 | 1 | 1 | 1
2756 SELECT dbms_stats.restore(2, 's0.smv0', NULL);
2762 SELECT count(*) FROM dbms_stats.column_stats_locked;
2768 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2774 DELETE FROM dbms_stats.relation_stats_backup
2776 AND relname = 's0.smv0';
2778 DELETE FROM dbms_stats._relation_stats_locked;
2779 INSERT INTO dbms_stats.relation_stats_backup(
2780 id, relid, relname, relpages, reltuples,
2783 VALUES (2, 'pg_catalog.pg_class'::regclass, 'pg_catalog.pg_class', 1, 1,
2786 SELECT * FROM relations_backup_v
2788 AND relname = 'pg_catalog.pg_class';
2789 id | relid | relname | relpages | reltuples | relallvisible | curpages
2790 ----+----------+---------------------+----------+-----------+---------------+----------
2791 2 | pg_class | pg_catalog.pg_class | 1 | 1 | 1 | 1
2794 SELECT dbms_stats.restore(2, 'pg_catalog.pg_class', NULL);
2799 SELECT count(*) FROM dbms_stats.column_stats_locked;
2805 SELECT count(*) FROM dbms_stats.relation_stats_locked;
2811 DELETE FROM dbms_stats.relation_stats_backup
2813 AND relname = 'pg_catalog.pg_class';
2815 DELETE FROM dbms_stats._relation_stats_locked;
2816 INSERT INTO dbms_stats._relation_stats_locked(relid, relname)
2817 VALUES ('s0.st0'::regclass, 's0.st0');
2818 INSERT INTO dbms_stats._column_stats_locked(starelid, staattnum, stainherit)
2819 SELECT starelid::regclass, staattnum, stainherit
2820 FROM dbms_stats.column_stats_effective
2821 WHERE starelid = 's0.st0'::regclass;
2822 SELECT id, unit, comment FROM dbms_stats.backup_history
2825 ----+------+---------
2829 SELECT * FROM columns_locked_v;
2830 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
2831 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
2832 s0.st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
2833 s0.st0 | 1 | id | t | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
2834 s0.st0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
2835 s0.st0 | 2 | num | t | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
2838 SELECT * FROM relations_locked_v;
2839 relid | relname | relpages | reltuples | relallvisible | curpages
2840 --------+---------+----------+-----------+---------------+----------
2841 s0.st0 | s0.st0 | (null) | (null) | (null) | (null)
2844 SELECT dbms_stats.restore(2, 's0.st0', NULL);
2850 SELECT * FROM relations_locked_v;
2851 relid | relname | relpages | reltuples | relallvisible | curpages
2852 --------+---------+----------+-----------+---------------+----------
2853 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2856 SELECT * FROM columns_locked_v;
2857 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
2858 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
2859 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2860 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2861 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2862 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2866 DELETE FROM dbms_stats._relation_stats_locked;
2867 SELECT id, unit, comment FROM dbms_stats.backup_history
2870 ----+------+---------
2874 SELECT dbms_stats.restore(2, 's0.st0', NULL);
2880 SELECT * FROM relations_locked_v;
2881 relid | relname | relpages | reltuples | relallvisible | curpages
2882 --------+---------+----------+-----------+---------------+----------
2883 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
2886 SELECT * FROM columns_locked_v;
2887 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
2888 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
2889 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
2890 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
2891 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
2892 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
2896 * Stab function dbms_stats.restore
2898 CREATE OR REPLACE FUNCTION dbms_stats.restore(
2900 relid regclass DEFAULT NULL,
2901 attname text DEFAULT NULL)
2902 RETURNS SETOF regclass AS
2905 RAISE NOTICE 'arguments are "%, %, %"', $1, $2, $3;
2907 SELECT c.oid::regclass
2908 FROM pg_class c, dbms_stats.relation_stats_backup b
2909 WHERE (c.oid = $2 OR $2 IS NULL)
2911 AND c.relkind IN ('r', 'i')
2912 AND (b.id <= $1 OR $1 IS NOT NULL)
2914 ORDER BY c.oid::regclass::text;
2919 * No.10-1 dbms_stats.restore_database_stats
2922 SELECT dbms_stats.restore_database_stats('2012-02-29 23:59:57');
2923 NOTICE: arguments are "2, pt0, <NULL>"
2924 CONTEXT: SQL function "restore_database_stats" statement 1
2925 NOTICE: arguments are "2, pt0_idx, <NULL>"
2926 CONTEXT: SQL function "restore_database_stats" statement 1
2927 NOTICE: arguments are "2, st0, <NULL>"
2928 CONTEXT: SQL function "restore_database_stats" statement 1
2929 NOTICE: arguments are "2, st0_idx, <NULL>"
2930 CONTEXT: SQL function "restore_database_stats" statement 1
2931 NOTICE: arguments are "2, st1, <NULL>"
2932 CONTEXT: SQL function "restore_database_stats" statement 1
2933 NOTICE: arguments are "2, s0.st0, <NULL>"
2934 CONTEXT: SQL function "restore_database_stats" statement 1
2935 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
2936 CONTEXT: SQL function "restore_database_stats" statement 1
2937 NOTICE: arguments are "2, s0.st1, <NULL>"
2938 CONTEXT: SQL function "restore_database_stats" statement 1
2939 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
2940 CONTEXT: SQL function "restore_database_stats" statement 1
2941 NOTICE: arguments are "2, s0.st2, <NULL>"
2942 CONTEXT: SQL function "restore_database_stats" statement 1
2943 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
2944 CONTEXT: SQL function "restore_database_stats" statement 1
2945 NOTICE: arguments are "2, st1_idx, <NULL>"
2946 CONTEXT: SQL function "restore_database_stats" statement 1
2947 NOTICE: arguments are "2, st1_exp, <NULL>"
2948 CONTEXT: SQL function "restore_database_stats" statement 1
2949 NOTICE: arguments are "2, s0.sft0, <NULL>"
2950 CONTEXT: SQL function "restore_database_stats" statement 1
2951 NOTICE: arguments are "2, s0.smv0, <NULL>"
2952 CONTEXT: SQL function "restore_database_stats" statement 1
2953 restore_database_stats
2954 ------------------------
2971 SELECT dbms_stats.restore_database_stats('2012-02-29 23:59:57.000002');
2972 NOTICE: arguments are "2, pt0, <NULL>"
2973 CONTEXT: SQL function "restore_database_stats" statement 1
2974 NOTICE: arguments are "2, pt0_idx, <NULL>"
2975 CONTEXT: SQL function "restore_database_stats" statement 1
2976 NOTICE: arguments are "2, st0, <NULL>"
2977 CONTEXT: SQL function "restore_database_stats" statement 1
2978 NOTICE: arguments are "2, st0_idx, <NULL>"
2979 CONTEXT: SQL function "restore_database_stats" statement 1
2980 NOTICE: arguments are "2, st1, <NULL>"
2981 CONTEXT: SQL function "restore_database_stats" statement 1
2982 NOTICE: arguments are "3, s0.st0, <NULL>"
2983 CONTEXT: SQL function "restore_database_stats" statement 1
2984 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
2985 CONTEXT: SQL function "restore_database_stats" statement 1
2986 NOTICE: arguments are "2, s0.st1, <NULL>"
2987 CONTEXT: SQL function "restore_database_stats" statement 1
2988 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
2989 CONTEXT: SQL function "restore_database_stats" statement 1
2990 NOTICE: arguments are "2, s0.st2, <NULL>"
2991 CONTEXT: SQL function "restore_database_stats" statement 1
2992 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
2993 CONTEXT: SQL function "restore_database_stats" statement 1
2994 NOTICE: arguments are "2, st1_idx, <NULL>"
2995 CONTEXT: SQL function "restore_database_stats" statement 1
2996 NOTICE: arguments are "2, st1_exp, <NULL>"
2997 CONTEXT: SQL function "restore_database_stats" statement 1
2998 NOTICE: arguments are "2, s0.sft0, <NULL>"
2999 CONTEXT: SQL function "restore_database_stats" statement 1
3000 NOTICE: arguments are "2, s0.smv0, <NULL>"
3001 CONTEXT: SQL function "restore_database_stats" statement 1
3002 restore_database_stats
3003 ------------------------
3020 SELECT dbms_stats.restore_database_stats('2012-01-01 00:00:00');
3021 restore_database_stats
3022 ------------------------
3025 --#No.10-1-4 is skipped after lock tests
3026 --#No.10-1-5 is skipped after lock tests
3028 SELECT dbms_stats.restore_database_stats('2012-02-29 23:59:57');
3029 NOTICE: arguments are "2, pt0, <NULL>"
3030 CONTEXT: SQL function "restore_database_stats" statement 1
3031 NOTICE: arguments are "2, pt0_idx, <NULL>"
3032 CONTEXT: SQL function "restore_database_stats" statement 1
3033 NOTICE: arguments are "2, st0, <NULL>"
3034 CONTEXT: SQL function "restore_database_stats" statement 1
3035 NOTICE: arguments are "2, st0_idx, <NULL>"
3036 CONTEXT: SQL function "restore_database_stats" statement 1
3037 NOTICE: arguments are "2, st1, <NULL>"
3038 CONTEXT: SQL function "restore_database_stats" statement 1
3039 NOTICE: arguments are "2, s0.st0, <NULL>"
3040 CONTEXT: SQL function "restore_database_stats" statement 1
3041 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
3042 CONTEXT: SQL function "restore_database_stats" statement 1
3043 NOTICE: arguments are "2, s0.st1, <NULL>"
3044 CONTEXT: SQL function "restore_database_stats" statement 1
3045 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
3046 CONTEXT: SQL function "restore_database_stats" statement 1
3047 NOTICE: arguments are "2, s0.st2, <NULL>"
3048 CONTEXT: SQL function "restore_database_stats" statement 1
3049 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
3050 CONTEXT: SQL function "restore_database_stats" statement 1
3051 NOTICE: arguments are "2, st1_idx, <NULL>"
3052 CONTEXT: SQL function "restore_database_stats" statement 1
3053 NOTICE: arguments are "2, st1_exp, <NULL>"
3054 CONTEXT: SQL function "restore_database_stats" statement 1
3055 NOTICE: arguments are "2, s0.sft0, <NULL>"
3056 CONTEXT: SQL function "restore_database_stats" statement 1
3057 NOTICE: arguments are "2, s0.smv0, <NULL>"
3058 CONTEXT: SQL function "restore_database_stats" statement 1
3059 restore_database_stats
3060 ------------------------
3077 * No.10-2 dbms_stats.restore_schema_stats
3080 SELECT dbms_stats.restore_schema_stats('s0', '2012-02-29 23:59:57');
3081 NOTICE: arguments are "2, s0.st0, <NULL>"
3082 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3083 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
3084 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3085 NOTICE: arguments are "2, s0.st1, <NULL>"
3086 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3087 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
3088 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3089 NOTICE: arguments are "2, s0.st2, <NULL>"
3090 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3091 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
3092 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3093 NOTICE: arguments are "2, s0.sft0, <NULL>"
3094 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3095 NOTICE: arguments are "2, s0.smv0, <NULL>"
3096 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3097 restore_schema_stats
3098 ----------------------
3108 SELECT dbms_stats.restore_schema_stats('s0', '2012-02-29 23:59:57.000002');
3109 NOTICE: arguments are "3, s0.st0, <NULL>"
3110 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3111 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
3112 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3113 NOTICE: arguments are "2, s0.st1, <NULL>"
3114 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3115 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
3116 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3117 NOTICE: arguments are "2, s0.st2, <NULL>"
3118 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3119 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
3120 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3121 NOTICE: arguments are "2, s0.sft0, <NULL>"
3122 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3123 NOTICE: arguments are "2, s0.smv0, <NULL>"
3124 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3125 restore_schema_stats
3126 ----------------------
3136 SELECT dbms_stats.restore_schema_stats('s0', '2012-01-01 00:00:00');
3137 restore_schema_stats
3138 ----------------------
3141 --#No.10-2-4 is skipped after lock tests
3142 --#No.10-2-5 is skipped after lock tests
3144 SELECT dbms_stats.restore_schema_stats('s0', '2012-02-29 23:59:57');
3145 NOTICE: arguments are "2, s0.st0, <NULL>"
3146 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3147 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
3148 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3149 NOTICE: arguments are "2, s0.st1, <NULL>"
3150 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3151 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
3152 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3153 NOTICE: arguments are "2, s0.st2, <NULL>"
3154 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3155 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
3156 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3157 NOTICE: arguments are "2, s0.sft0, <NULL>"
3158 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3159 NOTICE: arguments are "2, s0.smv0, <NULL>"
3160 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3161 restore_schema_stats
3162 ----------------------
3172 SELECT dbms_stats.restore_schema_stats('s0', '2012-02-29 23:59:57');
3173 NOTICE: arguments are "2, s0.st0, <NULL>"
3174 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3175 NOTICE: arguments are "2, s0.st0_idx, <NULL>"
3176 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3177 NOTICE: arguments are "2, s0.st1, <NULL>"
3178 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3179 NOTICE: arguments are "2, s0.st1_idx, <NULL>"
3180 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3181 NOTICE: arguments are "2, s0.st2, <NULL>"
3182 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3183 NOTICE: arguments are "2, s0.st2_idx, <NULL>"
3184 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3185 NOTICE: arguments are "2, s0.sft0, <NULL>"
3186 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3187 NOTICE: arguments are "2, s0.smv0, <NULL>"
3188 CONTEXT: PL/pgSQL function dbms_stats.restore_schema_stats(text,timestamp with time zone) line 10 at RETURN QUERY
3189 restore_schema_stats
3190 ----------------------
3199 --#No.10-2-8 is skipped after lock tests
3201 SELECT dbms_stats.restore_schema_stats('s00', '2012-02-29 23:59:57');
3202 ERROR: schema "s00" does not exist
3204 SELECT dbms_stats.restore_schema_stats('pg_catalog', '2012-02-29 23:59:57');
3205 ERROR: can not restore statistics of relation in system schema "pg_catalog"
3207 * No.10-7 dbms_stats.restore_stats
3210 DELETE FROM dbms_stats._relation_stats_locked;
3211 SELECT dbms_stats.restore_stats(NULL);
3217 DELETE FROM dbms_stats._relation_stats_locked;
3218 SELECT dbms_stats.restore_stats(0);
3219 ERROR: backup id 0 does not exist
3221 DELETE FROM dbms_stats._relation_stats_locked;
3223 SELECT relation::regclass, mode
3225 WHERE mode LIKE '%ExclusiveLock%'
3226 ORDER BY relation::regclass::text, mode;
3228 ----------+---------------
3229 (null) | ExclusiveLock
3232 SELECT dbms_stats.restore_stats(2);
3252 SELECT relation::regclass, mode
3254 WHERE mode LIKE '%ExclusiveLock%'
3255 ORDER BY relation::regclass::text, mode;
3257 ----------------------------------------+--------------------------
3258 dbms_stats._column_stats_locked | RowExclusiveLock
3259 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
3260 dbms_stats._column_stats_locked_pkey | RowExclusiveLock
3261 dbms_stats._relation_stats_locked | RowExclusiveLock
3262 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
3263 dbms_stats._relation_stats_locked_pkey | RowExclusiveLock
3264 (null) | ExclusiveLock
3265 (null) | ExclusiveLock
3269 SELECT relid::regclass FROM dbms_stats.relation_stats_locked
3291 SELECT starelid, attname, stainherit FROM columns_locked_v c;
3292 starelid | attname | stainherit
3293 ----------+---------+------------
3314 DELETE FROM dbms_stats._relation_stats_locked;
3315 INSERT INTO dbms_stats._relation_stats_locked(relid, relname)
3316 SELECT relid::regclass, relname
3317 FROM dbms_stats.relation_stats_effective;
3318 INSERT INTO dbms_stats._column_stats_locked(starelid, staattnum, stainherit)
3319 SELECT starelid::regclass, staattnum, stainherit
3320 FROM dbms_stats.column_stats_effective;
3321 SELECT id, unit, comment FROM dbms_stats.backup_history
3324 ----+------+---------
3328 SELECT * FROM columns_locked_v;
3329 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3330 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
3331 st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3332 st0 | 2 | name | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3333 st1 | 1 | val | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3334 st1 | 2 | str | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3335 s0.st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3336 s0.st0 | 1 | id | t | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3337 s0.st0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3338 s0.st0 | 2 | num | t | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3339 s0.st1 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3340 s0.st1 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3341 s0.st2 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3342 s0.st2 | 2 | txt | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3343 st1_exp | 1 | lower | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3344 s0.sft0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3345 s0.smv0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3346 s0.smv0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3347 s0.smv0 | 3 | txt | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3348 s1.st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3349 s1.st0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3352 SELECT * FROM relations_locked_v;
3353 relid | relname | relpages | reltuples | relallvisible | curpages
3354 ------------+----------------+----------+-----------+---------------+----------
3355 pt0 | public.pt0 | (null) | (null) | (null) | (null)
3356 pt0_idx | public.pt0_idx | (null) | (null) | (null) | (null)
3357 st0 | public.st0 | (null) | (null) | (null) | (null)
3358 st0_idx | public.st0_idx | (null) | (null) | (null) | (null)
3359 st1 | public.st1 | (null) | (null) | (null) | (null)
3360 s0.st0 | s0.st0 | (null) | (null) | (null) | (null)
3361 s0.st0_idx | s0.st0_idx | (null) | (null) | (null) | (null)
3362 s0.st1 | s0.st1 | (null) | (null) | (null) | (null)
3363 s0.st1_idx | s0.st1_idx | (null) | (null) | (null) | (null)
3364 s0.st2 | s0.st2 | (null) | (null) | (null) | (null)
3365 s0.st2_idx | s0.st2_idx | (null) | (null) | (null) | (null)
3366 st1_idx | public.st1_idx | (null) | (null) | (null) | (null)
3367 st1_exp | public.st1_exp | (null) | (null) | (null) | (null)
3368 s0.sft0 | s0.sft0 | (null) | (null) | (null) | (null)
3369 s0.smv0 | s0.smv0 | (null) | (null) | (null) | (null)
3370 s1.st0 | s1.st0 | (null) | (null) | (null) | (null)
3373 SELECT dbms_stats.restore_stats(8);
3384 SELECT * FROM relations_locked_v;
3385 relid | relname | relpages | reltuples | relallvisible | curpages
3386 ------------+----------------+----------+-----------+---------------+----------
3387 pt0 | public.pt0 | (null) | (null) | (null) | (null)
3388 pt0_idx | public.pt0_idx | (null) | (null) | (null) | (null)
3389 st0 | public.st0 | (null) | (null) | (null) | (null)
3390 st0_idx | public.st0_idx | (null) | (null) | (null) | (null)
3391 st1 | public.st1 | (null) | (null) | (null) | (null)
3392 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3393 s0.st0_idx | s0.st0_idx | 2 | 2 | 0 | 2
3394 s0.st1 | s0.st1 | 1 | 3 | 1 | 1
3395 s0.st1_idx | s0.st1_idx | 2 | 3 | 0 | 2
3396 s0.st2 | s0.st2 | 1 | 3 | 1 | 1
3397 s0.st2_idx | s0.st2_idx | 2 | 3 | 0 | 2
3398 st1_idx | public.st1_idx | (null) | (null) | (null) | (null)
3399 st1_exp | public.st1_exp | (null) | (null) | (null) | (null)
3400 s0.sft0 | s0.sft0 | (null) | (null) | (null) | (null)
3401 s0.smv0 | s0.smv0 | (null) | (null) | (null) | (null)
3402 s1.st0 | s1.st0 | (null) | (null) | (null) | (null)
3405 SELECT * FROM columns_locked_v;
3406 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3407 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3408 st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3409 st0 | 2 | name | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3410 st1 | 1 | val | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3411 st1 | 2 | str | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3412 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3413 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3414 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3415 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3416 s0.st1 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {4,5,6} | (null) | (null) | (null) | (null)
3417 s0.st1 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {40,50,60} | (null) | (null) | (null) | (null)
3418 s0.st2 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3} | (null) | (null) | (null) | (null)
3419 s0.st2 | 2 | txt | f | 0 | 5 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {0.5} | (null) | (null) | (null) | {1,comment,test} | (null) | (null) | (null) | (null)
3420 st1_exp | 1 | lower | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3421 s0.sft0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3422 s0.smv0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3423 s0.smv0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3424 s0.smv0 | 3 | txt | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3425 s1.st0 | 1 | id | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3426 s1.st0 | 2 | num | f | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null) | (null)
3430 DELETE FROM dbms_stats._relation_stats_locked;
3431 SELECT id, unit, comment FROM dbms_stats.backup_history
3434 ----+------+---------
3438 SELECT dbms_stats.restore_stats(8);
3449 SELECT * FROM relations_locked_v;
3450 relid | relname | relpages | reltuples | relallvisible | curpages
3451 ------------+------------+----------+-----------+---------------+----------
3452 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3453 s0.st0_idx | s0.st0_idx | 2 | 2 | 0 | 2
3454 s0.st1 | s0.st1 | 1 | 3 | 1 | 1
3455 s0.st1_idx | s0.st1_idx | 2 | 3 | 0 | 2
3456 s0.st2 | s0.st2 | 1 | 3 | 1 | 1
3457 s0.st2_idx | s0.st2_idx | 2 | 3 | 0 | 2
3460 SELECT * FROM columns_locked_v;
3461 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3462 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3463 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3464 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3465 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3466 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3467 s0.st1 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {4,5,6} | (null) | (null) | (null) | (null)
3468 s0.st1 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {40,50,60} | (null) | (null) | (null) | (null)
3469 s0.st2 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3} | (null) | (null) | (null) | (null)
3470 s0.st2 | 2 | txt | f | 0 | 5 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {0.5} | (null) | (null) | (null) | {1,comment,test} | (null) | (null) | (null) | (null)
3474 * No.11-1 dbms_stats.lock(relid, attname)
3477 DELETE FROM dbms_stats._relation_stats_locked;
3478 SELECT dbms_stats.lock(NULL, NULL);
3479 ERROR: relation is required
3481 ALTER FUNCTION dbms_stats.lock(relid regclass)
3482 RENAME TO truth_lock;
3483 CREATE FUNCTION dbms_stats.lock(relid regclass)
3487 RAISE NOTICE 'arguments are %', $1;
3492 DELETE FROM dbms_stats._relation_stats_locked;
3493 SELECT dbms_stats.lock('s0.st0', NULL);
3494 NOTICE: arguments are s0.st0
3495 CONTEXT: PL/pgSQL function dbms_stats.lock(regclass,text) line 11 at RETURN
3501 DROP FUNCTION dbms_stats.lock(relid regclass);
3502 ALTER FUNCTION dbms_stats.truth_lock(relid regclass)
3505 DELETE FROM dbms_stats._relation_stats_locked;
3506 SELECT dbms_stats.lock(NULL, 'id');
3507 ERROR: relation is required
3509 DELETE FROM dbms_stats._relation_stats_locked;
3510 SELECT dbms_stats.lock('s0.st0', 'id');
3516 SELECT * FROM relations_locked_v;
3517 relid | relname | relpages | reltuples | relallvisible | curpages
3518 --------+---------+----------+-----------+---------------+----------
3519 s0.st0 | s0.st0 | (null) | (null) | (null) | (null)
3522 SELECT * FROM columns_locked_v c;
3523 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3524 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------
3525 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3526 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3530 DELETE FROM dbms_stats._relation_stats_locked;
3531 SELECT dbms_stats.lock(0, 'id');
3532 ERROR: relation "-" does not exist
3534 DELETE FROM dbms_stats._relation_stats_locked;
3535 SELECT dbms_stats.lock('s0.st0', 'id');
3541 SELECT * FROM relations_locked_v;
3542 relid | relname | relpages | reltuples | relallvisible | curpages
3543 --------+---------+----------+-----------+---------------+----------
3544 s0.st0 | s0.st0 | (null) | (null) | (null) | (null)
3547 SELECT * FROM columns_locked_v c;
3548 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3549 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------
3550 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3551 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3555 DELETE FROM dbms_stats._relation_stats_locked;
3556 SELECT dbms_stats.lock('pg_toast.pg_toast_2618', 'id');
3557 ERROR: "pg_toast.pg_toast_2618" is not a table nor an index
3559 DELETE FROM dbms_stats._relation_stats_locked;
3560 SELECT dbms_stats.lock('s0.st0_idx', 'id');
3561 ERROR: "s0.st0_idx" is not an indexes on expressions
3563 DELETE FROM dbms_stats._relation_stats_locked;
3564 SELECT dbms_stats.lock('st1_exp', 'lower');
3570 SELECT * FROM relations_locked_v;
3571 relid | relname | relpages | reltuples | relallvisible | curpages
3572 ---------+----------------+----------+-----------+---------------+----------
3573 st1_exp | public.st1_exp | (null) | (null) | (null) | (null)
3576 SELECT * FROM columns_locked_v c;
3577 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3578 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+------------------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
3579 st1_exp | 1 | lower | f | 0 | 5 | 3 | 1 | 3 | 0 | 0 | 0 | 98 | 664 | 0 | 0 | 0 | {0.3334,0.3333,0.3333} | {0.3332} | (null) | (null) | (null) | {1,0,2} | (null) | (null) | (null) | (null)
3582 DELETE FROM dbms_stats._relation_stats_locked;
3584 DELETE FROM dbms_stats._relation_stats_locked;
3585 SELECT dbms_stats.lock('s0.ss0', 'id');
3586 ERROR: "s0.ss0" is not a table nor an index
3588 DELETE FROM dbms_stats._relation_stats_locked;
3589 SELECT dbms_stats.lock('s0.sc0', 'id');
3590 ERROR: "s0.sc0" is not a table nor an index
3592 DELETE FROM dbms_stats._relation_stats_locked;
3593 SELECT dbms_stats.lock('s0.sft0', 'id');
3599 SELECT * FROM relations_locked_v;
3600 relid | relname | relpages | reltuples | relallvisible | curpages
3601 ---------+---------+----------+-----------+---------------+----------
3602 s0.sft0 | s0.sft0 | (null) | (null) | (null) | (null)
3605 SELECT * FROM columns_locked_v c;
3606 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3607 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------------+------------+------------+------------+------------
3608 s0.sft0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3,4,5,6,7,8,9,10} | (null) | (null) | (null) | (null)
3612 DELETE FROM dbms_stats._relation_stats_locked;
3613 SELECT dbms_stats.lock('s0.smv0', 'id');
3619 SELECT * FROM relations_locked_v;
3620 relid | relname | relpages | reltuples | relallvisible | curpages
3621 ---------+---------+----------+-----------+---------------+----------
3622 s0.smv0 | s0.smv0 | (null) | (null) | (null) | (null)
3625 SELECT * FROM columns_locked_v c;
3626 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3627 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
3628 s0.smv0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3632 DELETE FROM dbms_stats._relation_stats_locked;
3633 SELECT dbms_stats.lock('pg_catalog.pg_class', 'id');
3634 ERROR: can not lock statistics of system catalog "pg_class"
3636 DELETE FROM dbms_stats._relation_stats_locked;
3637 SELECT dbms_stats.lock('s0.st0', 'dummy');
3638 ERROR: column "dummy" of "s0.st0" does not exist
3640 DELETE FROM dbms_stats._relation_stats_locked;
3641 DELETE FROM pg_statistic
3642 WHERE starelid = 's0.st0'::regclass;
3643 SELECT dbms_stats.lock('s0.st0', 'id');
3644 ERROR: no statistic for column "id" of relation "s0.st0" exists
3647 DELETE FROM dbms_stats._relation_stats_locked;
3648 INSERT INTO dbms_stats._relation_stats_locked(
3649 relid, relname, relpages, reltuples,
3652 VALUES('s0.st0'::regclass, 's0.st0', 1, 1640,
3655 SELECT dbms_stats.lock_column_stats('s0.st0','id');
3661 UPDATE dbms_stats._column_stats_locked
3662 SET (stanullfrac, stawidth, stadistinct,
3663 stakind1, stakind2, stakind3, stakind4,
3665 staop1, staop2, staop3, staop4,
3667 stanumbers1, stanumbers2, stanumbers3, stanumbers4,
3669 stavalues1, stavalues2, stavalues3, stavalues4
3673 NULL, NULL, NULL, NULL,
3674 NULL, NULL, NULL, NULL,
3675 NULL, NULL, NULL, NULL,
3676 NULL, NULL, NULL, NULL,
3677 NULL, NULL, NULL, NULL)
3678 WHERE starelid = 's0.st0'::regclass;
3679 SELECT dbms_stats.lock('s0.st0', 'id');
3685 SELECT * FROM relations_locked_v;
3686 relid | relname | relpages | reltuples | relallvisible | curpages
3687 --------+---------+----------+-----------+---------------+----------
3688 s0.st0 | s0.st0 | 1 | 1640 | 1 | 1
3691 SELECT * FROM columns_locked_v c;
3692 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3693 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------
3694 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3695 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3699 DELETE FROM dbms_stats._relation_stats_locked;
3700 SELECT dbms_stats.lock('s0.st0', 'id');
3706 SELECT * FROM relations_locked_v
3707 WHERE relid = 's0.st0'::regclass;
3708 relid | relname | relpages | reltuples | relallvisible | curpages
3709 --------+---------+----------+-----------+---------------+----------
3710 s0.st0 | s0.st0 | (null) | (null) | (null) | (null)
3713 SELECT starelid, attname, stainherit FROM columns_locked_v c;
3714 starelid | attname | stainherit
3715 ----------+---------+------------
3721 * No.11-2 dbms_stats.lock(relid)
3724 DELETE FROM dbms_stats._relation_stats_locked;
3726 SELECT relation::regclass, mode
3728 WHERE mode LIKE '%ExclusiveLock%'
3729 ORDER BY relation::regclass::text, mode;
3731 ----------+---------------
3732 (null) | ExclusiveLock
3735 SELECT dbms_stats.lock('s0.st0');
3741 SELECT * FROM relations_locked_v;
3742 relid | relname | relpages | reltuples | relallvisible | curpages
3743 --------+---------+----------+-----------+---------------+----------
3744 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3747 SELECT * FROM columns_locked_v c;
3748 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3749 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3750 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3751 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3752 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3753 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3756 SELECT relation::regclass, mode
3758 WHERE mode LIKE '%ExclusiveLock%'
3759 ORDER BY relation::regclass::text, mode;
3761 ----------------------------------------+--------------------------
3762 dbms_stats._column_stats_locked | RowExclusiveLock
3763 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
3764 dbms_stats._column_stats_locked_pkey | RowExclusiveLock
3765 dbms_stats._relation_stats_locked | RowExclusiveLock
3766 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
3767 dbms_stats._relation_stats_locked_pkey | RowExclusiveLock
3768 (null) | ExclusiveLock
3769 (null) | ExclusiveLock
3774 DELETE FROM dbms_stats._relation_stats_locked;
3775 SELECT dbms_stats.lock(NULL);
3776 ERROR: relation is required
3778 DELETE FROM dbms_stats._relation_stats_locked;
3779 SELECT dbms_stats.lock('0');
3780 ERROR: relation "-" does not exist
3782 DELETE FROM dbms_stats._relation_stats_locked;
3783 SELECT dbms_stats.lock('s0.st0');
3789 SELECT * FROM relations_locked_v;
3790 relid | relname | relpages | reltuples | relallvisible | curpages
3791 --------+---------+----------+-----------+---------------+----------
3792 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3795 SELECT * FROM columns_locked_v c;
3796 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3797 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3798 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3799 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3800 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3801 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3805 DELETE FROM dbms_stats._relation_stats_locked;
3806 SELECT dbms_stats.lock('pg_toast.pg_toast_2618');
3807 ERROR: can not lock statistics of "pg_toast.pg_toast_2618" with relkind "t"
3808 HINT: only tables and indexes are supported
3810 DELETE FROM dbms_stats._relation_stats_locked;
3811 SELECT dbms_stats.lock('s0.st0_idx');
3817 SELECT * FROM relations_locked_v;
3818 relid | relname | relpages | reltuples | relallvisible | curpages
3819 ------------+------------+----------+-----------+---------------+----------
3820 s0.st0_idx | s0.st0_idx | 2 | 2 | 0 | 2
3823 SELECT * FROM columns_locked_v c;
3824 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3825 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
3829 DELETE FROM dbms_stats._relation_stats_locked;
3830 SELECT dbms_stats.lock('s0.ss0');
3831 ERROR: can not lock statistics of "s0.ss0" with relkind "S"
3832 HINT: only tables and indexes are supported
3834 DELETE FROM dbms_stats._relation_stats_locked;
3835 SELECT dbms_stats.lock('s0.sc0');
3836 ERROR: can not lock statistics of "s0.sc0" with relkind "c"
3837 HINT: only tables and indexes are supported
3839 DELETE FROM dbms_stats._relation_stats_locked;
3840 SELECT dbms_stats.lock('s0.sft0');
3846 SELECT * FROM relations_locked_v;
3847 relid | relname | relpages | reltuples | relallvisible | curpages
3848 ---------+---------+----------+-----------+---------------+----------
3849 s0.sft0 | s0.sft0 | 1 | 10 | 0 | 0
3852 SELECT * FROM columns_locked_v c;
3853 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3854 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------------+------------+------------+------------+------------
3855 s0.sft0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,3,4,5,6,7,8,9,10} | (null) | (null) | (null) | (null)
3859 DELETE FROM dbms_stats._relation_stats_locked;
3860 SELECT dbms_stats.lock('s0.smv0');
3866 SELECT * FROM relations_locked_v;
3867 relid | relname | relpages | reltuples | relallvisible | curpages
3868 ---------+---------+----------+-----------+---------------+----------
3869 s0.smv0 | s0.smv0 | 1 | 2 | 1 | 1
3872 SELECT * FROM columns_locked_v c;
3873 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3874 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------+------------+------------+------------+------------
3875 s0.smv0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3876 s0.smv0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3877 s0.smv0 | 3 | txt | f | 0 | 3 | -1 | 2 | 3 | 0 | 0 | 0 | 664 | 664 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,test} | (null) | (null) | (null) | (null)
3881 DELETE FROM dbms_stats._relation_stats_locked;
3882 SELECT dbms_stats.lock('pg_catalog.pg_class');
3883 ERROR: can not lock statistics of system catalog "pg_class"
3885 DELETE FROM dbms_stats._relation_stats_locked;
3886 SELECT dbms_stats.lock_table_stats('s0.st0');
3892 UPDATE dbms_stats._relation_stats_locked
3893 SET (relpages, reltuples,
3899 WHERE relid = 's0.st0'::regclass;
3900 SELECT dbms_stats.lock('s0.st0');
3906 SELECT * FROM relations_locked_v;
3907 relid | relname | relpages | reltuples | relallvisible | curpages
3908 --------+---------+----------+-----------+---------------+----------
3909 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3912 SELECT * FROM columns_locked_v c;
3913 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3914 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3915 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3916 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3917 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3918 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3922 DELETE FROM dbms_stats._relation_stats_locked;
3923 SELECT dbms_stats.lock('s0.st0');
3929 SELECT * FROM relations_locked_v;
3930 relid | relname | relpages | reltuples | relallvisible | curpages
3931 --------+---------+----------+-----------+---------------+----------
3932 s0.st0 | s0.st0 | 1 | 2 | 1 | 1
3935 SELECT * FROM columns_locked_v c;
3936 starelid | staattnum | attname | stainherit | stanullfrac | stawidth | stadistinct | stakind1 | stakind2 | stakind3 | stakind4 | stakind5 | staop1 | staop2 | staop3 | staop4 | staop5 | stanumbers1 | stanumbers2 | stanumbers3 | stanumbers4 | stanumbers5 | stavalues1 | stavalues2 | stavalues3 | stavalues4 | stavalues5
3937 ----------+-----------+---------+------------+-------------+----------+-------------+----------+----------+----------+----------+----------+--------+--------+--------+--------+--------+-------------+-------------+-------------+-------------+-------------+------------------+------------+------------+------------+------------
3938 s0.st0 | 1 | id | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2} | (null) | (null) | (null) | (null)
3939 s0.st0 | 1 | id | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {1,2,4,5,6} | (null) | (null) | (null) | (null)
3940 s0.st0 | 2 | num | f | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20} | (null) | (null) | (null) | (null)
3941 s0.st0 | 2 | num | t | 0 | 4 | -1 | 2 | 3 | 0 | 0 | 0 | 97 | 97 | 0 | 0 | 0 | (null) | {1} | (null) | (null) | (null) | {10,20,40,50,60} | (null) | (null) | (null) | (null)
3945 * Stab function dbms_stats.lock
3947 ALTER FUNCTION dbms_stats.lock(relid regclass)
3948 RENAME TO truth_lock;
3949 CREATE FUNCTION dbms_stats.lock(relid regclass)
3953 RAISE NOTICE 'arguments are %', $1;
3958 ALTER FUNCTION dbms_stats.lock(relid regclass, attname text)
3959 RENAME TO truth_lock;
3960 CREATE FUNCTION dbms_stats.lock(
3966 RAISE NOTICE 'arguments are %, %', $1, $2;
3972 * No.12-1 dbms_stats.lock_database_stats
3975 SELECT dbms_stats.lock_database_stats();
3976 NOTICE: arguments are pt0
3977 CONTEXT: SQL function "lock_database_stats" statement 1
3978 NOTICE: arguments are pt0_idx
3979 CONTEXT: SQL function "lock_database_stats" statement 1
3980 NOTICE: arguments are st0
3981 CONTEXT: SQL function "lock_database_stats" statement 1
3982 NOTICE: arguments are st0_idx
3983 CONTEXT: SQL function "lock_database_stats" statement 1
3984 NOTICE: arguments are st1
3985 CONTEXT: SQL function "lock_database_stats" statement 1
3986 NOTICE: arguments are s0.st0
3987 CONTEXT: SQL function "lock_database_stats" statement 1
3988 NOTICE: arguments are s0.st0_idx
3989 CONTEXT: SQL function "lock_database_stats" statement 1
3990 NOTICE: arguments are s0.st1
3991 CONTEXT: SQL function "lock_database_stats" statement 1
3992 NOTICE: arguments are s0.st1_idx
3993 CONTEXT: SQL function "lock_database_stats" statement 1
3994 NOTICE: arguments are s0.st2
3995 CONTEXT: SQL function "lock_database_stats" statement 1
3996 NOTICE: arguments are s0.st2_idx
3997 CONTEXT: SQL function "lock_database_stats" statement 1
3998 NOTICE: arguments are st1_idx
3999 CONTEXT: SQL function "lock_database_stats" statement 1
4000 NOTICE: arguments are st1_exp
4001 CONTEXT: SQL function "lock_database_stats" statement 1
4002 NOTICE: arguments are s0.sft0
4003 CONTEXT: SQL function "lock_database_stats" statement 1
4004 NOTICE: arguments are s0.smv0
4005 CONTEXT: SQL function "lock_database_stats" statement 1
4006 NOTICE: arguments are s1.st0
4007 CONTEXT: SQL function "lock_database_stats" statement 1
4009 ---------------------
4029 * No.12-2 dbms_stats.lock_schema_stats
4032 SELECT dbms_stats.lock_schema_stats('s0');
4033 NOTICE: arguments are s0.st0
4034 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4035 NOTICE: arguments are s0.st0_idx
4036 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4037 NOTICE: arguments are s0.st1
4038 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4039 NOTICE: arguments are s0.st1_idx
4040 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4041 NOTICE: arguments are s0.st2
4042 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4043 NOTICE: arguments are s0.st2_idx
4044 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4045 NOTICE: arguments are s0.sft0
4046 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4047 NOTICE: arguments are s0.smv0
4048 CONTEXT: PL/pgSQL function dbms_stats.lock_schema_stats(text) line 10 at RETURN QUERY
4062 SELECT dbms_stats.lock_schema_stats('s00');
4063 ERROR: schema "s00" does not exist
4065 SELECT dbms_stats.lock_schema_stats('pg_catalog');
4066 ERROR: can not lock statistics of relation in system schema "pg_catalog"
4068 * No.12-3 dbms_stats.lock_table_stats(regclass)
4071 SELECT dbms_stats.lock_table_stats('s0.st0');
4072 NOTICE: arguments are s0.st0
4073 CONTEXT: SQL function "lock_table_stats" statement 1
4080 SELECT dbms_stats.lock_table_stats('st0');
4081 NOTICE: arguments are st0
4082 CONTEXT: SQL function "lock_table_stats" statement 1
4089 SELECT dbms_stats.lock_table_stats('s00.s0');
4090 ERROR: schema "s00" does not exist
4091 LINE 1: SELECT dbms_stats.lock_table_stats('s00.s0');
4094 * No.12-4 dbms_stats.lock_table_stats(schemaname, tablename)
4097 SELECT dbms_stats.lock_table_stats('s0', 'st0');
4098 NOTICE: arguments are s0.st0
4099 CONTEXT: SQL function "lock_table_stats" statement 1
4106 * No.12-5 dbms_stats.lock_column_stats(regclass, attname)
4109 SELECT dbms_stats.lock_column_stats('s0.st0', 'id');
4110 NOTICE: arguments are s0.st0, id
4111 CONTEXT: SQL function "lock_column_stats" statement 1
4118 SELECT dbms_stats.lock_column_stats('st0', 'id');
4119 NOTICE: arguments are st0, id
4120 CONTEXT: SQL function "lock_column_stats" statement 1
4127 SELECT dbms_stats.lock_column_stats('s00.s0', 'id');
4128 ERROR: schema "s00" does not exist
4129 LINE 1: SELECT dbms_stats.lock_column_stats('s00.s0', 'id');
4132 * No.12-6 dbms_stats.lock_column_stats(schemaname, tablename, int2)
4135 SELECT dbms_stats.lock_column_stats('s0', 'st0', 'id');
4136 NOTICE: arguments are s0.st0, id
4137 CONTEXT: SQL function "lock_column_stats" statement 1
4144 * Delete Stab function lock
4146 DROP FUNCTION dbms_stats.lock(relid regclass);
4147 ALTER FUNCTION dbms_stats.truth_lock(relid regclass)
4149 DROP FUNCTION dbms_stats.lock(relid regclass, attname text);
4150 ALTER FUNCTION dbms_stats.truth_lock(relid regclass, attname text)
4153 * No.13-1 dbms_stats.unlock
4156 DELETE FROM dbms_stats._relation_stats_locked;
4157 SELECT dbms_stats.lock_database_stats();
4159 ---------------------
4178 SELECT * FROM dbms_stats.backup_history
4180 id | time | unit | comment
4181 ----+-------------------------------------+------+---------
4182 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
4183 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
4184 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
4185 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
4186 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
4187 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
4188 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
4189 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
4192 SELECT count(*) FROM dbms_stats.relation_stats_backup;
4198 SELECT count(*) FROM dbms_stats.column_stats_backup;
4204 SELECT dbms_stats.unlock();
4225 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4231 SELECT count(*) FROM dbms_stats._column_stats_locked;
4237 SELECT * FROM dbms_stats.backup_history
4239 id | time | unit | comment
4240 ----+-------------------------------------+------+---------
4241 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
4242 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
4243 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
4244 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
4245 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
4246 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
4247 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
4248 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
4251 SELECT count(*) FROM dbms_stats.relation_stats_backup;
4257 SELECT count(*) FROM dbms_stats.column_stats_backup;
4264 DELETE FROM dbms_stats._relation_stats_locked;
4265 SELECT dbms_stats.lock_database_stats();
4267 ---------------------
4286 SELECT dbms_stats.unlock();
4307 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4313 SELECT count(*) FROM dbms_stats._column_stats_locked;
4320 DELETE FROM dbms_stats._relation_stats_locked;
4321 SELECT dbms_stats.lock_database_stats();
4323 ---------------------
4342 DELETE FROM dbms_stats._column_stats_locked;
4343 SELECT dbms_stats.unlock();
4364 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4370 SELECT count(*) FROM dbms_stats._column_stats_locked;
4377 DELETE FROM dbms_stats._relation_stats_locked;
4378 SELECT dbms_stats.unlock();
4383 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4389 SELECT count(*) FROM dbms_stats._column_stats_locked;
4396 DELETE FROM dbms_stats._relation_stats_locked;
4397 SELECT dbms_stats.lock_database_stats();
4399 ---------------------
4418 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4441 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
4457 SELECT dbms_stats.unlock('s0.st0');
4463 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4485 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
4501 DELETE FROM dbms_stats._relation_stats_locked;
4502 SELECT dbms_stats.lock_database_stats();
4504 ---------------------
4523 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4546 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
4562 SELECT dbms_stats.unlock('st0');
4568 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4590 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
4606 DELETE FROM dbms_stats._relation_stats_locked;
4607 SELECT dbms_stats.lock_database_stats();
4609 ---------------------
4628 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4634 SELECT count(*) FROM dbms_stats._column_stats_locked;
4640 SELECT dbms_stats.unlock('s00.s0');
4641 ERROR: schema "s00" does not exist
4642 LINE 1: SELECT dbms_stats.unlock('s00.s0');
4644 SELECT count(*) FROM dbms_stats._relation_stats_locked;
4650 SELECT count(*) FROM dbms_stats._column_stats_locked;
4657 DELETE FROM dbms_stats._relation_stats_locked;
4658 SELECT dbms_stats.lock_database_stats();
4660 ---------------------
4679 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4702 SELECT starelid, attname, stainherit FROM columns_locked_v c;
4703 starelid | attname | stainherit
4704 ----------+---------+------------
4726 SELECT dbms_stats.unlock('s0.st0', 'id');
4732 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4755 SELECT starelid, attname, stainherit FROM columns_locked_v c;
4756 starelid | attname | stainherit
4757 ----------+---------+------------
4778 DELETE FROM dbms_stats._relation_stats_locked;
4779 SELECT dbms_stats.lock_database_stats();
4781 ---------------------
4800 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4823 SELECT starelid, attname, stainherit FROM columns_locked_v c;
4824 starelid | attname | stainherit
4825 ----------+---------+------------
4847 SELECT dbms_stats.unlock('s0.st0', 'dummy');
4848 ERROR: column "dummy" of "s0.st0" does not exist
4849 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4872 SELECT starelid, attname, stainherit FROM columns_locked_v c;
4873 starelid | attname | stainherit
4874 ----------+---------+------------
4897 DELETE FROM dbms_stats._relation_stats_locked;
4898 SELECT dbms_stats.lock_database_stats();
4900 ---------------------
4919 DELETE FROM dbms_stats._column_stats_locked;
4920 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4943 SELECT dbms_stats.unlock('s0.st0', 'id');
4949 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
4972 SELECT starelid::regclass, staattnum FROM dbms_stats._column_stats_locked
4973 GROUP BY starelid, staattnum
4975 starelid | staattnum
4976 ----------+-----------
4980 DELETE FROM dbms_stats._relation_stats_locked;
4981 SELECT dbms_stats.lock_database_stats();
4983 ---------------------
5002 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5025 SELECT starelid::regclass, staattnum FROM dbms_stats._column_stats_locked
5026 GROUP BY starelid, staattnum
5028 starelid | staattnum
5029 ----------+-----------
5049 SELECT dbms_stats.unlock(NULL, 'id');
5050 ERROR: relation is required
5051 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5074 SELECT starelid::regclass, staattnum FROM dbms_stats._column_stats_locked
5075 GROUP BY starelid, staattnum
5077 starelid | staattnum
5078 ----------+-----------
5099 DELETE FROM dbms_stats._relation_stats_locked;
5100 SELECT dbms_stats.lock_database_stats();
5102 ---------------------
5121 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5144 SELECT starelid::regclass, staattnum FROM dbms_stats._column_stats_locked
5145 GROUP BY starelid, staattnum
5147 starelid | staattnum
5148 ----------+-----------
5168 SELECT dbms_stats.unlock('s0.st0', NULL);
5174 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5196 SELECT starelid::regclass, staattnum FROM dbms_stats._column_stats_locked
5197 GROUP BY starelid, staattnum
5199 starelid | staattnum
5200 ----------+-----------
5219 DELETE FROM dbms_stats._relation_stats_locked;
5220 SELECT dbms_stats.lock_database_stats();
5222 ---------------------
5241 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5247 SELECT count(*) FROM dbms_stats._column_stats_locked;
5254 SELECT relation::regclass, mode
5256 WHERE mode LIKE '%ExclusiveLock%'
5257 ORDER BY relation::regclass::text, mode;
5259 ----------+---------------
5260 (null) | ExclusiveLock
5263 SELECT dbms_stats.unlock();
5284 SELECT relation::regclass, mode
5286 WHERE mode LIKE '%ExclusiveLock%'
5287 ORDER BY relation::regclass::text, mode;
5289 -----------------------------------+--------------------------
5290 dbms_stats._column_stats_locked | RowExclusiveLock
5291 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
5292 dbms_stats._relation_stats_locked | RowExclusiveLock
5293 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
5294 (null) | ExclusiveLock
5295 (null) | ExclusiveLock
5299 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5305 SELECT count(*) FROM dbms_stats._column_stats_locked;
5312 * No.14-1 dbms_stats.unlock_database_stats
5315 DELETE FROM dbms_stats._relation_stats_locked;
5316 SELECT dbms_stats.lock_database_stats();
5318 ---------------------
5337 SELECT * FROM dbms_stats.backup_history
5339 id | time | unit | comment
5340 ----+-------------------------------------+------+---------
5341 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
5342 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
5343 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
5344 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
5345 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
5346 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
5347 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
5348 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
5351 SELECT count(*) FROM dbms_stats.relation_stats_backup;
5357 SELECT count(*) FROM dbms_stats.column_stats_backup;
5363 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5369 SELECT count(*) FROM dbms_stats._column_stats_locked;
5375 SELECT dbms_stats.unlock_database_stats();
5376 unlock_database_stats
5377 -----------------------
5396 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5402 SELECT count(*) FROM dbms_stats._column_stats_locked;
5408 SELECT * FROM dbms_stats.backup_history
5410 id | time | unit | comment
5411 ----+-------------------------------------+------+---------
5412 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
5413 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
5414 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
5415 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
5416 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
5417 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
5418 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
5419 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
5422 SELECT count(*) FROM dbms_stats.relation_stats_backup;
5428 SELECT count(*) FROM dbms_stats.column_stats_backup;
5435 DELETE FROM dbms_stats._relation_stats_locked;
5436 SELECT dbms_stats.lock_database_stats();
5438 ---------------------
5457 DELETE FROM dbms_stats._column_stats_locked;
5458 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5464 SELECT dbms_stats.unlock_database_stats();
5465 unlock_database_stats
5466 -----------------------
5485 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5491 SELECT count(*) FROM dbms_stats._column_stats_locked;
5498 DELETE FROM dbms_stats._relation_stats_locked;
5499 SELECT dbms_stats.unlock_database_stats();
5500 unlock_database_stats
5501 -----------------------
5504 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5510 SELECT count(*) FROM dbms_stats._column_stats_locked;
5517 DELETE FROM dbms_stats._relation_stats_locked;
5518 SELECT dbms_stats.lock_database_stats();
5520 ---------------------
5539 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5545 SELECT count(*) FROM dbms_stats._column_stats_locked;
5552 SELECT relation::regclass, mode
5554 WHERE mode LIKE '%ExclusiveLock%'
5555 ORDER BY relation::regclass::text, mode;
5557 ----------+---------------
5558 (null) | ExclusiveLock
5561 SELECT dbms_stats.unlock_database_stats();
5562 unlock_database_stats
5563 -----------------------
5582 SELECT relation::regclass, mode
5584 WHERE mode LIKE '%ExclusiveLock%'
5585 ORDER BY relation::regclass::text, mode;
5587 -----------------------------------+--------------------------
5588 dbms_stats._column_stats_locked | RowExclusiveLock
5589 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
5590 dbms_stats._relation_stats_locked | RowExclusiveLock
5591 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
5592 (null) | ExclusiveLock
5593 (null) | ExclusiveLock
5597 SELECT count(*) FROM dbms_stats._relation_stats_locked;
5603 SELECT count(*) FROM dbms_stats._column_stats_locked;
5610 * No.14-2 dbms_stats.unlock_schema_stats
5613 DELETE FROM dbms_stats._relation_stats_locked;
5614 SELECT dbms_stats.lock_database_stats();
5616 ---------------------
5635 SELECT * FROM dbms_stats.backup_history
5637 id | time | unit | comment
5638 ----+-------------------------------------+------+---------
5639 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
5640 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
5641 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
5642 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
5643 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
5644 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
5645 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
5646 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
5649 SELECT count(*) FROM dbms_stats.relation_stats_backup;
5655 SELECT count(*) FROM dbms_stats.column_stats_backup;
5661 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5684 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5700 SELECT dbms_stats.unlock_schema_stats('s0');
5702 ---------------------
5713 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5728 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5739 SELECT * FROM dbms_stats.backup_history
5741 id | time | unit | comment
5742 ----+-------------------------------------+------+---------
5743 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
5744 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
5745 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
5746 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
5747 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
5748 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
5749 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
5750 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
5753 SELECT count(*) FROM dbms_stats.relation_stats_backup;
5759 SELECT count(*) FROM dbms_stats.column_stats_backup;
5766 DELETE FROM dbms_stats._relation_stats_locked;
5767 SELECT dbms_stats.lock_database_stats();
5769 ---------------------
5788 DELETE FROM dbms_stats._column_stats_locked;
5789 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5812 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5819 SELECT dbms_stats.unlock_schema_stats('s0');
5821 ---------------------
5832 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5847 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5855 DELETE FROM dbms_stats._relation_stats_locked;
5856 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5863 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5870 SELECT dbms_stats.unlock_schema_stats('s0');
5872 ---------------------
5875 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5882 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5890 DELETE FROM dbms_stats._relation_stats_locked;
5891 SELECT dbms_stats.lock_database_stats();
5893 ---------------------
5912 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5935 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5951 SELECT dbms_stats.unlock_schema_stats('s0');
5953 ---------------------
5964 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
5979 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
5991 DELETE FROM dbms_stats._relation_stats_locked;
5992 SELECT dbms_stats.lock_database_stats();
5994 ---------------------
6013 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6036 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6052 SELECT dbms_stats.unlock_schema_stats('s00');
6053 ERROR: schema "s00" does not exist
6054 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6077 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6094 DELETE FROM dbms_stats._relation_stats_locked;
6095 SELECT dbms_stats.lock_database_stats();
6097 ---------------------
6116 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6139 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6155 SELECT dbms_stats.unlock_schema_stats('pg_catalog');
6156 ERROR: can not unlock statistics of relation in system schema "pg_catalog"
6157 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6180 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6197 DELETE FROM dbms_stats._relation_stats_locked;
6198 SELECT dbms_stats.lock_database_stats();
6200 ---------------------
6219 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6242 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6258 SELECT dbms_stats.unlock_schema_stats(NULL);
6260 ---------------------
6263 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6286 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6303 DELETE FROM dbms_stats._relation_stats_locked;
6304 SELECT dbms_stats.lock_database_stats();
6306 ---------------------
6325 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6348 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6365 SELECT relation::regclass, mode
6367 WHERE mode LIKE '%ExclusiveLock%'
6368 ORDER BY relation::regclass::text, mode;
6370 ----------+---------------
6371 (null) | ExclusiveLock
6374 SELECT dbms_stats.unlock_schema_stats('s0');
6376 ---------------------
6387 SELECT relation::regclass, mode
6389 WHERE mode LIKE '%ExclusiveLock%'
6390 ORDER BY relation::regclass::text, mode;
6392 -----------------------------------+--------------------------
6393 dbms_stats._column_stats_locked | RowExclusiveLock
6394 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
6395 dbms_stats._relation_stats_locked | RowExclusiveLock
6396 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
6397 (null) | ExclusiveLock
6398 (null) | ExclusiveLock
6402 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6417 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6429 * No.14-3 dbms_stats.unlock_table_stats(regclass)
6432 DELETE FROM dbms_stats._relation_stats_locked;
6433 SELECT dbms_stats.lock_database_stats();
6435 ---------------------
6454 SELECT * FROM dbms_stats.backup_history
6456 id | time | unit | comment
6457 ----+-------------------------------------+------+---------
6458 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
6459 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
6460 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
6461 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
6462 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
6463 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
6464 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
6465 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
6468 SELECT count(*) FROM dbms_stats.relation_stats_backup;
6474 SELECT count(*) FROM dbms_stats.column_stats_backup;
6480 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6503 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6519 SELECT dbms_stats.unlock_table_stats('s0.st0');
6521 --------------------
6525 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6547 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6562 SELECT * FROM dbms_stats.backup_history
6564 id | time | unit | comment
6565 ----+-------------------------------------+------+---------
6566 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
6567 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
6568 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
6569 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
6570 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
6571 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
6572 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
6573 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
6576 SELECT count(*) FROM dbms_stats.relation_stats_backup;
6582 SELECT count(*) FROM dbms_stats.column_stats_backup;
6589 DELETE FROM dbms_stats._relation_stats_locked;
6590 SELECT dbms_stats.lock_database_stats();
6592 ---------------------
6611 DELETE FROM dbms_stats._column_stats_locked;
6612 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6635 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6642 SELECT dbms_stats.unlock_table_stats('s0.st0');
6644 --------------------
6648 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6670 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6678 DELETE FROM dbms_stats._relation_stats_locked;
6679 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6686 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6693 SELECT dbms_stats.unlock_table_stats('s0.st0');
6695 --------------------
6698 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6705 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6713 DELETE FROM dbms_stats._relation_stats_locked;
6714 SELECT dbms_stats.lock_database_stats();
6716 ---------------------
6735 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6758 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6774 SELECT dbms_stats.unlock_table_stats('s0.st0');
6776 --------------------
6780 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6802 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6818 DELETE FROM dbms_stats._relation_stats_locked;
6819 SELECT dbms_stats.lock_database_stats();
6821 ---------------------
6840 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6863 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6879 SELECT dbms_stats.unlock_table_stats('st0');
6881 --------------------
6885 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6907 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6923 DELETE FROM dbms_stats._relation_stats_locked;
6924 SELECT dbms_stats.lock_database_stats();
6926 ---------------------
6945 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
6968 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
6984 SELECT dbms_stats.unlock_table_stats('s00.s0');
6985 ERROR: schema "s00" does not exist
6986 LINE 1: SELECT dbms_stats.unlock_table_stats('s00.s0');
6988 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7011 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7028 DELETE FROM dbms_stats._relation_stats_locked;
7029 SELECT dbms_stats.lock_database_stats();
7031 ---------------------
7050 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7073 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7089 SELECT dbms_stats.unlock_table_stats(NULL);
7091 --------------------
7094 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7117 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7134 DELETE FROM dbms_stats._relation_stats_locked;
7135 SELECT dbms_stats.lock_database_stats();
7137 ---------------------
7156 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7179 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7196 SELECT relation::regclass, mode
7198 WHERE mode LIKE '%ExclusiveLock%'
7199 ORDER BY relation::regclass::text, mode;
7201 ----------+---------------
7202 (null) | ExclusiveLock
7205 SELECT dbms_stats.unlock_table_stats('s0.st0');
7207 --------------------
7211 SELECT relation::regclass, mode
7213 WHERE mode LIKE '%ExclusiveLock%'
7214 ORDER BY relation::regclass::text, mode;
7216 ----------------------------------------+--------------------------
7217 dbms_stats._column_stats_locked | RowExclusiveLock
7218 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
7219 dbms_stats._relation_stats_locked | RowExclusiveLock
7220 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
7221 dbms_stats._relation_stats_locked_pkey | RowExclusiveLock
7222 (null) | ExclusiveLock
7223 (null) | ExclusiveLock
7227 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7249 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7265 * No.14-4 dbms_stats.unlock_table_stats(schemaname, tablename)
7268 DELETE FROM dbms_stats._relation_stats_locked;
7269 SELECT dbms_stats.lock_database_stats();
7271 ---------------------
7290 SELECT * FROM dbms_stats.backup_history
7292 id | time | unit | comment
7293 ----+-------------------------------------+------+---------
7294 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
7295 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
7296 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
7297 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
7298 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
7299 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
7300 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
7301 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
7304 SELECT count(*) FROM dbms_stats.relation_stats_backup;
7310 SELECT count(*) FROM dbms_stats.column_stats_backup;
7316 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7339 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7355 SELECT dbms_stats.unlock_table_stats('s0','st0');
7357 --------------------
7361 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7383 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7398 SELECT * FROM dbms_stats.backup_history
7400 id | time | unit | comment
7401 ----+-------------------------------------+------+---------
7402 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
7403 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
7404 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
7405 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
7406 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
7407 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
7408 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
7409 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
7412 SELECT count(*) FROM dbms_stats.relation_stats_backup;
7418 SELECT count(*) FROM dbms_stats.column_stats_backup;
7425 DELETE FROM dbms_stats._relation_stats_locked;
7426 SELECT dbms_stats.lock_database_stats();
7428 ---------------------
7447 DELETE FROM dbms_stats._column_stats_locked;
7448 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7471 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7478 SELECT dbms_stats.unlock_table_stats('s0', 'st0');
7480 --------------------
7484 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7506 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7514 DELETE FROM dbms_stats._relation_stats_locked;
7515 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7522 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7529 SELECT dbms_stats.unlock_table_stats('s0', 'st0');
7531 --------------------
7534 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7541 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7549 DELETE FROM dbms_stats._relation_stats_locked;
7550 SELECT dbms_stats.lock_database_stats();
7552 ---------------------
7571 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7594 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7610 SELECT dbms_stats.unlock_table_stats('s0', 'st0');
7612 --------------------
7616 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7638 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7654 DELETE FROM dbms_stats._relation_stats_locked;
7655 SELECT dbms_stats.lock_database_stats();
7657 ---------------------
7676 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7699 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7715 SELECT dbms_stats.unlock_table_stats('s00', 's0');
7716 ERROR: schema "s00" does not exist
7717 CONTEXT: SQL function "unlock_table_stats" statement 3
7718 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7741 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7758 DELETE FROM dbms_stats._relation_stats_locked;
7759 SELECT dbms_stats.lock_database_stats();
7761 ---------------------
7780 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7803 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7819 SELECT dbms_stats.unlock_table_stats(NULL, 'st0');
7821 --------------------
7824 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7847 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7864 DELETE FROM dbms_stats._relation_stats_locked;
7865 SELECT dbms_stats.lock_database_stats();
7867 ---------------------
7886 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7909 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7925 SELECT dbms_stats.unlock_table_stats('s0', NULL);
7927 --------------------
7930 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
7953 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
7970 DELETE FROM dbms_stats._relation_stats_locked;
7971 SELECT dbms_stats.lock_database_stats();
7973 ---------------------
7992 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8015 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
8032 SELECT relation::regclass, mode
8034 WHERE mode LIKE '%ExclusiveLock%'
8035 ORDER BY relation::regclass::text, mode;
8037 ----------+---------------
8038 (null) | ExclusiveLock
8041 SELECT dbms_stats.unlock_table_stats('s0', 'st0');
8043 --------------------
8047 SELECT relation::regclass, mode
8049 WHERE mode LIKE '%ExclusiveLock%'
8050 ORDER BY relation::regclass::text, mode;
8052 ----------------------------------------+--------------------------
8053 dbms_stats._column_stats_locked | RowExclusiveLock
8054 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
8055 dbms_stats._relation_stats_locked | RowExclusiveLock
8056 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
8057 dbms_stats._relation_stats_locked_pkey | RowExclusiveLock
8058 (null) | ExclusiveLock
8059 (null) | ExclusiveLock
8063 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8085 SELECT starelid::regclass, count(*) FROM dbms_stats._column_stats_locked
8101 * No.14-5 dbms_stats.unlock_column_stats(regclass, attname)
8104 DELETE FROM dbms_stats._relation_stats_locked;
8105 SELECT dbms_stats.lock_database_stats();
8107 ---------------------
8126 SELECT * FROM dbms_stats.backup_history
8128 id | time | unit | comment
8129 ----+-------------------------------------+------+---------
8130 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
8131 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
8132 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
8133 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
8134 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
8135 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
8136 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
8137 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
8140 SELECT count(*) FROM dbms_stats.relation_stats_backup;
8146 SELECT count(*) FROM dbms_stats.column_stats_backup;
8152 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8175 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8176 starelid | attname | stainherit
8177 ----------+---------+------------
8199 SELECT dbms_stats.unlock_column_stats('s0.st0', 'id');
8201 ---------------------
8205 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8206 starelid | attname | stainherit
8207 ----------+---------+------------
8227 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8250 SELECT * FROM dbms_stats.backup_history
8252 id | time | unit | comment
8253 ----+-------------------------------------+------+---------
8254 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
8255 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
8256 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
8257 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
8258 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
8259 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
8260 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
8261 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
8264 SELECT count(*) FROM dbms_stats.relation_stats_backup;
8270 SELECT count(*) FROM dbms_stats.column_stats_backup;
8277 DELETE FROM dbms_stats._relation_stats_locked;
8278 SELECT dbms_stats.lock_database_stats();
8280 ---------------------
8299 DELETE FROM dbms_stats._column_stats_locked;
8300 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8323 SELECT dbms_stats.unlock_column_stats('s0.st0', 'id');
8325 ---------------------
8329 SELECT count(*) FROM dbms_stats.column_stats_locked;
8335 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8359 DELETE FROM dbms_stats._relation_stats_locked;
8360 SELECT dbms_stats.lock_database_stats();
8362 ---------------------
8381 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8404 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8405 starelid | attname | stainherit
8406 ----------+---------+------------
8428 SELECT dbms_stats.unlock_column_stats('s0.st0', 'id');
8430 ---------------------
8434 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8435 starelid | attname | stainherit
8436 ----------+---------+------------
8456 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8480 DELETE FROM dbms_stats._relation_stats_locked;
8481 SELECT dbms_stats.lock_database_stats();
8483 ---------------------
8502 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8525 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8526 starelid | attname | stainherit
8527 ----------+---------+------------
8549 SELECT dbms_stats.unlock_column_stats('st0', 'id');
8551 ---------------------
8555 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8556 starelid | attname | stainherit
8557 ----------+---------+------------
8578 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8602 DELETE FROM dbms_stats._relation_stats_locked;
8603 SELECT dbms_stats.lock_database_stats();
8605 ---------------------
8624 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8647 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8648 starelid | attname | stainherit
8649 ----------+---------+------------
8671 SELECT dbms_stats.unlock_column_stats('s0.st0', 'dummy');
8672 ERROR: column "dummy" of "s0.st0" does not exist
8673 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8674 starelid | attname | stainherit
8675 ----------+---------+------------
8697 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8721 DELETE FROM dbms_stats._relation_stats_locked;
8722 SELECT dbms_stats.lock_database_stats();
8724 ---------------------
8743 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8766 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8767 starelid | attname | stainherit
8768 ----------+---------+------------
8790 SELECT dbms_stats.unlock_column_stats('s00.s0', 'id');
8791 ERROR: schema "s00" does not exist
8792 LINE 1: SELECT dbms_stats.unlock_column_stats('s00.s0', 'id');
8794 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8795 starelid | attname | stainherit
8796 ----------+---------+------------
8818 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8842 DELETE FROM dbms_stats._relation_stats_locked;
8843 SELECT dbms_stats.lock_database_stats();
8845 ---------------------
8864 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8887 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8888 starelid | attname | stainherit
8889 ----------+---------+------------
8911 SELECT dbms_stats.unlock_column_stats(NULL, 'id');
8913 ---------------------
8916 SELECT starelid, attname, stainherit FROM columns_locked_v c;
8917 starelid | attname | stainherit
8918 ----------+---------+------------
8940 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
8964 DELETE FROM dbms_stats._relation_stats_locked;
8965 SELECT dbms_stats.lock_database_stats();
8967 ---------------------
8986 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9009 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9010 starelid | attname | stainherit
9011 ----------+---------+------------
9033 SELECT dbms_stats.unlock_column_stats('s0.st0', NULL);
9035 ---------------------
9038 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9039 starelid | attname | stainherit
9040 ----------+---------+------------
9062 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9086 DELETE FROM dbms_stats._relation_stats_locked;
9087 SELECT dbms_stats.lock_database_stats();
9089 ---------------------
9108 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9131 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9132 starelid | attname | stainherit
9133 ----------+---------+------------
9156 SELECT relation::regclass, mode
9158 WHERE mode LIKE '%ExclusiveLock%'
9159 ORDER BY relation::regclass::text, mode;
9161 ----------+---------------
9162 (null) | ExclusiveLock
9165 SELECT dbms_stats.unlock_column_stats('s0.st0', 'id');
9167 ---------------------
9171 SELECT relation::regclass, mode
9173 WHERE mode LIKE '%ExclusiveLock%'
9174 ORDER BY relation::regclass::text, mode;
9176 --------------------------------------+--------------------------
9177 dbms_stats._column_stats_locked | RowExclusiveLock
9178 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
9179 dbms_stats._column_stats_locked_pkey | RowExclusiveLock
9180 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
9181 (null) | ExclusiveLock
9182 (null) | ExclusiveLock
9186 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9187 starelid | attname | stainherit
9188 ----------+---------+------------
9208 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9232 * No.14-6 dbms_stats.unlock_column_stats(schemaname, tablename, attname)
9235 DELETE FROM dbms_stats._relation_stats_locked;
9236 SELECT dbms_stats.lock_database_stats();
9238 ---------------------
9257 SELECT * FROM dbms_stats.backup_history
9259 id | time | unit | comment
9260 ----+-------------------------------------+------+---------
9261 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
9262 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
9263 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
9264 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
9265 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
9266 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
9267 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
9268 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
9271 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9294 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9295 starelid | attname | stainherit
9296 ----------+---------+------------
9318 SELECT dbms_stats.unlock_column_stats('s0', 'st0', 'id');
9320 ---------------------
9324 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9325 starelid | attname | stainherit
9326 ----------+---------+------------
9346 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9369 SELECT * FROM dbms_stats.backup_history
9371 id | time | unit | comment
9372 ----+-------------------------------------+------+---------
9373 1 | Wed Feb 29 23:59:56.999999 2012 PST | d | (null)
9374 2 | Wed Feb 29 23:59:57 2012 PST | d | (null)
9375 3 | Wed Feb 29 23:59:57.000001 2012 PST | t | (null)
9376 4 | Wed Feb 29 23:59:58 2012 PST | d | (null)
9377 5 | Thu Mar 01 00:00:00 2012 PST | c | (null)
9378 6 | Thu Mar 01 00:00:02 2012 PST | t | (null)
9379 7 | Thu Mar 01 00:00:04 2012 PST | t | (null)
9380 8 | Thu Mar 01 00:00:06 2012 PST | s | (null)
9383 SELECT count(*) FROM dbms_stats.relation_stats_backup;
9389 SELECT count(*) FROM dbms_stats.column_stats_backup;
9396 DELETE FROM dbms_stats._relation_stats_locked;
9397 SELECT dbms_stats.lock_database_stats();
9399 ---------------------
9418 DELETE FROM dbms_stats._column_stats_locked;
9419 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9442 SELECT dbms_stats.unlock_column_stats('s0', 'st0', 'id');
9444 ---------------------
9448 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9449 starelid | attname | stainherit
9450 ----------+---------+------------
9453 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9477 DELETE FROM dbms_stats._relation_stats_locked;
9478 SELECT dbms_stats.lock_database_stats();
9480 ---------------------
9499 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9522 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9523 starelid | attname | stainherit
9524 ----------+---------+------------
9546 SELECT dbms_stats.unlock_column_stats('s0', 'st0', 'id');
9548 ---------------------
9552 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9553 starelid | attname | stainherit
9554 ----------+---------+------------
9574 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9598 DELETE FROM dbms_stats._relation_stats_locked;
9599 SELECT dbms_stats.lock_database_stats();
9601 ---------------------
9620 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9643 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9644 starelid | attname | stainherit
9645 ----------+---------+------------
9667 SELECT dbms_stats.unlock_column_stats('s0', 'st0', 'dummy');
9668 ERROR: column "dummy" of "s0.st0" does not exist
9669 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9670 starelid | attname | stainherit
9671 ----------+---------+------------
9693 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9717 DELETE FROM dbms_stats._relation_stats_locked;
9718 SELECT dbms_stats.lock_database_stats();
9720 ---------------------
9739 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9762 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9763 starelid | attname | stainherit
9764 ----------+---------+------------
9786 SELECT dbms_stats.unlock_column_stats(NULL, 'st0', 'id');
9788 ---------------------
9791 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9792 starelid | attname | stainherit
9793 ----------+---------+------------
9815 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9839 DELETE FROM dbms_stats._relation_stats_locked;
9840 SELECT dbms_stats.lock_database_stats();
9842 ---------------------
9861 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9884 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9885 starelid | attname | stainherit
9886 ----------+---------+------------
9908 SELECT dbms_stats.unlock_column_stats('s0', NULL, 'id');
9910 ---------------------
9913 SELECT starelid, attname, stainherit FROM columns_locked_v c;
9914 starelid | attname | stainherit
9915 ----------+---------+------------
9937 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
9961 DELETE FROM dbms_stats._relation_stats_locked;
9962 SELECT dbms_stats.lock_database_stats();
9964 ---------------------
9983 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
10006 SELECT starelid, attname, stainherit FROM columns_locked_v c;
10007 starelid | attname | stainherit
10008 ----------+---------+------------
10021 st1_exp | lower | f
10030 SELECT dbms_stats.unlock_column_stats('s0', 'st0', NULL);
10031 unlock_column_stats
10032 ---------------------
10035 SELECT starelid, attname, stainherit FROM columns_locked_v c;
10036 starelid | attname | stainherit
10037 ----------+---------+------------
10050 st1_exp | lower | f
10059 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
10083 DELETE FROM dbms_stats._relation_stats_locked;
10084 SELECT dbms_stats.lock_database_stats();
10085 lock_database_stats
10086 ---------------------
10105 SELECT relid::regclass FROM dbms_stats._relation_stats_locked
10128 SELECT starelid, attname, stainherit FROM columns_locked_v c;
10129 starelid | attname | stainherit
10130 ----------+---------+------------
10143 st1_exp | lower | f
10153 SELECT relation::regclass, mode
10155 WHERE mode LIKE '%ExclusiveLock%'
10156 ORDER BY relation::regclass::text, mode;
10158 ----------+---------------
10159 (null) | ExclusiveLock
10162 SELECT dbms_stats.unlock_column_stats('s0', 'st0', 'id');
10163 unlock_column_stats
10164 ---------------------
10168 SELECT relation::regclass, mode
10170 WHERE mode LIKE '%ExclusiveLock%'
10171 ORDER BY relation::regclass::text, mode;
10173 --------------------------------------+--------------------------
10174 dbms_stats._column_stats_locked | RowExclusiveLock
10175 dbms_stats._column_stats_locked | ShareUpdateExclusiveLock
10176 dbms_stats._column_stats_locked_pkey | RowExclusiveLock
10177 dbms_stats._relation_stats_locked | ShareUpdateExclusiveLock
10178 (null) | ExclusiveLock
10179 (null) | ExclusiveLock
10183 SELECT starelid, attname, stainherit FROM columns_locked_v c;
10184 starelid | attname | stainherit
10185 ----------+---------+------------
10196 st1_exp | lower | f
10205 SELECT relid::regclass FROM dbms_stats._relation_stats_locked