apache/seatunnel · error · HugeGraphConnectorException

ILLEGAL_CONFIG_ARGUMENT

ILLEGAL_CONFIG_ARGUMENT

Error message

filter value '%s' for property '%s' is not a valid %s.

What it means

Filter values are coerced to the property's declared data type; if the value cannot be parsed/converted (RuntimeException during coercion), the connector throws ILLEGAL_CONFIG_ARGUMENT naming the value, property, and expected type.

Solutions

  1. Change the filter value to a valid representation of the property's type (e.g. 20 not "abc" for INT).
  2. Match the expected format exactly (e.g. ISO date for DATE, canonical UUID string).
  3. Check the error message's trailing type name for what was expected.

Example fix

// before
filter = { age = "twenty" }
// after
filter = { age = 20 }
Defensive patterns

Strategy: validation

Validate before calling

// Coerce filter values with the same rules before submitting:
switch (dataType) {
    case INT: Integer.parseInt(String.valueOf(value)); break;
    case DATE: java.sql.Date.valueOf(String.valueOf(value)); break;
    // ... throw on failure before the job runs
}

Type guard

boolean isValidFilterValue(Object v, SeaTunnelDataType<?> t) {
    try { Object c = coerce(v, t); return c != null; } catch (RuntimeException e) { return false; }
}

Try / catch

try { reader.open(); } catch (HugeGraphConnectorException e) {
    if (e.getErrorCode() == HugeGraphConnectorErrorCode.ILLEGAL_CONFIG_ARGUMENT
            && e.getMessage().contains("is not a valid")) {
        // fix the filter value's format per the stated type
    }
}

Prevention

When it happens

Trigger: A filter value like "abc" for an INT property, or a malformed date/UUID string, is passed through coerceFilterValue and the parse fails.

Common situations: String values in HOCON for numeric/date/UUID properties; locale-dependent date formats; passing strings like "1.5" to an INT property.

Understand the failure class

Background: "Invalid value" and "allowed values are" config errors: what your library rejected and how to fix it — this error's family across 41 libraries.

Related errors


AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10). Data as JSON: /api/errors/c03230fd20cf78cc. Report an issue: GitHub.

Appendix: source

Thrown at seatunnel-connectors-v2/connector-hugegraph/src/main/java/org/apache/seatunnel/connectors/seatunnel/hugegraph/source/HugeGraphSourceReader.java:453

                    return value instanceof Number
                            ? ((Number) value).longValue()
                            : Long.valueOf(raw);
                case FLOAT:
                    return value instanceof Number
                            ? ((Number) value).floatValue()
                            : Float.valueOf(raw);
                case DOUBLE:
                    return value instanceof Number
                            ? ((Number) value).doubleValue()
                            : Double.valueOf(raw);
                case TEXT:
                case UUID:
                    return raw;
                default:
                    return value;
            }
        } catch (RuntimeException e) {
            throw new HugeGraphConnectorException(
                    HugeGraphConnectorErrorCode.ILLEGAL_CONFIG_ARGUMENT,
                    String.format(
                            "filter value '%s' for property '%s' is not a valid %s.",
                            value, key, dataType),
                    e);
        }
    }

    private void validatePropertyType(String propertyName, SeaTunnelDataType<?> seaTunnelType) {
        Cardinality cardinality = client.getPropertyCardinality(propertyName);
        DataType propertyDataType = client.getPropertyDataType(propertyName);
        boolean serverIsMulti = cardinality != null && cardinality != Cardinality.SINGLE;
        boolean declaredArray = seaTunnelType.getSqlType() == SqlType.ARRAY;

        if (serverIsMulti && !declaredArray) {
            // Guides the user to the fix; without this hint, the server's Collection value would
            // ClassCastException mid-scan against the scalar row builder.
            throw new HugeGraphConnectorException(

View on GitHub (pinned to cf67b549a7)