Skip to content

Conversation

dmitry-lipetsk
Copy link
Contributor

It is a fix for issue #7883.

Test SQLs:

DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS INT128 BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS NUMERIC(19,0) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS NUMERIC(19,1) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECIMAL(19,0) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECIMAL(19,1) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECFLOAT(16) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECFLOAT(34) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS TIMESTAMP WITH TIME ZONE BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS TIME WITH TIME ZONE BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';

ISQL returns for all the cases:

Statement failed, SQLSTATE = HY000
unsuccessful metadata update
-CREATE FUNCTION UDF_DUMMY6__3 failed
-SQL error code = -607
-Invalid command
-Return mode by value not allowed for this data type

…_TZ and so on

It is a fix for issue FirebirdSQL#7883.

Test SQLs:

DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS INT128 BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS NUMERIC(19,0) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS NUMERIC(19,1) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECIMAL(19,0) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECIMAL(19,1) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECFLOAT(16) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS DECFLOAT(34) BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS TIMESTAMP WITH TIME ZONE BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION UDF_DUMMY6__3 RETURNS TIME WITH TIME ZONE BY VALUE ENTRY_POINT 'IB_UDF_abs' MODULE_NAME 'ib_udf';

ISQL returns for all the cases:

Statement failed, SQLSTATE = HY000
unsuccessful metadata update
-CREATE FUNCTION UDF_DUMMY6__3 failed
-SQL error code = -607
-Invalid command
-Return mode by value not allowed for this data type
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant