MemPalace/mempalace · error · ValueError
embedding dimension must be positive
Error message
embedding dimension must be positive
What it means
Error "embedding dimension must be positive" thrown in MemPalace/mempalace.
Source
Thrown at mempalace/backends/pgvector.py:866
raise BackendClosedError("PgVectorCollection has been closed")
def _table_exists(self) -> bool:
return self._client.table_exists(self._table)
def _marker_exists(self) -> bool:
return self._backend._marker_exists(self._palace)
def get_stored_embedder_identity(self):
return self._backend._get_embedder_identity(self._palace, self._collection_name)
def set_embedder_identity(self, identity) -> None:
# Sidecar-backed (see PgVectorBackend), so this records even on a
# brand-new palace whose mismatch marker doesn't exist yet.
self._backend._set_embedder_identity(self._palace, self._collection_name, identity)
def _ensure_table(self, dimension: int) -> None:
if dimension <= 0:
raise ValueError("embedding dimension must be positive")
with self._lock:
self._ensure_open()
if self._known_dimension is not None:
if self._known_dimension != dimension:
raise DimensionMismatchError(
f"pgvector collection {self._collection_name!r} expects "
f"embedding dimension {self._known_dimension}, got {dimension}"
)
return
if not self._table_exists():
self._client.create_table(self._table, dimension)
self._known_dimension = dimension
return
existing_dim = self._client.table_dimension(self._table)
if existing_dim is not None and existing_dim != dimension:
raise DimensionMismatchError(
f"pgvector collection {self._collection_name!r} expects "
f"embedding dimension {existing_dim}, got {dimension}"View on GitHub (pinned to 06cb6987f0)
Solutions
- Configure an embedding model with a positive output dimension
When it happens
Trigger: Thrown at mempalace/backends/pgvector.py:866 when the library encounters an invalid state.
Common situations: Embedder reported a zero or negative dimension, usually due to misconfiguration.
AI-assisted analysis of MemPalace/mempalace@06cb6987f0 (2026-08-15).
Data as JSON: /api/errors/c1b52c8a268180c1.
Report an issue: GitHub.