Re: Excluding DML Statements in Streams

From: Roman Podshivalov <roman.podshivalov_at_gmail.com>
Date: Tue, 30 Sep 2008 18:37:46 -0400
Message-ID: <55f303590809301537n6dc168cu67e3bf7ace946a0e@mail.gmail.com>


Hi,

I hope you have read the basic descriptions here:

http://download.oracle.com/docs/cd/B19306_01/server.102/b14228/rep_tags.htm#i1007387

I do not know how your capture and whole streams setup are configured but you can always, before executing long running transaction, use DBMS_STREAMS.SET_TAG procedure to set tag for the transaction to something else your capture (or apply) are aware of. If you have used OEM or Oracle provided framework to setup streams only operation where TAG is set to NULL are considered. In bi-directional setup (using same Oracle framework) TAG with '00' is used to prevent back flow. Keep in mind it is not specific DML, but a whole transaction to be skipped. In short - check your rules, where you want that transaction to be skipped, and do the opposite.

--romas

On Tue, Sep 30, 2008 at 4:45 PM, Stuart Blackburn <sblackbu_at_cbnco.com>wrote:

> Hi,
>
> Does anyone know if it's possible to exclude a specific DML statement from
> being captured by the capture process by specifying some sort of a flag (or
> apply tag) when executing the command? The reason I'm asking is because at
> times we need to execute a large DML command on a table that is replicated
> using Streams, but we do not want this change to be captured because it will
> too intensive and would prefer just to execute the command manually on both
> sides. If possible we would prefer to keep all Streams processes running
> and rules un-altered in the process. Thanks.
>
> Stuart
> --
> http://www.freelists.org/webpage/oracle-l
>
>
>

--
http://www.freelists.org/webpage/oracle-l
Received on Tue Sep 30 2008 - 17:37:46 CDT

Original text of this message