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 <pavel.stehule@gmail.com>
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

Lines changed: 1 addition & 1 deletion
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

Lines changed: 6 additions & 0 deletions
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

Lines changed: 3 additions & 0 deletions
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

Lines changed: 18 additions & 0 deletions
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

Lines changed: 3 additions & 0 deletions
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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy