Veikko,
> One way of doing this that I thought of was start a
> transaction, delete everything and then just dump new data in (copy
> perhaps). The old data would be usable to other transactions until I
> commit my insert. This would be the fastest way, but how much memory
> would this use?
Starting a transaction doesn't use any more memory than without one.
Unlike Some Other Databases, PostgreSQL's transactions occur in WAL and on
data pages, not in RAM.
> Will this cause performance issues on a heavily loaded
> server with too little memory even to begin with :)
Quite possibly, but the visibility issue won't be the problem.
--
--Josh
Josh Berkus
Aglio Database Solutions
San Francisco