Setting larger
maintenance_work_mem
for Postgres DB container
jimin-genie
PROOP

2 years ago

We needed larger maintenance_work_mem for our production Postgres DB. This is because we have millions of records and needed to adjust indexes. Our maintenance_work_mem was previously 68MB.

We set this by running the following SQL

SET maintenance_work_mem = '1GB';

If the Railway service is restarted and therefore the Postgres is restarted, we won't have that set again. How can we permanently set that value as part of config? Is there an environment variable we should be using?

7 Replies

jimin-genie
PROOP

2 years ago

3747f720-8c9c-4d81-9b13-1e420ceabd6c


2 years ago

from the postgres docs, it seems like you want to be using ALTER SYSTEM and then re-deploying -


2 years ago

for reference here is the docs on the SET command -


jimin-genie
PROOP

2 years ago

@Brody yeah but that command will write configs to postgresql.auto.conf file. Where is that file exactly? would it be reliable even if I say upgrade Postgres container to a different one?


2 years ago

well I know the postgresql.conf file is stored on the volume, so I can't imagine the auto file wouldn't be, aka the settings will persist between deployments


jimin-genie
PROOP

2 years ago

ok cool thank you.


2 years ago

let me know if that doesn't work for you though


Loading...