Saya memiliki sistem di mana saya tidak dapat mengontrol desain beberapa tabel (direplikasi melalui Slony-I), dan jadi saya memiliki serangkaian apa yang kami sebut sebagai 'tabel bayangan', di mana saya mengekstrak beberapa informasi dari tabel yang direplikasi , dan simpan dalam bentuk olahan yang saya butuhkan, sambil menghapus catatan yang ingin saya abaikan.
Saat ini, setelah membuat replika baru, saya menjalankan pembaruan dan menetapkan nilai kembali ke dirinya sendiri (misalnya, UPDATE tablename SET field=field
) untuk memaksa pemicu untuk berjalan, tetapi beberapa tabel adalah jutaan catatan, dan terus bertambah, dan dapat memakan waktu 30 menit . (dan kemudian ada vaccuum juga).
Apakah ada cara yang lebih baik untuk memicunya, atau beberapa cara untuk menulis suatu fungsi sehingga akan bekerja dengan input yang disalurkan atau NEW
tergantung pada konteks panggilan? Saya enggan untuk menjaga dua fungsi yang berbeda, karena saya telah melihat terlalu banyak waktu di mana yang satu diperbarui, dan bukan yang lain.