Skip to content

Commit 323b96a

Browse files
committed
Register missing money operators in system catalogs
The operators money*int8, int8*money, and money/int8 were implemented in code but not registered in pg_operator or pg_proc. Reviewed-by: Pavel Stehule <[email protected]>
1 parent 09e3531 commit 323b96a

File tree

5 files changed

+31
-1
lines changed

5 files changed

+31
-1
lines changed

src/include/catalog/catversion.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,6 @@
5353
*/
5454

5555
/* yyyymmddN */
56-
#define CATALOG_VERSION_NO 201701171
56+
#define CATALOG_VERSION_NO 201701172
5757

5858
#endif

src/include/catalog/pg_operator.h

+6
Original file line numberDiff line numberDiff line change
@@ -709,6 +709,10 @@ DATA(insert OID = 908 ( "*" PGNSP PGUID b f f 790 701 790 916 0 cash_mul_
709709
DESCR("multiply");
710710
DATA(insert OID = 909 ( "/" PGNSP PGUID b f f 790 701 790 0 0 cash_div_flt8 - - ));
711711
DESCR("divide");
712+
DATA(insert OID = 3346 ( "*" PGNSP PGUID b f f 790 20 790 3349 0 cash_mul_int8 - - ));
713+
DESCR("multiply");
714+
DATA(insert OID = 3347 ( "/" PGNSP PGUID b f f 790 20 790 0 0 cash_div_int8 - - ));
715+
DESCR("divide");
712716
DATA(insert OID = 912 ( "*" PGNSP PGUID b f f 790 23 790 917 0 cash_mul_int4 - - ));
713717
DESCR("multiply");
714718
DATA(insert OID = 913 ( "/" PGNSP PGUID b f f 790 23 790 0 0 cash_div_int4 - - ));
@@ -719,6 +723,8 @@ DATA(insert OID = 915 ( "/" PGNSP PGUID b f f 790 21 790 0 0 cash_div_
719723
DESCR("divide");
720724
DATA(insert OID = 916 ( "*" PGNSP PGUID b f f 701 790 790 908 0 flt8_mul_cash - - ));
721725
DESCR("multiply");
726+
DATA(insert OID = 3349 ( "*" PGNSP PGUID b f f 20 790 790 3346 0 int8_mul_cash - - ));
727+
DESCR("multiply");
722728
DATA(insert OID = 917 ( "*" PGNSP PGUID b f f 23 790 790 912 0 int4_mul_cash - - ));
723729
DESCR("multiply");
724730
DATA(insert OID = 918 ( "*" PGNSP PGUID b f f 21 790 790 914 0 int2_mul_cash - - ));

src/include/catalog/pg_proc.h

+3
Original file line numberDiff line numberDiff line change
@@ -957,8 +957,11 @@ DESCR("name of the current database");
957957
DATA(insert OID = 817 ( current_query PGNSP PGUID 12 1 0 0 0 f f f f f f v r 0 0 25 "" _null_ _null_ _null_ _null_ _null_ current_query _null_ _null_ _null_ ));
958958
DESCR("get the currently executing query");
959959

960+
DATA(insert OID = 3343 ( int8_mul_cash PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "20 790" _null_ _null_ _null_ _null_ _null_ int8_mul_cash _null_ _null_ _null_ ));
960961
DATA(insert OID = 862 ( int4_mul_cash PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "23 790" _null_ _null_ _null_ _null_ _null_ int4_mul_cash _null_ _null_ _null_ ));
961962
DATA(insert OID = 863 ( int2_mul_cash PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "21 790" _null_ _null_ _null_ _null_ _null_ int2_mul_cash _null_ _null_ _null_ ));
963+
DATA(insert OID = 3344 ( cash_mul_int8 PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "790 20" _null_ _null_ _null_ _null_ _null_ cash_mul_int8 _null_ _null_ _null_ ));
964+
DATA(insert OID = 3345 ( cash_div_int8 PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "790 20" _null_ _null_ _null_ _null_ _null_ cash_div_int8 _null_ _null_ _null_ ));
962965
DATA(insert OID = 864 ( cash_mul_int4 PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "790 23" _null_ _null_ _null_ _null_ _null_ cash_mul_int4 _null_ _null_ _null_ ));
963966
DATA(insert OID = 865 ( cash_div_int4 PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "790 23" _null_ _null_ _null_ _null_ _null_ cash_div_int4 _null_ _null_ _null_ ));
964967
DATA(insert OID = 866 ( cash_mul_int2 PGNSP PGUID 12 1 0 0 0 f f f f t f i s 2 0 790 "790 21" _null_ _null_ _null_ _null_ _null_ cash_mul_int2 _null_ _null_ _null_ ));

src/test/regress/expected/money.out

+18
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,24 @@ SELECT m / 2::int2 FROM money_data;
6969
$61.50
7070
(1 row)
7171

72+
SELECT m * 2::int8 FROM money_data;
73+
?column?
74+
----------
75+
$246.00
76+
(1 row)
77+
78+
SELECT 2::int8 * m FROM money_data;
79+
?column?
80+
----------
81+
$246.00
82+
(1 row)
83+
84+
SELECT m / 2::int8 FROM money_data;
85+
?column?
86+
----------
87+
$61.50
88+
(1 row)
89+
7290
SELECT m * 2::float8 FROM money_data;
7391
?column?
7492
----------

src/test/regress/sql/money.sql

+3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ SELECT m / 2 FROM money_data;
1616
SELECT m * 2::int2 FROM money_data;
1717
SELECT 2::int2 * m FROM money_data;
1818
SELECT m / 2::int2 FROM money_data;
19+
SELECT m * 2::int8 FROM money_data;
20+
SELECT 2::int8 * m FROM money_data;
21+
SELECT m / 2::int8 FROM money_data;
1922
SELECT m * 2::float8 FROM money_data;
2023
SELECT 2::float8 * m FROM money_data;
2124
SELECT m / 2::float8 FROM money_data;

0 commit comments

Comments
 (0)