10 Replies Latest reply on Aug 11, 2008 6:11 PM by 652134

    bulk_load_from_staging_table error

    652134
      Hello,
      I am trying to load some data into a model using the sem_apis.bulk_load_from_staging_table command. I have successfully loaded other data into my models using this method. Currently, I am getting the following error. Can someone provide some insight? Thanks. Chuck

      Time: Fri Aug 01 15:28:49 EDT 2008 Running: {call sem_apis.bulk_load_from_staging_table('model','rdfuser','stable', 'VALUES_TABLE_INDEX_REBUILD')}
      Error: ORA-00600: internal error code, arguments: [srsnext_2], [0], [], [], [], [], [], []
      ORA-06512: at "MDSYS.RDF_APIS_INTERNAL", line 1442
      ORA-06512: at "MDSYS.SDO_RDF_INTERNAL", line 1992
      ORA-06512: at "MDSYS.SDO_RDF", line 294
      ORA-06512: at "MDSYS.RDF_APIS", line 542
      ORA-06512: at line 1

      java.sql.SQLException: ORA-00600: internal error code, arguments: [srsnext_2], [0], [], [], [], [], [], []
      ORA-06512: at "MDSYS.RDF_APIS_INTERNAL", line 1442
      ORA-06512: at "MDSYS.SDO_RDF_INTERNAL", line 1992
      ORA-06512: at "MDSYS.SDO_RDF", line 294
      ORA-06512: at "MDSYS.RDF_APIS", line 542
      ORA-06512: at line 1

           at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
           at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:110)
           at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:171)
           at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455)
           at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413)
           at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1030)
           at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:191)
           at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:944)
           at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1222)
           at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3381)
           at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3482)
           at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:3839)
           at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1085)
        • 1. Re: bulk_load_from_staging_table error
          652134
          Hello,
          I tried my load again. This time I got a java.sql.SQLException: ORA-01418: specified index does not exist. I tried it a third time. This time I dropped the VALUES_TABLE_INDEX_REBUILD flag from my bulk_load call. This time the load worked fine. Was the original error just a fluke?

          Thanks,
          Chuck
          • 2. Re: bulk_load_from_staging_table error
            Sdas-Oracle
            Chuck,

            The RDBMS internal error "srsnext_2" in the original run caused creation of the indexes on RDF_VALUE$ to fail. This caused the "ORA-01418: specified index does not exist" in the second run. It succeeded when index rebuild option was not used because in that code path we do not directly manipulate the index.

            You need to connect as mdsys and execute the following commands to re-create the indexes on RDF_VALUE$ table:

            CREATE UNIQUE INDEX rdf_val_nametylitlng_idx ON mdsys.rdf_value$ (
            vname_prefix,value_type,vname_suffix,
            literal_type,language_type)
            COMPRESS 2 NOLOGGING tablespace <tablespace of the sem network>);

            and

            ALTER TABLE rdf_value$ ENABLE PRIMARY KEY
            USING INDEX tablespace <tablespace of the sem network>);
            • 3. Re: bulk_load_from_staging_table error
              Sdas-Oracle
              Chuck,

              A new bug has been entered against Oracle RDBMS to track this internal error seen during RDF bulk-load. If the internal error reproduces during attempt to re-create the indexes, please contact us directly.
              • 4. Re: bulk_load_from_staging_table error
                652134
                Quick question...what's my semantic tablespace? My user's table space is RDFUSER. This contains all the tables I populated during my loading process. There is another tablespace called SEM_TS. This was created automatically by the Semantic Technologies scripts. Which tablespace do I use?

                Thanks,
                Chuck
                • 5. Re: bulk_load_from_staging_table error
                  Sdas-Oracle
                  This is the tablespace that was specified as argument when the semantic network was created using the SEM_APIS.CREATE_SEM_NETWORK call.

                  Here is an easy way to figure this out:

                  select tablespace_name from all_tables where owner='MDSYS' and table_name='RDF_VALUE$';
                  • 6. Re: bulk_load_from_staging_table error
                    652134
                    Hello,
                    I ran the first command to build the index and I encountered the following error:

                    create unique index rdf_val_nametylitlng_idx ON mdsys.rdf_value$
                    *
                    ERROR at line 1:
                    ORA-00600: internal error code, arguments: [srsnext_2], [0], [], [], [], [],
                    [], []


                    Does mdsys.rdf_value$ maintain an index across ALL the tables containing RDF data? Just curious.
                    Thanks,
                    Chuck
                    • 7. Re: bulk_load_from_staging_table error
                      652134
                      Just to clarify. In the error message, the * was under the dot in mdsys.rdf_value$. When I posted my message, the * was shifted.
                      • 8. Re: bulk_load_from_staging_table error
                        652134
                        I ran into the ORA-06512 again. After Souri fixed my RDF_VALUE$ table and index, I successfully loaded some more data into my models. When I loaded, I used SQL*Loader and the following command:

                        sem_apis.bulk_load_from_staging_table(graphname, schema_owner, staging_tablename);

                        These loads worked fine.

                        As part of Souri's solution my RDF_VALUE$ table is no longer compressed. I just double checked the table using the user_tables view, RDF_VALUE$ is still uncompressed.

                        Today I tried loading some more data. This time I used the following command:

                        sem_apis.bulk_load_from_staging_table(graphname, schema_owner, staging_tablename, 'VALUES_TABLE_INDEX_REBUILD');

                        This load generated a ORA-06512 error. I am running Oracle on a virtualized Linux server. I took a snapshot of the server before I started loading. I have reverted to the earlier snapshot. I reloaded the data. This time, I used the following command:

                        sem_apis.bulk_load_from_staging_table(graphname, schema_owner, staging_tablename);


                        This time the load worked. I think there may be a problem with the VALUES_TABLE_INDEX_REBUILD flag. I'm pretty sure I was using this flag the last time I ran into the error.
                        • 9. Re: bulk_load_from_staging_table error
                          Sdas-Oracle
                          Chuck,

                          It is perfectly alright to not use that flag. In fact as the network gets bigger, it is not recommended.
                          • 10. Re: bulk_load_from_staging_table error
                            652134
                            OK, thanks for looking into it.