{"record":{"id":"26b956439d95ff8e","repo":"hibernate/hibernate-orm","slug":"function-s-has-d-parameters-but-d-arguments-26b956","errorCode":null,"errorMessage":"Function %s() has %d parameters, but %d arguments given","messagePattern":"Function (.+?)\\(\\) has (.+?) parameters, but (.+?) arguments given","errorType":"exception","errorClass":"FunctionArgumentException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/query/sqm/produce/function/StandardArgumentsValidators.java","lineNumber":117,"sourceCode":"\t\t\t\t\tsig.append(\"arg\").append(i);\n\t\t\t\t}\n\t\t\t\tsig.append(\"[, arg\");\n\t\t\t\tsig.append(minNumOfArgs);\n\t\t\t\tsig.append(\"[, ...]])\");\n\t\t\t\treturn sig.toString();\n\t\t\t}\n\t\t};\n\t}\n\n\tpublic static ArgumentsValidator exactly(int number) {\n\t\treturn new ArgumentsValidator() {\n\t\t\t@Override\n\t\t\tpublic void validate(\n\t\t\t\t\tList<? extends SqmTypedNode<?>> arguments,\n\t\t\t\t\tString functionName,\n\t\t\t\t\tBindingContext bindingContext) {\n\t\t\t\tif ( arguments.size() != number ) {\n\t\t\t\t\tthrow new FunctionArgumentException(\n\t\t\t\t\t\t\tString.format(\n\t\t\t\t\t\t\t\t\tLocale.ROOT,\n\t\t\t\t\t\t\t\t\t\"Function %s() has %d parameters, but %d arguments given\",\n\t\t\t\t\t\t\t\t\tfunctionName,\n\t\t\t\t\t\t\t\t\tnumber,\n\t\t\t\t\t\t\t\t\targuments.size()\n\t\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@Override\n\t\t\tpublic String getSignature() {\n\t\t\t\tfinal var sig = new StringBuilder(\"(\");\n\t\t\t\tfor (int i=0; i<number; i++) {\n\t\t\t\t\tif (i!=0) {\n\t\t\t\t\t\tsig.append(\", \");\n\t\t\t\t\t}","sourceCodeStart":99,"sourceCodeEnd":135,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/query/sqm/produce/function/StandardArgumentsValidators.java#L99-L135","documentation":"Error \"Function %s() has %d parameters, but %d arguments given\" thrown in hibernate/hibernate-orm.","triggerScenarios":"A function call in a query supplies arguments that violate the function's signature.","commonSituations":"Passing the wrong number or types of arguments (e.g. untyped nulls, tuples) to HQL/SQL functions.","solutions":["Wrong number of arguments for the function.","Supply exactly the declared number of arguments."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fad1729dce015f908198d57a8d80274a30f905a5","analyzedAt":"2026-08-22T04:13:57.527Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}