<div dir="ltr">Hello everyone,<div><br></div><div>Is it OK to delete event log that has been replicated in sl_log_x.</div><div><br></div><div>Here's the function I created :</div><div><br></div><div><div>CREATE OR REPLACE FUNCTION _slony_example.delete_sl_log()</div>
<div> RETURNS void</div><div> LANGUAGE plpgsql</div><div>AS $function$</div><div>DECLARE</div><div> v_origin int8;</div><div> v_seqno int8;</div><div> v_xmin bigint;</div><div>
BEGIN</div><div><br></div><div><br></div><div> for v_origin, v_seqno, v_xmin in</div><div> select ev_origin, ev_seqno, "pg_catalog".txid_snapshot_xmin(ev_snapshot) from "_slony_example".sl_event</div>
<div> where (ev_origin, ev_seqno) in (select ev_origin, min(ev_seqno) from "_slony_example".sl_event where ev_type = 'SYNC' group by ev_origin)</div><div> loop </div><div>
<br></div><div><span class="" style="white-space:pre">                        </span>delete from _slony_example.sl_log_1 where log_origin = v_origin and log_txid < v_xmin;</div><div><span class="" style="white-space:pre">                        </span>delete from _slony_example.sl_log_2 where log_origin = v_origin and log_txid < v_xmin;</div>
<div> end loop;</div><div><br></div><div>END;</div><div>$function$;</div><div><br></div><div>The Slony failed to switch sl_log for several hours, and event log keep accumulated in a table.</div><div><br></div>
<div>Will this action help to reduce slony lag that falls far behind ?</div><div><br></div><div>Thanks all.</div><div><br></div>-- <br><div dir="ltr"><div>Regards,</div><div><br></div>Soni Maula Harriz</div>
</div></div>