Re: UPDATE many records

Rob Sargent <[email protected]> Mon, 6 Jan 2020 13:40:39 -0700
Newsgroups gmane.comp.db.postgresql.general
Message-ID <[email protected]>

> On Jan 6, 2020, at 1:29 PM, Alban Hertroys <[email protected]> wrote:
> 
> I think you’re overcomplicating the matter.
> 
> I’d just do it as a single update in one transaction. It’s only 50M rows. It may take half an hour or so on decent hardware, depending on how resource-intensive your function is.
> 
I must emphasize: This estimate is HIGHLY dependent on hardware and the complexity of the table (number of indices, etc).  (I suspect there’s a correlation between table size (business value) and number of indices)

> If that fails[1], only then would I start looking into batching things. But then you still need to figure out why it fails and what to do about that; if it fails it will probably fail fast, and if not, then you’re looking at a one-off situation that won’t require more than a few workarounds - after which you can just run the update again.
> 
> Ad 1). No harm has been done, it’s a single transaction that rolled back.
> 
> Alban Hertroys
> --
> If you can't see the forest for the trees,
> cut the trees and you'll find there is no forest.