Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit22cc0e1

Browse files
committed
Remove NOBTREE defines, and make findoidlinks handle regproc.
1 parent22b370e commit22cc0e1

File tree

5 files changed

+60
-195
lines changed

5 files changed

+60
-195
lines changed

‎contrib/findoidjoins/README

Lines changed: 38 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,60 +7,83 @@ they join to. PostgreSQL version 6.3.2 crashes with aggregates on
77
views, so I have removed the view pg_user from the list of relations to
88
examine.
99

10+
It requires /pgsql/contrib/pginterface to be compiled first.
11+
1012
Run on am empty database, it returns the system join relationships:
1113

1214
---------------------------------------------------------------------------
1315

16+
Join pg_aggregate.aggbasetype => pg_proc.oid
17+
Join pg_aggregate.aggbasetype => pg_type.oid
18+
Join pg_aggregate.aggfinalfn => pg_proc.oid
1419
Join pg_aggregate.aggfinaltype => pg_proc.oid
1520
Join pg_aggregate.aggfinaltype => pg_type.oid
1621
Join pg_aggregate.aggowner => pg_proc.oid
17-
Join pg_aggregate.aggbasetype => pg_proc.oid
18-
Join pg_aggregate.aggbasetype =>pg_type.oid
22+
Join pg_aggregate.aggtransfn1 => pg_proc.oid
23+
Join pg_aggregate.aggtransfn2 =>pg_proc.oid
1924
Join pg_aggregate.aggtranstype1 => pg_proc.oid
2025
Join pg_aggregate.aggtranstype1 => pg_type.oid
2126
Join pg_aggregate.aggtranstype2 => pg_type.oid
27+
Join pg_am.ambeginscan => pg_proc.oid
28+
Join pg_am.ambuild => pg_proc.oid
29+
Join pg_am.amdelete => pg_proc.oid
30+
Join pg_am.amendscan => pg_proc.oid
31+
Join pg_am.amgettuple => pg_proc.oid
32+
Join pg_am.aminsert => pg_proc.oid
33+
Join pg_am.ammarkpos => pg_proc.oid
2234
Join pg_am.amowner => pg_proc.oid
35+
Join pg_am.amrescan => pg_proc.oid
36+
Join pg_am.amrestrpos => pg_proc.oid
37+
Join pg_amop.amopclaid => pg_opclass.oid
2338
Join pg_amop.amopid => pg_am.oid
39+
Join pg_amop.amopnpages => pg_proc.oid
2440
Join pg_amop.amopopr => pg_operator.oid
25-
Join pg_amop.amopclaid => pg_opclass.oid
26-
Join pg_amproc.amproc => pg_operator.oid
27-
Join pg_amproc.amproc => pg_proc.oid
41+
Join pg_amop.amopselect => pg_proc.oid
42+
Join pg_amproc.amid => pg_am.oid
2843
Join pg_amproc.amopclaid => pg_opclass.oid
2944
Join pg_amproc.amopclaid => pg_operator.oid
3045
Join pg_amproc.amopclaid => pg_proc.oid
31-
Join pg_amproc.amid => pg_am.oid
46+
Join pg_amproc.amproc => pg_operator.oid
47+
Join pg_amproc.amproc => pg_proc.oid
3248
Join pg_attribute.attrelid => pg_class.oid
3349
Join pg_attribute.atttypid => pg_type.oid
3450
Join pg_class.relam => pg_am.oid
35-
Join pg_class.reltype => pg_type.oid
3651
Join pg_class.relowner => pg_proc.oid
52+
Join pg_class.reltype => pg_type.oid
3753
Join pg_description.objoid => pg_proc.oid
3854
Join pg_description.objoid => pg_type.oid
3955
Join pg_index.indexrelid => pg_class.oid
40-
Join pg_index.indrelid => pg_class.oid
4156
Join pg_index.indproc => pg_proc.oid
57+
Join pg_index.indrelid => pg_class.oid
4258
Join pg_opclass.opcdeftype => pg_type.oid
59+
Join pg_operator.oprcode => pg_proc.oid
4360
Join pg_operator.oprcom => pg_operator.oid
44-
Join pg_operator.oprrsortop => pg_operator.oid
61+
Join pg_operator.oprjoin => pg_proc.oid
62+
Join pg_operator.oprleft => pg_type.oid
4563
Join pg_operator.oprlsortop => pg_operator.oid
4664
Join pg_operator.oprnegate => pg_operator.oid
65+
Join pg_operator.oprowner => pg_proc.oid
66+
Join pg_operator.oprrest => pg_proc.oid
4767
Join pg_operator.oprresult => pg_type.oid
4868
Join pg_operator.oprright => pg_type.oid
49-
Join pg_operator.oprleft => pg_type.oid
50-
Join pg_operator.oprowner => pg_proc.oid
51-
Join pg_parg.partype => pg_type.oid
69+
Join pg_operator.oprrsortop => pg_operator.oid
5270
Join pg_parg.parproid => pg_operator.oid
5371
Join pg_parg.parproid => pg_proc.oid
72+
Join pg_parg.partype => pg_type.oid
5473
Join pg_proc.prolang => pg_language.oid
55-
Join pg_proc.prorettype => pg_type.oid
5674
Join pg_proc.proowner => pg_proc.oid
75+
Join pg_proc.prorettype => pg_type.oid
5776
Join pg_rewrite.ev_class => pg_class.oid
5877
Join pg_statistic.starelid => pg_class.oid
59-
Join pg_type.typrelid => pg_class.oid
60-
Join pg_type.typowner => pg_proc.oid
6178
Join pg_type.typelem => pg_operator.oid
6279
Join pg_type.typelem => pg_proc.oid
6380
Join pg_type.typelem => pg_type.oid
81+
Join pg_type.typinput => pg_proc.oid
82+
Join pg_type.typoutput => pg_proc.oid
83+
Join pg_type.typowner => pg_proc.oid
84+
Join pg_type.typreceive => pg_proc.oid
85+
Join pg_type.typrelid => pg_class.oid
86+
Join pg_type.typsend => pg_proc.oid
6487

6588

6689
---------------------------------------------------------------------------

‎contrib/findoidjoins/findoidjoins.c

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
*/
55

66
#include<stdio.h>
7+
#include<string.h>
78
#include"halt.h"
89
#include<libpq-fe.h>
910
#include"pginterface.h"
@@ -17,6 +18,7 @@ main(int argc, char **argv)
1718
charrelname[256];
1819
charrelname2[256];
1920
charattname[256];
21+
chartypname[256];
2022
intcount;
2123

2224
if (argc!=2)
@@ -29,14 +31,15 @@ main(int argc, char **argv)
2931
doquery("BEGIN WORK");
3032
doquery("\
3133
DECLARE c_attributes BINARY CURSOR FOR \
32-
SELECT relname, a.attname \
34+
SELECTtypname,relname, a.attname \
3335
FROM pg_class c, pg_attribute a, pg_type t \
3436
WHERE a.attnum > 0 AND \
3537
relkind = 'r' AND \
36-
typname = 'oid' AND \
38+
(typname = 'oid' OR \
39+
typname = 'regproc') AND \
3740
a.attrelid = c.oid AND \
3841
a.atttypid = t.oid \
39-
ORDER BY1; \
42+
ORDER BY2, 3; \
4043
");
4144
doquery("FETCH ALL IN c_attributes");
4245
attres=get_result();
@@ -53,18 +56,25 @@ main(int argc, char **argv)
5356
relres=get_result();
5457

5558
set_result(attres);
56-
while (fetch(relname,attname)!=END_OF_TUPLES)
59+
while (fetch(typname,relname,attname)!=END_OF_TUPLES)
5760
{
5861
set_result(relres);
5962
reset_fetch();
6063
while (fetch(relname2)!=END_OF_TUPLES)
6164
{
6265
unset_result(relres);
63-
sprintf(query,"\
64-
DECLARE c_matches BINARY CURSOR FOR \
65-
SELECTcount(*)
66-
FROM%st1, %st2 \
67-
WHEREt1.%s=t2.oid",relname,relname2,attname);
66+
if (strcmp(typname,"oid")==0)
67+
sprintf(query,"\
68+
DECLARE c_matches BINARY CURSOR FOR \
69+
SELECTcount(*)
70+
FROM%st1, %st2 \
71+
WHEREt1.%s=t2.oid",relname,relname2,attname);
72+
else
73+
sprintf(query,"\
74+
DECLARE c_matches BINARY CURSOR FOR \
75+
SELECTcount(*)
76+
FROM%st1, %st2 \
77+
WHERERegprocToOid(t1.%s)=t2.oid",relname,relname2,attname);
6878

6979
doquery(query);
7080
doquery("FETCH ALL IN c_matches");

‎src/include/catalog/pg_am.h

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
* Copyright (c) 1994, Regents of the University of California
99
*
10-
* $Id: pg_am.h,v 1.5 1997/11/13 03:22:57 momjian Exp $
10+
* $Id: pg_am.h,v 1.6 1998/08/11 05:32:43 momjian Exp $
1111
*
1212
* NOTES
1313
*the genbki.sh script reads this file and generates .bki
@@ -109,13 +109,4 @@ DESCR("");
109109
DATA(insertOID=783 (gistPGUID"o"1007gistgettuplegistinsertgistdelete----gistbeginscangistrescangistendscangistmarkposgistrestrpos--gistbuild-- ));
110110
DESCR("");
111111

112-
BKI_BEGIN
113-
#ifdefNOBTREE
114-
BKI_END
115-
DATA(insertOID=404 (nobtreePGUID"o"51nobtgettuplenobtinsertnobtdelete----nobtbeginscannobtrescannobtendscannobtmarkposnobtrestrpos--nobtbuild-- ));
116-
DESCR("");
117-
BKI_BEGIN
118-
#endif/* NOBTREE */
119-
BKI_END
120-
121112
#endif/* PG_AM_H */

‎src/include/catalog/pg_amop.h

Lines changed: 1 addition & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
* Copyright (c) 1994, Regents of the University of California
99
*
10-
* $Id: pg_amop.h,v 1.12 1998/04/26 04:08:52 momjian Exp $
10+
* $Id: pg_amop.h,v 1.13 1998/08/11 05:32:45 momjian Exp $
1111
*
1212
* NOTES
1313
* the genbki.sh script reads this file and generates .bki
@@ -318,143 +318,6 @@ DATA(insert OID = 0 ( 403 1313 1330 3 btreesel btreenpage ));
318318
DATA(insertOID=0 (403131313354btreeselbtreenpage ));
319319
DATA(insertOID=0 (403131313345btreeselbtreenpage ));
320320

321-
BKI_BEGIN
322-
#ifdefNOBTREE
323-
BKI_END
324-
/*
325-
*nobtree int2_ops
326-
*/
327-
328-
DATA(insertOID=0 (404421951btreeselbtreenpage ));
329-
DATA(insertOID=0 (4044215222btreeselbtreenpage ));
330-
DATA(insertOID=0 (404421943btreeselbtreenpage ));
331-
DATA(insertOID=0 (4044215244btreeselbtreenpage ));
332-
DATA(insertOID=0 (4044215205btreeselbtreenpage ));
333-
334-
/*
335-
*nobtree float8_ops
336-
*/
337-
338-
DATA(insertOID=0 (4044236721btreeselbtreenpage ));
339-
DATA(insertOID=0 (4044236732btreeselbtreenpage ));
340-
DATA(insertOID=0 (4044236703btreeselbtreenpage ));
341-
DATA(insertOID=0 (4044236754btreeselbtreenpage ));
342-
DATA(insertOID=0 (4044236745btreeselbtreenpage ));
343-
344-
/*
345-
*nobtree int24_ops
346-
*/
347-
348-
DATA(insertOID=0 (4044245341btreeselbtreenpage ));
349-
DATA(insertOID=0 (4044245402btreeselbtreenpage ));
350-
DATA(insertOID=0 (4044245323btreeselbtreenpage ));
351-
DATA(insertOID=0 (4044245424btreeselbtreenpage ));
352-
DATA(insertOID=0 (4044245365btreeselbtreenpage ));
353-
354-
/*
355-
*nobtree int42_ops
356-
*/
357-
358-
DATA(insertOID=0 (4044255351btreeselbtreenpage ));
359-
DATA(insertOID=0 (4044255412btreeselbtreenpage ));
360-
DATA(insertOID=0 (4044255333btreeselbtreenpage ));
361-
DATA(insertOID=0 (4044255434btreeselbtreenpage ));
362-
DATA(insertOID=0 (4044255375btreeselbtreenpage ));
363-
364-
/*
365-
*nobtree int4_ops
366-
*/
367-
368-
DATA(insertOID=0 (404426971btreeselbtreenpage ));
369-
DATA(insertOID=0 (4044265232btreeselbtreenpage ));
370-
DATA(insertOID=0 (404426963btreeselbtreenpage ));
371-
DATA(insertOID=0 (4044265254btreeselbtreenpage ));
372-
DATA(insertOID=0 (4044265215btreeselbtreenpage ));
373-
374-
/*
375-
*nobtree oid_ops
376-
*/
377-
378-
DATA(insertOID=0 (4044276091btreeselbtreenpage ));
379-
DATA(insertOID=0 (4044276112btreeselbtreenpage ));
380-
DATA(insertOID=0 (4044276073btreeselbtreenpage ));
381-
DATA(insertOID=0 (4044276124btreeselbtreenpage ));
382-
DATA(insertOID=0 (4044276105btreeselbtreenpage ));
383-
384-
/*
385-
*nobtree float4_ops
386-
*/
387-
388-
DATA(insertOID=0 (4044286221btreeselbtreenpage ));
389-
DATA(insertOID=0 (4044286242btreeselbtreenpage ));
390-
DATA(insertOID=0 (4044286203btreeselbtreenpage ));
391-
DATA(insertOID=0 (4044286254btreeselbtreenpage ));
392-
DATA(insertOID=0 (4044286235btreeselbtreenpage ));
393-
394-
/*
395-
*nobtree char_ops
396-
*/
397-
398-
DATA(insertOID=0 (4044296311btreeselbtreenpage ));
399-
DATA(insertOID=0 (4044296322btreeselbtreenpage ));
400-
DATA(insertOID=0 (404429923btreeselbtreenpage ));
401-
DATA(insertOID=0 (4044296344btreeselbtreenpage ));
402-
DATA(insertOID=0 (4044296335btreeselbtreenpage ));
403-
404-
/*
405-
*nobtree name_ops
406-
*/
407-
408-
DATA(insertOID=0 (40411816601btreeselbtreenpage ));
409-
DATA(insertOID=0 (40411816612btreeselbtreenpage ));
410-
DATA(insertOID=0 (4041181933btreeselbtreenpage ));
411-
DATA(insertOID=0 (40411816634btreeselbtreenpage ));
412-
DATA(insertOID=0 (40411816625btreeselbtreenpage ));
413-
414-
/*
415-
*nobtree text_ops
416-
*/
417-
418-
DATA(insertOID=0 (4044316641btreeselbtreenpage ));
419-
DATA(insertOID=0 (4044316652btreeselbtreenpage ));
420-
DATA(insertOID=0 (404431983btreeselbtreenpage ));
421-
DATA(insertOID=0 (4044316674btreeselbtreenpage ));
422-
DATA(insertOID=0 (4044316665btreeselbtreenpage ));
423-
424-
/*
425-
*nobtree abstime_ops
426-
*/
427-
428-
DATA(insertOID=0 (4044325621btreeselbtreenpage ));
429-
DATA(insertOID=0 (4044325642btreeselbtreenpage ));
430-
DATA(insertOID=0 (4044325603btreeselbtreenpage ));
431-
DATA(insertOID=0 (4044325654btreeselbtreenpage ));
432-
DATA(insertOID=0 (4044325635btreeselbtreenpage ));
433-
434-
/*
435-
*nobtree datetime_ops
436-
*/
437-
438-
DATA(insertOID=0 (404131213221btreeselbtreenpage ));
439-
DATA(insertOID=0 (404131213232btreeselbtreenpage ));
440-
DATA(insertOID=0 (404131213203btreeselbtreenpage ));
441-
DATA(insertOID=0 (404131213254btreeselbtreenpage ));
442-
DATA(insertOID=0 (404131213245btreeselbtreenpage ));
443-
444-
/*
445-
*nobtree timespan_ops
446-
*/
447-
448-
DATA(insertOID=0 (404131313321btreeselbtreenpage ));
449-
DATA(insertOID=0 (404131313332btreeselbtreenpage ));
450-
DATA(insertOID=0 (404131313303btreeselbtreenpage ));
451-
DATA(insertOID=0 (404131313354btreeselbtreenpage ));
452-
DATA(insertOID=0 (404131313345btreeselbtreenpage ));
453-
454-
BKI_BEGIN
455-
#endif/* NOBTREE */
456-
BKI_END
457-
458321
/*
459322
*hash table _ops
460323
*/

‎src/include/catalog/pg_amproc.h

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
*
1010
* Copyright (c) 1994, Regents of the University of California
1111
*
12-
* $Id: pg_amproc.h,v 1.7 1997/11/30 22:58:07 thomas Exp $
12+
* $Id: pg_amproc.h,v 1.8 1998/08/11 05:32:46 momjian Exp $
1313
*
1414
* NOTES
1515
* the genbki.sh script reads this file and generates .bki
@@ -96,28 +96,6 @@ DATA(insert OID = 0 (403 1115 1107 1));
9696
DATA(insertOID=0 (403131213141));
9797
DATA(insertOID=0 (403131313151));
9898

99-
BKI_BEGIN
100-
#ifdefNOBTREE
101-
BKI_END
102-
DATA(insertOID=0 (4044213501));
103-
DATA(insertOID=0 (4044233551));
104-
DATA(insertOID=0 (4044243531));
105-
DATA(insertOID=0 (4044253521));
106-
DATA(insertOID=0 (4044263511));
107-
DATA(insertOID=0 (4044273561));
108-
DATA(insertOID=0 (4044283541));
109-
DATA(insertOID=0 (4044293581));
110-
DATA(insertOID=0 (4044066891));
111-
DATA(insertOID=0 (4044076901));
112-
DATA(insertOID=0 (4044086911));
113-
DATA(insertOID=0 (40411813591));
114-
DATA(insertOID=0 (40443012741));
115-
DATA(insertOID=0 (4044313601));
116-
DATA(insertOID=0 (4044323571));
117-
BKI_BEGIN
118-
#endif/* NOBTREE */
119-
BKI_END
120-
12199
DATA(insertOID=0 (4054214491));
122100
DATA(insertOID=0 (4054234521));
123101
DATA(insertOID=0 (4054264501));

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp