Dear Tom Lane,
Thanks a lot.I can restore table after drpping foreign key(s).On Thu, Jan 2, 2014 at 7:52 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
sharilalipv <sharilalipv@xxxxxxxxx> writes:
> I could not restore a table (4.1GB) in postgresql database server.
> 2014-01-01 18:12:31 IST LOG: server process (PID 60667) was terminated byOOM killer at work, evidently. You should consider adjusting your kernel
> signal 9: Killed
settings to prevent memory overcommit. However, for this particular case
that might not do much beyond allowing a more graceful failure. I'm going
to guess that the reason the backend process is eating memory is that
there's a foreign key constraint on the table, or some other reason to
fire AFTER triggers for it, so that the trigger event list is getting big.
You would be best off dropping the foreign key(s) and then recreating them
after you've loaded the data --- this will likely be faster overall, as
well as less prone to memory bloat.
This advice as well as other useful info can be found at
http://www.postgresql.org/docs/9.3/static/populate.html
regards, tom lane
--
Sharil