mem0ai/mem0 · error · ValueError
Oracle filter operator {operator!r} does not support null
Error message
Oracle filter operator {operator!r} does not support null What it means
Error "Oracle filter operator {operator!r} does not support null" thrown in mem0ai/mem0.
Source
Thrown at mem0/vector_stores/oracledb.py:143
raise ValueError(f"Operator filter for field {metadata_key!r} must not be empty")
unsupported = set(value) - _FIELD_OPERATORS
if unsupported:
raise ValueError(
f"Unsupported Oracle filter operator(s) for field {metadata_key!r}: "
f"{', '.join(sorted(map(str, unsupported)))}"
)
predicates: List[str] = []
passings: List[str] = []
additional_clauses: List[str] = []
for operator, operand in value.items():
if operator in _COMPARISON_OPERATORS:
_validate_scalar_operand(operator, operand)
if operand is None:
if operator not in {"eq", "ne"}:
raise ValueError(f"Oracle filter operator {operator!r} does not support null")
predicates.append(f"@ {_COMPARISON_OPERATORS[operator]} null")
continue
variable, passing = _bind_filter_value(operand, params)
predicates.append(f"@ {_COMPARISON_OPERATORS[operator]} {variable}")
passings.append(passing)
continue
if operator in {"in", "nin"}:
if not isinstance(operand, (list, tuple)) or not operand:
raise ValueError(f"Oracle filter operator {operator!r} requires a non-empty list")
variables: List[str] = []
list_passings: List[str] = []
for item in operand:
_validate_scalar_operand(operator, item)
if item is None:
variables.append("null")
continueView on GitHub (pinned to 001c235229)
Solutions
- This operator does not accept null; provide a concrete value or use a null-capable operator.
When it happens
Trigger: Thrown at mem0/vector_stores/oracledb.py:143 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of mem0ai/mem0@001c235229 (2026-08-15).
Data as JSON: /api/errors/ff73e09f213ebe67.
Report an issue: GitHub.