postgres_data_sanitizers.sanitize

Dictionary sanitization for PostgreSQL JSONB compatibility.

RULE: Maximum 100 lines per file.

Functions

sanitize_dict_for_postgres(→ Dict[str, Any])

Recursively escape null chars in dict for PostgreSQL JSONB storage.

unescape_dict_from_postgres(→ Dict[str, Any])

Recursively unescape null chars from PostgreSQL JSONB data.

Module Contents

postgres_data_sanitizers.sanitize.sanitize_dict_for_postgres(data: Dict[str, Any]) Dict[str, Any]

Recursively escape null chars in dict for PostgreSQL JSONB storage.

CRITICAL: Prevents database crashes from null characters in JSON. Escapes null characters instead of removing them, preserving data.

Args:

data: Dictionary that may contain null characters in strings

Returns:

Sanitized dictionary safe for PostgreSQL JSONB (data preserved)

postgres_data_sanitizers.sanitize.unescape_dict_from_postgres(data: Dict[str, Any]) Dict[str, Any]

Recursively unescape null chars from PostgreSQL JSONB data.

Reverses the escaping done by sanitize_dict_for_postgres().

Args:

data: Dictionary with escaped null characters

Returns:

Dictionary with null characters restored