I modified the shared_buffer=50 MB and maintenance_work_mem = 50 MB But still getting the same error.
On Thu, Dec 13, 2012 at 7:36 PM, Kevin Grittner <kgri...@mail.com> wrote: > AI Rumman wrote: > > I am going to restore a 6 Gb database in my development machine > which is running on Centos 5.6 with memory 1 GB. > > > pg_restore: out of memory > > pg_restore: finished item 8570 TABLE DATA entity > > pg_restore: [archiver] worker process failed: exit code 1 > > > I set postgresql.conf as - > > shared_memory = 128 MB > > maintenance_work_mem = 300 MB > > > During error my OS status: > > free -m > > total used free shared buffers cached > > Mem: 1024 975 48 0 3 857 > > -/+ buffers/cache: 114 909 > > Swap: 1027 0 1027 > > > > Please let me know what could be the actual cause of the error. > > You have 1024 MB total RAM. > You seem to be using 114 MB of that before starting PostgreSQL. > You have PostgreSQL configured to use 128 MB of shared buffers, > which is only part of its shared memory. > You have configured 300 MB per maintenance_work_mem allocation. > There can be several of these at one time. > You are running pg_restore, which needs to use memory to interpret > the map of the dump and dependencies among objects. > > You are using more memory than you have. > > If you really need to run PostgreSQL on a machine with 1GB of > memory, you need to use a configuration much closer to the default. > > Don't expect performance to be the same as on a larger server. > > -Kevin >