Browse Source
`report_journal_ledger` is auto-vacuumed as any transient model, but has some ondelete="cascade" constraints that auto-remove subtables when a record is removed, doing this operation very slow when selecting these sub-records. Letting default ondelete="set null" would result in same performance bottleneck, as the select on sub-table is performed the same for setting "null" value on them. As a solution, and for avoiding a costly index operation, we delete by SQL sub-tables rows in advance. A bit of extra logic has been added for avoiding to remove that records if it's not the turn of vacuum the parent table.pull/582/head
Pedro M. Baeza
5 years ago
2 changed files with 17 additions and 0 deletions
Loading…
Reference in new issue