mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-31 10:30:33 +03:00 
			
		
		
		
	Add separate error message for procedure does not exist
While we probably don't want to split up all error messages into function and procedure variants, this one is a very prominent one, so it's helpful to be more specific here.
This commit is contained in:
		| @@ -542,14 +542,24 @@ ParseFuncOrColumn(ParseState *pstate, List *funcname, List *fargs, | ||||
| 		if (is_column) | ||||
| 			return NULL; | ||||
|  | ||||
| 		ereport(ERROR, | ||||
| 				(errcode(ERRCODE_AMBIGUOUS_FUNCTION), | ||||
| 				 errmsg("function %s is not unique", | ||||
| 						func_signature_string(funcname, nargs, argnames, | ||||
| 											  actual_arg_types)), | ||||
| 				 errhint("Could not choose a best candidate function. " | ||||
| 						 "You might need to add explicit type casts."), | ||||
| 				 parser_errposition(pstate, location))); | ||||
| 		if (proc_call) | ||||
| 			ereport(ERROR, | ||||
| 					(errcode(ERRCODE_AMBIGUOUS_FUNCTION), | ||||
| 					 errmsg("procedure %s is not unique", | ||||
| 							func_signature_string(funcname, nargs, argnames, | ||||
| 												  actual_arg_types)), | ||||
| 					 errhint("Could not choose a best candidate procedure. " | ||||
| 							 "You might need to add explicit type casts."), | ||||
| 					 parser_errposition(pstate, location))); | ||||
| 		else | ||||
| 			ereport(ERROR, | ||||
| 					(errcode(ERRCODE_AMBIGUOUS_FUNCTION), | ||||
| 					 errmsg("function %s is not unique", | ||||
| 							func_signature_string(funcname, nargs, argnames, | ||||
| 												  actual_arg_types)), | ||||
| 					 errhint("Could not choose a best candidate function. " | ||||
| 							 "You might need to add explicit type casts."), | ||||
| 					 parser_errposition(pstate, location))); | ||||
| 	} | ||||
| 	else | ||||
| 	{ | ||||
| @@ -591,6 +601,15 @@ ParseFuncOrColumn(ParseState *pstate, List *funcname, List *fargs, | ||||
| 							 "after all regular arguments of the aggregate."), | ||||
| 					 parser_errposition(pstate, location))); | ||||
| 		} | ||||
| 		else if (proc_call) | ||||
| 			ereport(ERROR, | ||||
| 					(errcode(ERRCODE_UNDEFINED_FUNCTION), | ||||
| 					 errmsg("procedure %s does not exist", | ||||
| 							func_signature_string(funcname, nargs, argnames, | ||||
| 												  actual_arg_types)), | ||||
| 					 errhint("No procedure matches the given name and argument types. " | ||||
| 							 "You might need to add explicit type casts."), | ||||
| 					 parser_errposition(pstate, location))); | ||||
| 		else | ||||
| 			ereport(ERROR, | ||||
| 					(errcode(ERRCODE_UNDEFINED_FUNCTION), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user