Results 1 to 2 of 2
  1. #1
    Join Date
    Jul 2002
    Posts
    1

    Question Unanswered: CREATE_SNAPSHOT_REPGROUP (help)

    hello,
    When I establish updatable-snapshot replication environment I encounter such problem, issuing command:
    exec DBMS_REPCAT.CREATE_SNAPSHOT_REPGROUP( gname => 'business.grain_master', master => 'grain.gov',propagation_mode => 'ASYNCHRONOUS');

    got error:
    ORA-23313: no object-group in public :"GRAIN_MASTER"."GRAIN.GOV"
    ORA-06512: "SYS.DBMS_SYS_ERROR", line 105
    ORA-06512: "SYS.DBMS_REPCAT_SNA_UTL", line 2424
    ORA-06512: "SYS.DBMS_REPCAT_SNA_UTL", line 1757
    ORA-06512: "SYS.DBMS_REPCAT_SNA", line 64
    ORA-06512: "SYS.DBMS_REPCAT", line 1262
    ORA-06512: "SYS.DBMS_REPCAT", line 1250
    ORA-06512: line 1

    but I succeeded the following:
    --create master group
    exec DBMS_REPCAT.CREATE_MASTER_REPGROUP( gname => 'grain_master');
    --create master object
    exec DBMS_REPCAT.CREATE_MASTER_REPOBJECT(sname => 'business',oname => 'DECLAREUNIT', type => 'TABLE', gname => 'grain_master');
    --support master object
    execute DBMS_REPCAT.GENERATE_REPLICATION_SUPPORT('BUSINESS ','DECLAREUNIT','TABLE');
    --activate master group
    exec DBMS_REPCAT.RESUME_MASTER_ACTIVITY('grain_master') ;

    create public database link grain.gov connect to business identified by business using 'grain.gov';

    I think the problem may be :ORA-23313: no object-group in public :"GRAIN_MASTER"."GRAIN.GOV"
    but I don't know I how I can have the privilege to logon to Enterprise manager console to do this manaually, i guess i ommited some steps creating master group successfully, but did see the master group in the dba_repgroup table. Has anyone had such problem before?
    Or can anyone tell me where possiblely goes wrong?
    thanks in advance.

  2. #2
    Join Date
    Oct 2002
    Location
    Cape Town, South Africa
    Posts
    253

    Post A possible solution

    Firstly, apologies to all for bumping this ancient thread. However, today I came across the same error and found a solution. So I am posting a possible solution for the benefit of those seeking help regarding ORA-23313. I came across the ORA-23313 error while executing DBMS_REPCAT.CREATE_MVIEW_REPGROUP (Oracle 10g).

    Env: Ora 10g, MASTER < - > UPDATEABLE SLAVE configuration

    It seems that the procedure will give the ORA-23313 if it cannot resolve a master replication group for whatever reason. So make sure you have not made any typeos on the group name and dblink name. Remember that the MVIEW REPGROUP on the slave must be named the same as the MASTER REPGROUP on the master and the DBLINK name on the slave must be the same as the GLOBAL_NAME of the master that it is connecting to.

    After many attempts I found that in order for the call to succeed you must have:
    1) On the master, enabled replication by:
    Code:
    EXEC DBMS_REPCAT.CREATE_MASTER_REPGROUP('REPGROUPNAME');
    EXEC DBMS_REPCAT.CREATE_MASTER_REPOBJECT('OBJECTOWNER', 'OBJECTNAME', 'OBJECTTYPE', GNAME=>'GROUPNAME'); -- < for each and every object you want replicated
    EXEC DBMS_REPCAT.GENERATE_REPLICATION_SUPPORT('OBJECTOWNER', 'OBJECTNAME', 'OBJECTTYPE'); -- < for each and every object you want replicated
    EXEC DBMS_REPCAT.RESUME_MASTER_ACTIVITY('REPGROUPNAME');
    2) On the slave, create a database link that is named exactly the same as the global_name of the master. You can obtain the master global_name by executing "select global_name from global_name" on the master. My DBLINK code looks like this:
    Code:
    create database link SANDBOX.REGRESS.RDBMS.DEV.US.ORACLE.COM
    connect to testrep
    identified by testrep
    using 'SANDBOX'
    /
    Notice that I used the full global_name of the master as the name of my DBLINK. Also notice that my "USING" clause only uses the abbreviated TNS name as defined in my slaves TNSNAMES.ORA file.
    3) On the slave, create your mview repgroup:
    Code:
    EXEC DBMS_DEFER_SYS.REGISTER_PROPAGATOR('GROUPOWNER');
    EXEC DBMS_REPCAT.CREATE_MVIEW_REPGROUP('GROUPNAME', 'DBLINKNAME');
    The ORA-23313 should no longer happen.

    Hope this helps someone else out there because I could not find any straight forward answers on the subject. I would say the dblink name quirck should be mentioned somewhere as a note. Then again, the do say that your DB should have system parameter global_names=true, which of course would force you to name database links exactly the same as the global_name of the database they are connected to.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •