Increase ParadeDB’s memory ceiling or reduce query footprint when you hit the “max memory exceeded” error.
ParadeDB aborts a query when it allocates more memory than the limit set in parade.max_memory
. The limit protects the server from runaway vector-search or analytics workloads.
Run SET parade.max_memory
at the session level or change parade.max_memory
in postgresql.conf
for a permanent fix.Reload or restart PostgreSQL after a config-file edit.
SET parade.max_memory = '2GB';
doubles the default 1 GB ceiling just for the current connection.
The command follows standard SET
syntax.Provide a size with a unit such as kB, MB, or GB.
After raising the limit, rerun the product-recommendation query that joins OrderItems
with similar Products
.
Start small, monitor pg_stat_activity
, adjust upward cautiously, and keep shared_buffers
in mind so total memory stays within OS limits.
Setting parade.max_memory
higher than the server’s RAM causes swapping—keep the value below 70 % of physical memory.
Forgetting to reload after editing postgresql.conf
leaves the old limit active—run SELECT pg_reload_conf();
.
Rewrite queries to request fewer nearest neighbors, paginate results, or switch to indexed search instead of brute-force scans.
parade.max_memory
the same as work_mem
?No.work_mem
governs sort and hash operations; parade.max_memory
caps ParadeDB’s internal buffers.
Yes for ALTER SYSTEM
or editing postgresql.conf
. Regular users can SET
it lower than the global value.
.
The limit is global across all ParadeDB operations, not per query.
Yes. Run SET parade.max_memory to a smaller value inside a transaction, execute, then RESET.