V
Valeriy Bashkatov
Guest
Hi Dmitri, > 1. "split replication threads" - unfortunately, you're using the old version. This feature appeared later. As I recall, in V. 5.0.3. Just using RANDOM(2.5) is not enough,it's a bit more complicated. A trigger with "split replication threads" distributes notes across threads based on the source record's RECID (modulo). This is more correct because change notes for the same record will always be created in the same thread. Download the last version, and look at the template tplt_repltrig_split_with_compression.p. > 2. What is a "compression trigger" ? When a record changes several times in a short period of time and the replication process does not have time to process that change notes, many of these notes accumulate in the queue for the same record. At the same time, you distribute the changes to the record among the threads using the RANDOM function. Therefore, it is possible that change notes for the same record are created in different threads. This is possible causes a lock conflict when two different threads try to process changes for the same record at the same time. In your case, it probably doesn't happen often, but it does (is happening once a week, or in 2 weeks). A replication trigger with compression before creating a change note, first checks for an unapplied note for the same record in the replication queue. If such a note still exists in the queue, the trigger simply updates the information in that note. This is useful for both high-activity tables (reduce the total amount of notes) and to avoid conflicts over access to the same Oracle-side record by different replication threads. In your version Pro2 look how compression works in template tplt_repltrig_with_compression.p. >3. enable advanced logging for replbatch processes (Verbose). >How do I do that? You can do it online. See the screenshot >How big the logs should be in Verbose case? Very large. But this is acceptable during the search for errors. We use logrotate on linux to archive these logs. Regards, Valeriy
Continue reading...
Continue reading...