Re: Oracle streams

  • From: "Alexander Fatkulin" <afatkulin@xxxxxxxxx>
  • To: John.Fedock@xxxxxxxxxxxx
  • Date: Thu, 18 Oct 2007 15:35:09 -0400

> 1.  The state of the capture is "Capturing changes" – which is good.  When I
> update my test tables, where are the changes stored?    I assume it is my
> streams_queue_table table, but that is empty.
>

Check v$streams_capture.total_messages_enqueued -- if that is always
zero then (a) your capture rule is discarding everything or (b) there
is no changes to interested objects.

If v$streams_capture.total_messages_enqueue is not zero but nothing is
being enqueued according to a v$buffered_queues -- then most probably
your propagation doesn't sat up properly (which means there is no
correct subscribers to a queue so it doesn't make sense to enqueue
anything).

>
> 2. On the target database, I see 2 error messages that say - ORA-26687: no
> instantiation SCN provided for "CONT"."xxxx" in source database "YYYYYY".  I
> did instantiate the object.  No doubt about it.  I am not sure why this is
> here.
>

Objects should be prepared on target as well as on source. On source
you should (a) add supplemental log data and (b) prepare table
instantiation using dbms_capture_adm.prepare_table_instantiation, get
instantiation SCN, then use this SCN (or greater) on target using
dbms_apply_adm.set_table_instantiation_scn.

Instantiating object on source dumps relevant information to a MVDD so
apply can read and store it on a target database.

HTH

-- 
Alex Fatkulin,
The Pythian Group,
http://www.pythian.com/blogs/author/alexf
--
//www.freelists.org/webpage/oracle-l


Other related posts: