prestodb/presto · error · PrestoException

INVALID_FUNCTION_ARGUMENT

INVALID_FUNCTION_ARGUMENT

Error message

Unknown parameter %s

What it means

Parameter-parsing error in LibSvmUtils.parseParameters: the parameters string passed to a LEARN function contains a key that is not one of the recognized SVM options (degree, gamma, coef0, C, nu, eps, ...). The %s names the unknown parameter key; the faulty input is the parameters varchar argument.

Source

Thrown at presto-ml/src/main/java/com/facebook/presto/ml/LibSvmUtils.java:78

                    params.degree = Integer.parseInt(value);
                    break;
                case "gamma":
                    params.gamma = Double.parseDouble(value);
                    break;
                case "coef0":
                    params.coef0 = Double.parseDouble(value);
                    break;
                case "C":
                    params.C = Double.parseDouble(value);
                    break;
                case "nu":
                    params.nu = Double.parseDouble(value);
                    break;
                case "eps":
                    params.eps = Double.parseDouble(value);
                    break;
                default:
                    throw new PrestoException(INVALID_FUNCTION_ARGUMENT, format("Unknown parameter %s", pair[0]));
            }
        }

        return params;
    }

    private static int parseKernelType(String value)
    {
        switch (value.toLowerCase(ENGLISH)) {
            case "linear":
                return svm_parameter.LINEAR;
            case "poly":
                return svm_parameter.POLY;
            case "rbf":
                return svm_parameter.RBF;
            case "sigmoid":
                return svm_parameter.SIGMOID;
            default:

View on GitHub (pinned to 55bb57d202)

Solutions

  1. Use only supported SVM parameter keys (e.g. 'C=1.0 gamma=0.5')
  2. Check for typos and stray separators in the parameters string
  3. Remove unsupported options from the parameters argument
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at presto-ml/src/main/java/com/facebook/presto/ml/LibSvmUtils.java:78 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04). Data as JSON: /api/errors/bde755382b8ef04a. Report an issue: GitHub.