diff --git a/contrib/babelfishpg_common/sql/money/fixeddecimal--1.1.0_base_parallel.sql b/contrib/babelfishpg_common/sql/money/fixeddecimal--1.1.0_base_parallel.sql index 6d45a56a3c..1909bac03d 100755 --- a/contrib/babelfishpg_common/sql/money/fixeddecimal--1.1.0_base_parallel.sql +++ b/contrib/babelfishpg_common/sql/money/fixeddecimal--1.1.0_base_parallel.sql @@ -2005,3 +2005,13 @@ CREATE FUNCTION sys.smallmoneysmaller(sys.SMALLMONEY, sys.SMALLMONEY) RETURNS sys.SMALLMONEY AS 'babelfishpg_money', 'fixeddecimalsmaller' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sys.moneylarger(sys.MONEY, sys.MONEY) +RETURNS sys.MONEY +AS 'babelfishpg_money', 'fixeddecimallarger' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sys.moneysmaller(sys.MONEY, sys.MONEY) +RETURNS sys.MONEY +AS 'babelfishpg_money', 'fixeddecimalsmaller' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; diff --git a/contrib/babelfishpg_common/sql/money/fixeddecimal--parallelaggs.sql b/contrib/babelfishpg_common/sql/money/fixeddecimal--parallelaggs.sql index a4207326b0..99f9ae7145 100644 --- a/contrib/babelfishpg_common/sql/money/fixeddecimal--parallelaggs.sql +++ b/contrib/babelfishpg_common/sql/money/fixeddecimal--parallelaggs.sql @@ -80,3 +80,17 @@ CREATE AGGREGATE sys.max(sys.smallmoney) ( COMBINEFUNC = sys.smallmoneylarger, PARALLEL = SAFE ); + +CREATE AGGREGATE sys.min(sys.money) ( + SFUNC = sys.moneysmaller, + STYPE = sys.money, + COMBINEFUNC = sys.moneysmaller, + PARALLEL = SAFE +); + +CREATE AGGREGATE sys.max(sys.money) ( + SFUNC = sys.moneylarger, + STYPE = sys.money, + COMBINEFUNC = sys.moneylarger, + PARALLEL = SAFE +); diff --git a/test/JDBC/expected/BABEL-3006.out b/test/JDBC/expected/BABEL-3006.out index 4cc0f5cc03..38290f2689 100644 --- a/test/JDBC/expected/BABEL-3006.out +++ b/test/JDBC/expected/BABEL-3006.out @@ -153,7 +153,7 @@ select cast(pg_typeof(m) as varchar(20)) d from (select min(d) as m from t3006_m go ~~START~~ varchar -fixeddecimal +money ~~END~~ ~~START~~ @@ -173,7 +173,7 @@ select cast(pg_typeof(m) as varchar(20)) d from (select max(d) as m from t3006_m go ~~START~~ varchar -fixeddecimal +money ~~END~~ ~~START~~ diff --git a/test/JDBC/expected/money_aggregate-vu-cleanup.out b/test/JDBC/expected/money_aggregate-vu-cleanup.out new file mode 100644 index 0000000000..8338350afa --- /dev/null +++ b/test/JDBC/expected/money_aggregate-vu-cleanup.out @@ -0,0 +1,65 @@ +DROP PROCEDURE IF EXISTS get_column_info_p1; +GO + +DROP TABLE IF EXISTS TestMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTable1; +GO + +DROP TABLE IF EXISTS ResultTable2; +GO + +DROP TABLE IF EXISTS ResultTable3; +GO + +DROP TABLE IF EXISTS ResultTable4; +GO + +DROP TABLE IF EXISTS ResultTable5; +GO + +DROP TABLE IF EXISTS ResultTable6; +GO + +DROP TABLE IF EXISTS ResultTable7; +GO + +DROP TABLE IF EXISTS ResultTable8; +GO + +DROP TABLE IF EXISTS ResultTable9; +GO + +DROP TABLE IF EXISTS ResultTable10; +GO + +DROP TABLE IF EXISTS EmptyMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableEmpty; +GO + +DROP TABLE IF EXISTS ExtremeMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableExtreme; +GO + +DROP TABLE IF EXISTS MixedNullMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableMixedNull; +GO + +DROP TABLE IF EXISTS OverflowMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableOverflow; +GO + +DROP TABLE IF EXISTS NonMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableNonMoney; +GO diff --git a/test/JDBC/expected/money_aggregate-vu-prepare.out b/test/JDBC/expected/money_aggregate-vu-prepare.out new file mode 100644 index 0000000000..36a7f20062 --- /dev/null +++ b/test/JDBC/expected/money_aggregate-vu-prepare.out @@ -0,0 +1,188 @@ +CREATE TABLE TestMoneyTable ( + ID INT IDENTITY(1,1) PRIMARY KEY, + Amount MONEY, + Description NVARCHAR(100) +); +GO + +-- Insert test data +INSERT INTO TestMoneyTable (Amount, Description) VALUES +(100.50, 'Item 1'), +(200.75, 'Item 2'), +(150.25, 'Item 3'), +(300.00, 'Item 4'), +(250.50, 'Item 5'), +(NULL, 'Null Amount'); +GO +~~ROW COUNT: 6~~ + + +CREATE PROCEDURE get_column_info_p1 + @table_name text +AS +BEGIN + SELECT c.[name] AS column_name, + t.[name] AS [type_name], + c.[max_length], + c.[precision], + c.[scale] + FROM sys.columns c + INNER JOIN sys.types t + ON c.user_type_id = t.user_type_id + WHERE object_id = object_id(@table_name) + ORDER BY c.[name]; +END +GO + +-- Test Case 1: MAX aggregation +SELECT MAX(Amount) AS MaxAmount +INTO ResultTable1 +FROM TestMoneyTable; +GO + +-- Test Case 2: MIN aggregation +SELECT MIN(Amount) AS MinAmount +INTO ResultTable2 +FROM TestMoneyTable; +GO + +-- Test Case 3: AVG aggregation +SELECT AVG(Amount) AS AvgAmount +INTO ResultTable3 +FROM TestMoneyTable; +GO + +-- Test Case 4: SUM aggregation +SELECT SUM(Amount) AS TotalAmount +INTO ResultTable4 +FROM TestMoneyTable; +GO + +-- Test Case 5: COUNT aggregation (should remain as INT) +SELECT COUNT(Amount) AS CountAmount +INTO ResultTable5 +FROM TestMoneyTable; +GO + +-- Test Case 6: Multiple aggregations in one query +SELECT + MAX(Amount) AS MaxAmount, + MIN(Amount) AS MinAmount, + AVG(Amount) AS AvgAmount, + SUM(Amount) AS TotalAmount, + COUNT(Amount) AS CountAmount +INTO ResultTable6 +FROM TestMoneyTable; +GO + +-- Test Case 7: Aggregation with GROUP BY +SELECT + Description, + MAX(Amount) AS MaxAmount +INTO ResultTable7 +FROM TestMoneyTable +GROUP BY Description; +GO + +-- Test Case 8: Aggregation with subquery +SELECT MaxAmount +INTO ResultTable8 +FROM ( + SELECT MAX(Amount) AS MaxAmount + FROM TestMoneyTable +) AS Subquery; +GO + +-- Test Case 9: Aggregation with HAVING clause +SELECT + Description, + MAX(Amount) AS MaxAmount +INTO ResultTable9 +FROM TestMoneyTable +GROUP BY Description +HAVING MAX(Amount) > 200; +GO + +-- Test Case 10: Aggregation with calculated MONEY column +SELECT + MAX(Amount * 2) AS DoubleMaxAmount +INTO ResultTable10 +FROM TestMoneyTable; +GO + +-- Negative Test Case: Empty table +CREATE TABLE EmptyMoneyTable (Amount MONEY); +GO + +SELECT MAX(Amount) AS MaxAmount +INTO ResultTableEmpty +FROM EmptyMoneyTable; +GO + +-- Edge Test Case: Extreme values +CREATE TABLE ExtremeMoneyTable (Amount MONEY); +GO + +INSERT INTO ExtremeMoneyTable VALUES +(922337203685477.5807), -- Maximum positive value for MONEY +(-922337203685477.5808); -- Minimum negative value for MONEY +GO +~~ROW COUNT: 2~~ + + +SELECT MAX(Amount) AS MaxAmount, MIN(Amount) AS MinAmount +INTO ResultTableExtreme +FROM ExtremeMoneyTable; +GO + +-- Arbitrary Test Case: Mixing NULL and non-NULL values +CREATE TABLE MixedNullMoneyTable (Amount MONEY); +GO + +INSERT INTO MixedNullMoneyTable VALUES +(100.00), (NULL), (200.00), (NULL), (300.00); +GO +~~ROW COUNT: 5~~ + + +SELECT + AVG(Amount) AS AvgAmount, + SUM(Amount) AS TotalAmount, + COUNT(Amount) AS CountNonNull, + COUNT(*) AS CountAll +INTO ResultTableMixedNull +FROM MixedNullMoneyTable; +GO + +-- Edge Test Case: Aggregating calculated values that exceed MONEY range +CREATE TABLE OverflowMoneyTable (Amount MONEY); +GO + +INSERT INTO OverflowMoneyTable VALUES +(922337203685477), (922337203685477); +GO +~~ROW COUNT: 2~~ + + +SELECT SUM(Amount) AS TotalAmount +INTO ResultTableOverflow +FROM OverflowMoneyTable; +GO +~~ERROR (Code: 33557097)~~ + +~~ERROR (Message: fixeddecimal out of range)~~ + + +-- Negative Test Case: Trying to aggregate non-MONEY column as MONEY +CREATE TABLE NonMoneyTable (Amount VARCHAR(20)); +GO + +INSERT INTO NonMoneyTable VALUES ('100.00'), ('200.00'); +GO +~~ROW COUNT: 2~~ + + +SELECT SUM(CAST(Amount AS MONEY)) AS TotalAmount +INTO ResultTableNonMoney +FROM NonMoneyTable; +GO diff --git a/test/JDBC/expected/money_aggregate-vu-verify.out b/test/JDBC/expected/money_aggregate-vu-verify.out new file mode 100644 index 0000000000..2078941616 --- /dev/null +++ b/test/JDBC/expected/money_aggregate-vu-verify.out @@ -0,0 +1,143 @@ +-- MAX() +EXEC get_column_info_p1 'ResultTable1'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +maxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- MIN() +EXEC get_column_info_p1 'ResultTable2'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +minamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- AVG() +EXEC get_column_info_p1 'ResultTable3'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +avgamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- SUM() +EXEC get_column_info_p1 'ResultTable4'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +totalamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- COUNT() +EXEC get_column_info_p1 'ResultTable5'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +countamount#!#int#!#4#!#10#!#0 +~~END~~ + + +-- Mix of different aggregates (MAX, MIN, AVG, SUM, COUNT) +EXEC get_column_info_p1 'ResultTable6'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +avgamount#!#money#!#8#!#19#!#4 +countamount#!#int#!#4#!#10#!#0 +maxamount#!#money#!#8#!#19#!#4 +minamount#!#money#!#8#!#19#!#4 +totalamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- MAX() with GROUP BY clause +EXEC get_column_info_p1 'ResultTable7'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +description#!#nvarchar#!#200#!#0#!#0 +maxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Aggregation with subquery +EXEC get_column_info_p1 'ResultTable8'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +maxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Aggregation with HAVING clause +EXEC get_column_info_p1 'ResultTable9'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +description#!#nvarchar#!#200#!#0#!#0 +maxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Aggregation with calculated MONEY column +EXEC get_column_info_p1 'ResultTable10'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +doublemaxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Negative Test Case: Empty table +EXEC get_column_info_p1 'ResultTableEmpty'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +maxamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Negative Test Case: Trying to aggregate non-MONEY column as MONEY +EXEC get_column_info_p1 'ResultTableNonMoney'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +totalamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Edge Test Case: Extreme values +EXEC get_column_info_p1 'ResultTableExtreme'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +maxamount#!#money#!#8#!#19#!#4 +minamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Arbitrary Test Case: Mixing NULL and non-NULL values +EXEC get_column_info_p1 'ResultTableMixedNull'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +avgamount#!#money#!#8#!#19#!#4 +countall#!#int#!#4#!#10#!#0 +countnonnull#!#int#!#4#!#10#!#0 +totalamount#!#money#!#8#!#19#!#4 +~~END~~ + + +-- Edge Test Case: Aggregating calculated values that exceed MONEY range +EXEC get_column_info_p1 'ResultTableOverflow'; +GO +~~START~~ +varchar#!#varchar#!#smallint#!#tinyint#!#tinyint +~~END~~ + diff --git a/test/JDBC/input/money_aggregate-vu-cleanup.sql b/test/JDBC/input/money_aggregate-vu-cleanup.sql new file mode 100644 index 0000000000..8338350afa --- /dev/null +++ b/test/JDBC/input/money_aggregate-vu-cleanup.sql @@ -0,0 +1,65 @@ +DROP PROCEDURE IF EXISTS get_column_info_p1; +GO + +DROP TABLE IF EXISTS TestMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTable1; +GO + +DROP TABLE IF EXISTS ResultTable2; +GO + +DROP TABLE IF EXISTS ResultTable3; +GO + +DROP TABLE IF EXISTS ResultTable4; +GO + +DROP TABLE IF EXISTS ResultTable5; +GO + +DROP TABLE IF EXISTS ResultTable6; +GO + +DROP TABLE IF EXISTS ResultTable7; +GO + +DROP TABLE IF EXISTS ResultTable8; +GO + +DROP TABLE IF EXISTS ResultTable9; +GO + +DROP TABLE IF EXISTS ResultTable10; +GO + +DROP TABLE IF EXISTS EmptyMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableEmpty; +GO + +DROP TABLE IF EXISTS ExtremeMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableExtreme; +GO + +DROP TABLE IF EXISTS MixedNullMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableMixedNull; +GO + +DROP TABLE IF EXISTS OverflowMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableOverflow; +GO + +DROP TABLE IF EXISTS NonMoneyTable; +GO + +DROP TABLE IF EXISTS ResultTableNonMoney; +GO diff --git a/test/JDBC/input/money_aggregate-vu-prepare.sql b/test/JDBC/input/money_aggregate-vu-prepare.sql new file mode 100644 index 0000000000..c60e1cc945 --- /dev/null +++ b/test/JDBC/input/money_aggregate-vu-prepare.sql @@ -0,0 +1,174 @@ +CREATE TABLE TestMoneyTable ( + ID INT IDENTITY(1,1) PRIMARY KEY, + Amount MONEY, + Description NVARCHAR(100) +); +GO + +-- Insert test data +INSERT INTO TestMoneyTable (Amount, Description) VALUES +(100.50, 'Item 1'), +(200.75, 'Item 2'), +(150.25, 'Item 3'), +(300.00, 'Item 4'), +(250.50, 'Item 5'), +(NULL, 'Null Amount'); +GO + +CREATE PROCEDURE get_column_info_p1 + @table_name text +AS +BEGIN + SELECT c.[name] AS column_name, + t.[name] AS [type_name], + c.[max_length], + c.[precision], + c.[scale] + FROM sys.columns c + INNER JOIN sys.types t + ON c.user_type_id = t.user_type_id + WHERE object_id = object_id(@table_name) + ORDER BY c.[name]; +END +GO + +-- Test Case 1: MAX aggregation +SELECT MAX(Amount) AS MaxAmount +INTO ResultTable1 +FROM TestMoneyTable; +GO + +-- Test Case 2: MIN aggregation +SELECT MIN(Amount) AS MinAmount +INTO ResultTable2 +FROM TestMoneyTable; +GO + +-- Test Case 3: AVG aggregation +SELECT AVG(Amount) AS AvgAmount +INTO ResultTable3 +FROM TestMoneyTable; +GO + +-- Test Case 4: SUM aggregation +SELECT SUM(Amount) AS TotalAmount +INTO ResultTable4 +FROM TestMoneyTable; +GO + +-- Test Case 5: COUNT aggregation (should remain as INT) +SELECT COUNT(Amount) AS CountAmount +INTO ResultTable5 +FROM TestMoneyTable; +GO + +-- Test Case 6: Multiple aggregations in one query +SELECT + MAX(Amount) AS MaxAmount, + MIN(Amount) AS MinAmount, + AVG(Amount) AS AvgAmount, + SUM(Amount) AS TotalAmount, + COUNT(Amount) AS CountAmount +INTO ResultTable6 +FROM TestMoneyTable; +GO + +-- Test Case 7: Aggregation with GROUP BY +SELECT + Description, + MAX(Amount) AS MaxAmount +INTO ResultTable7 +FROM TestMoneyTable +GROUP BY Description; +GO + +-- Test Case 8: Aggregation with subquery +SELECT MaxAmount +INTO ResultTable8 +FROM ( + SELECT MAX(Amount) AS MaxAmount + FROM TestMoneyTable +) AS Subquery; +GO + +-- Test Case 9: Aggregation with HAVING clause +SELECT + Description, + MAX(Amount) AS MaxAmount +INTO ResultTable9 +FROM TestMoneyTable +GROUP BY Description +HAVING MAX(Amount) > 200; +GO + +-- Test Case 10: Aggregation with calculated MONEY column +SELECT + MAX(Amount * 2) AS DoubleMaxAmount +INTO ResultTable10 +FROM TestMoneyTable; +GO + +-- Negative Test Case: Empty table +CREATE TABLE EmptyMoneyTable (Amount MONEY); +GO + +SELECT MAX(Amount) AS MaxAmount +INTO ResultTableEmpty +FROM EmptyMoneyTable; +GO + +-- Edge Test Case: Extreme values +CREATE TABLE ExtremeMoneyTable (Amount MONEY); +GO + +INSERT INTO ExtremeMoneyTable VALUES +(922337203685477.5807), -- Maximum positive value for MONEY +(-922337203685477.5808); -- Minimum negative value for MONEY +GO + +SELECT MAX(Amount) AS MaxAmount, MIN(Amount) AS MinAmount +INTO ResultTableExtreme +FROM ExtremeMoneyTable; +GO + +-- Arbitrary Test Case: Mixing NULL and non-NULL values +CREATE TABLE MixedNullMoneyTable (Amount MONEY); +GO + +INSERT INTO MixedNullMoneyTable VALUES +(100.00), (NULL), (200.00), (NULL), (300.00); +GO + +SELECT + AVG(Amount) AS AvgAmount, + SUM(Amount) AS TotalAmount, + COUNT(Amount) AS CountNonNull, + COUNT(*) AS CountAll +INTO ResultTableMixedNull +FROM MixedNullMoneyTable; +GO + +-- Edge Test Case: Aggregating calculated values that exceed MONEY range +CREATE TABLE OverflowMoneyTable (Amount MONEY); +GO + +INSERT INTO OverflowMoneyTable VALUES +(922337203685477), (922337203685477); +GO + +SELECT SUM(Amount) AS TotalAmount +INTO ResultTableOverflow +FROM OverflowMoneyTable; +GO + +-- Negative Test Case: Trying to aggregate non-MONEY column as MONEY +CREATE TABLE NonMoneyTable (Amount VARCHAR(20)); +GO + +INSERT INTO NonMoneyTable VALUES ('100.00'), ('200.00'); +GO + +SELECT SUM(CAST(Amount AS MONEY)) AS TotalAmount +INTO ResultTableNonMoney +FROM NonMoneyTable; +GO diff --git a/test/JDBC/input/money_aggregate-vu-verify.sql b/test/JDBC/input/money_aggregate-vu-verify.sql new file mode 100644 index 0000000000..ab1cf94e69 --- /dev/null +++ b/test/JDBC/input/money_aggregate-vu-verify.sql @@ -0,0 +1,59 @@ +-- MAX() +EXEC get_column_info_p1 'ResultTable1'; +GO + +-- MIN() +EXEC get_column_info_p1 'ResultTable2'; +GO + +-- AVG() +EXEC get_column_info_p1 'ResultTable3'; +GO + +-- SUM() +EXEC get_column_info_p1 'ResultTable4'; +GO + +-- COUNT() +EXEC get_column_info_p1 'ResultTable5'; +GO + +-- Mix of different aggregates (MAX, MIN, AVG, SUM, COUNT) +EXEC get_column_info_p1 'ResultTable6'; +GO + +-- MAX() with GROUP BY clause +EXEC get_column_info_p1 'ResultTable7'; +GO + +-- Aggregation with subquery +EXEC get_column_info_p1 'ResultTable8'; +GO + +-- Aggregation with HAVING clause +EXEC get_column_info_p1 'ResultTable9'; +GO + +-- Aggregation with calculated MONEY column +EXEC get_column_info_p1 'ResultTable10'; +GO + +-- Negative Test Case: Empty table +EXEC get_column_info_p1 'ResultTableEmpty'; +GO + +-- Negative Test Case: Trying to aggregate non-MONEY column as MONEY +EXEC get_column_info_p1 'ResultTableNonMoney'; +GO + +-- Edge Test Case: Extreme values +EXEC get_column_info_p1 'ResultTableExtreme'; +GO + +-- Arbitrary Test Case: Mixing NULL and non-NULL values +EXEC get_column_info_p1 'ResultTableMixedNull'; +GO + +-- Edge Test Case: Aggregating calculated values that exceed MONEY range +EXEC get_column_info_p1 'ResultTableOverflow'; +GO diff --git a/test/JDBC/upgrade/latest/schedule b/test/JDBC/upgrade/latest/schedule index a80c24b1bf..c8aa584cfe 100644 --- a/test/JDBC/upgrade/latest/schedule +++ b/test/JDBC/upgrade/latest/schedule @@ -13,6 +13,7 @@ atn2 ATTIMEZONE-dep AVG-Aggregate-common AVG-Aggregate-Dep +money_aggregate BABEL-1062 BABEL-1189 BABEL-1206 diff --git a/test/python/expected/upgrade_validation/expected_dependency.out b/test/python/expected/upgrade_validation/expected_dependency.out index 57ca5abc74..a4c5dacd47 100644 --- a/test/python/expected/upgrade_validation/expected_dependency.out +++ b/test/python/expected/upgrade_validation/expected_dependency.out @@ -539,6 +539,8 @@ Function sys.max_connections() Function sys.microsoftversion() Function sys.money_sqlvariant(sys.fixeddecimal) Function sys.money_sqlvariant(sys.money) +Function sys.moneylarger(sys.money,sys.money) +Function sys.moneysmaller(sys.money,sys.money) Function sys.month(anyelement) Function sys.nchar_larger(sys."nchar",sys."nchar") Function sys.nchar_smaller(sys."nchar",sys."nchar")