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

Commit4509033

Browse files
committed
Code review for range-types catalog entries.
Fix assorted infelicities, such as dependency on OIDs that aren'thardwired, as well as outright misdeclaration of daterange_canonical(),which resulted in crashes if you invoked it directly. Add some moreregression tests to try to catch similar mistakes in future.
1 parentff4fd4b commit4509033

File tree

11 files changed

+179
-85
lines changed

11 files changed

+179
-85
lines changed

‎src/include/catalog/catversion.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,6 @@
5353
*/
5454

5555
/*yyyymmddN */
56-
#defineCATALOG_VERSION_NO201111141
56+
#defineCATALOG_VERSION_NO201111161
5757

5858
#endif

‎src/include/catalog/indexing.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ DECLARE_UNIQUE_INDEX(pg_extension_oid_index, 3080, on pg_extension using btree(o
303303
DECLARE_UNIQUE_INDEX(pg_extension_name_index,3081,onpg_extensionusingbtree(extnamename_ops));
304304
#defineExtensionNameIndexId 3081
305305

306-
DECLARE_UNIQUE_INDEX(pg_range_rgntypid_index,3542,onpg_rangeusingbtree(rngtypidoid_ops));
306+
DECLARE_UNIQUE_INDEX(pg_range_rngtypid_index,3542,onpg_rangeusingbtree(rngtypidoid_ops));
307307
#defineRangeTypidIndexId3542
308308

309309
/* last step of initialization script: build the indexes declared above */

‎src/include/catalog/pg_opclass.h

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ typedef FormData_pg_opclass *Form_pg_opclass;
8585
*initial contents of pg_opclass
8686
*
8787
* Note: we hard-wire an OID only for a few entries that have to be explicitly
88-
* referenced in the C codefor bootstrapping purposes. The rest get OIDs
88+
* referenced in the C codeor in built-in catalog entries. The rest get OIDs
8989
* assigned on-the-fly during initdb.
9090
* ----------------
9191
*/
@@ -102,11 +102,13 @@ DATA(insert (403char_opsPGNSP PGUID 429 18 t 0 ));
102102
DATA(insert (405char_opsPGNSPPGUID43118t0 ));
103103
DATA(insert (403cidr_opsPGNSPPGUID1974869f0 ));
104104
DATA(insert (405cidr_opsPGNSPPGUID1975869f0 ));
105-
DATA(insert (403date_opsPGNSPPGUID4341082t0 ));
105+
DATA(insertOID=3122 (403date_opsPGNSPPGUID4341082t0 ));
106+
#defineDATE_BTREE_OPS_OID 3122
106107
DATA(insert (405date_opsPGNSPPGUID4351082t0 ));
107108
DATA(insert (403float4_opsPGNSPPGUID1970700t0 ));
108109
DATA(insert (405float4_opsPGNSPPGUID1971700t0 ));
109-
DATA(insert (403float8_opsPGNSPPGUID1970701t0 ));
110+
DATA(insertOID=3123 (403float8_opsPGNSPPGUID1970701t0 ));
111+
#defineFLOAT8_BTREE_OPS_OID 3123
110112
DATA(insert (405float8_opsPGNSPPGUID1971701t0 ));
111113
DATA(insert (403inet_opsPGNSPPGUID1974869t0 ));
112114
DATA(insert (405inet_opsPGNSPPGUID1975869t0 ));
@@ -116,7 +118,8 @@ DATA(insert (405int2_opsPGNSP PGUID 1977 21 t 0 ));
116118
DATA(insertOID=1978 (403int4_opsPGNSPPGUID197623t0 ));
117119
#defineINT4_BTREE_OPS_OID 1978
118120
DATA(insert (405int4_opsPGNSPPGUID197723t0 ));
119-
DATA(insert (403int8_opsPGNSPPGUID197620t0 ));
121+
DATA(insertOID=3124 (403int8_opsPGNSPPGUID197620t0 ));
122+
#defineINT8_BTREE_OPS_OID 3124
120123
DATA(insert (405int8_opsPGNSPPGUID197720t0 ));
121124
DATA(insert (403interval_opsPGNSPPGUID19821186t0 ));
122125
DATA(insert (405interval_opsPGNSPPGUID19831186t0 ));
@@ -131,26 +134,30 @@ DATA(insert (405macaddr_opsPGNSP PGUID 1985 829 t 0 ));
131134
*/
132135
DATA(insert (403name_opsPGNSPPGUID198619t2275 ));
133136
DATA(insert (405name_opsPGNSPPGUID198719t0 ));
134-
DATA(insert (403numeric_opsPGNSPPGUID19881700t0 ));
137+
DATA(insertOID=3125 (403numeric_opsPGNSPPGUID19881700t0 ));
138+
#defineNUMERIC_BTREE_OPS_OID 3125
135139
DATA(insert (405numeric_opsPGNSPPGUID19981700t0 ));
136140
DATA(insertOID=1981 (403oid_opsPGNSPPGUID198926t0 ));
137141
#defineOID_BTREE_OPS_OID 1981
138142
DATA(insert (405oid_opsPGNSPPGUID199026t0 ));
139143
DATA(insert (403oidvector_opsPGNSPPGUID199130t0 ));
140144
DATA(insert (405oidvector_opsPGNSPPGUID199230t0 ));
141145
DATA(insert (403record_opsPGNSPPGUID29942249t0 ));
142-
DATA(insert (403text_opsPGNSPPGUID199425t0 ));
146+
DATA(insertOID=3126 (403text_opsPGNSPPGUID199425t0 ));
147+
#defineTEXT_BTREE_OPS_OID 3126
143148
DATA(insert (405text_opsPGNSPPGUID199525t0 ));
144149
DATA(insert (403time_opsPGNSPPGUID19961083t0 ));
145150
DATA(insert (405time_opsPGNSPPGUID19971083t0 ));
146-
DATA(insert (403timestamptz_opsPGNSPPGUID4341184t0 ));
151+
DATA(insertOID=3127 (403timestamptz_opsPGNSPPGUID4341184t0 ));
152+
#defineTIMESTAMPTZ_BTREE_OPS_OID 3127
147153
DATA(insert (405timestamptz_opsPGNSPPGUID19991184t0 ));
148154
DATA(insert (403timetz_opsPGNSPPGUID20001266t0 ));
149155
DATA(insert (405timetz_opsPGNSPPGUID20011266t0 ));
150156
DATA(insert (403varbit_opsPGNSPPGUID20021562t0 ));
151157
DATA(insert (403varchar_opsPGNSPPGUID199425f0 ));
152158
DATA(insert (405varchar_opsPGNSPPGUID199525f0 ));
153-
DATA(insert (403timestamp_opsPGNSPPGUID4341114t0 ));
159+
DATA(insertOID=3128 (403timestamp_opsPGNSPPGUID4341114t0 ));
160+
#defineTIMESTAMP_BTREE_OPS_OID 3128
154161
DATA(insert (405timestamp_opsPGNSPPGUID20401114t0 ));
155162
DATA(insert (403text_pattern_opsPGNSPPGUID209525f0 ));
156163
DATA(insert (403varchar_pattern_opsPGNSPPGUID209525f0 ));

‎src/include/catalog/pg_operator.h

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1674,32 +1674,33 @@ DATA(insert OID = 3886 ( ">=" PGNSP PGUID b f f 3831 3831 16 3885 3884 range
16741674
DESCR("greater than or equal");
16751675
DATA(insertOID=3887 (">"PGNSPPGUIDbff383138311638843885range_gtscalargtselscalargtjoinsel ));
16761676
DESCR("greater than");
1677-
DATA(insertOID=3888 ("&&"PGNSPPGUIDbff3831383116388803857-- ));
1677+
DATA(insertOID=3888 ("&&"PGNSPPGUIDbff383138311638880range_overlaps-- ));
16781678
DESCR("overlaps");
1679-
DATA(insertOID=3889 ("@>"PGNSPPGUIDbff3831277616389103858-- ));
1679+
DATA(insertOID=3889 ("@>"PGNSPPGUIDbff383127761638910range_contains_elem-- ));
16801680
DESCR("contains");
1681-
DATA(insertOID=3890 ("@>"PGNSPPGUIDbff3831383116389203859-- ));
1681+
DATA(insertOID=3890 ("@>"PGNSPPGUIDbff383138311638920range_contains-- ));
16821682
DESCR("contains");
1683-
DATA(insertOID=3891 ("<@"PGNSPPGUIDbff2776383116388903860-- ));
1684-
DESCR("contained by");
1685-
DATA(insertOID=3892 ("<@"PGNSPPGUIDbff3831383116389003861-- ));
1686-
DESCR("contained by");
1687-
DATA(insertOID=3893 ("<<"PGNSPPGUIDbff383138311600beforescalarltselscalarltjoinsel ));
1688-
DESCR("left of");
1689-
DATA(insertOID=3894 (">>"PGNSPPGUIDbff383138311600afterscalargtselscalargtjoinsel ));
1690-
DESCR("right of");
1691-
DATA(insertOID=3895 ("&<"PGNSPPGUIDbff383138311600overleftscalarltselscalarltjoinsel ));
1692-
DESCR("overlapstoleft");
1693-
DATA(insertOID=3896 ("&>"PGNSPPGUIDbff383138311600overrightscalargtselscalargtjoinsel ));
1694-
DESCR("overlapstoright");
1695-
DATA(insertOID=3897 ("-|-"PGNSPPGUIDbff383138311638970adjacent-- ));
1696-
DESCR("adjacent");
1683+
DATA(insertOID=3891 ("<@"PGNSPPGUIDbff277638311638890elem_contained_by_range-- ));
1684+
DESCR("iscontained by");
1685+
DATA(insertOID=3892 ("<@"PGNSPPGUIDbff383138311638900range_contained_by-- ));
1686+
DESCR("iscontained by");
1687+
DATA(insertOID=3893 ("<<"PGNSPPGUIDbff383138311600range_beforescalarltselscalarltjoinsel ));
1688+
DESCR("isleft of");
1689+
DATA(insertOID=3894 (">>"PGNSPPGUIDbff383138311600range_afterscalargtselscalargtjoinsel ));
1690+
DESCR("isright of");
1691+
DATA(insertOID=3895 ("&<"PGNSPPGUIDbff383138311600range_overleftscalarltselscalarltjoinsel ));
1692+
DESCR("overlapsor isleft of");
1693+
DATA(insertOID=3896 ("&>"PGNSPPGUIDbff383138311600range_overrightscalargtselscalargtjoinsel ));
1694+
DESCR("overlapsor isright of");
1695+
DATA(insertOID=3897 ("-|-"PGNSPPGUIDbff383138311638970range_adjacent-- ));
1696+
DESCR("isadjacent to");
16971697
DATA(insertOID=3898 ("+"PGNSPPGUIDbff38313831383138980range_union-- ));
16981698
DESCR("range union");
1699-
DATA(insertOID=3899 ("-"PGNSPPGUIDbff38313831383100minus-- ));
1699+
DATA(insertOID=3899 ("-"PGNSPPGUIDbff38313831383100range_minus-- ));
17001700
DESCR("range difference");
17011701
DATA(insertOID=3900 ("*"PGNSPPGUIDbff38313831383139000range_intersect-- ));
1702-
DESCR("intersection");
1702+
DESCR("range intersection");
1703+
17031704

17041705
/*
17051706
* function prototypes

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp