3 Replies Latest reply on Jun 1, 2017 1:23 PM by Matperry-Oracle

    Oracle Text index for the RDF network and MAX_STRING_SIZE=extended


      Dear all,


      On freshly new installed 12.2 database:


      1) I created the semantic network, i.e.:

      execute sem_apis.create_sem_network('rdf_users');


      2) Then I configured MAX_STRING_SIZE=extended, following the standard procedure described here: Increasing the Maximum Size of VARCHAR2, NVARCHAR2, and RAW Columns in a CDB.


      3) When I tried to create an Oracle Text index for the RDF network, I got the following error:

      EXECUTE SEM_APIS.ADD_DATATYPE_INDEX('http://xmlns.oracle.com/rdf/text');
      ERROR at line 1:
      ORA-13199: SQLERRM=ORA-29855: error occurred in the execution of
      ODCIINDEXCREATE routine [index_name=RDF_V$TEXT_IDX
      datatype=http://xmlns.oracle.com/rdf/text dss=create index RDF_V$TEXT_IDX
      on MDSYS.RDF_VALUE$(vname_prefix)
      indextype is ctxsys.context
      datastore RDF_VALUE_MULTI
      storage RDF_VALUE_STORAGE
      wordlist RDF_VALUE_WORDLIST
      sync (on commit) ') ]
      ORA-06512: at "MDSYS.MD", line 1723
      ORA-06512: at "MDSYS.MDERR", line 17
      ORA-06512: at "MDSYS.SDO_RDF_INTERNAL", line 24889
      ORA-06512: at "MDSYS.SDO_RDF_INTERNAL", line 25083
      ORA-06512: at "MDSYS.SDO_RDF", line 9710
      ORA-06512: at "MDSYS.RDF_APIS", line 2362
      ORA-06512: at line 1


      I then tried manually:

      EXECUTE SEM_APIS.DROP_DATATYPE_INDEX('http://xmlns.oracle.com/rdf/text');
      CREATE INDEX MDSYS.RDF_V$TEXT_IDX ON MDSYS.RDF_VALUE$(VNAME_PREFIX) indextype is ctxsys.context parameters ('sync (on commit)');
      ERROR at line 1:
      ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
      ORA-20000: Oracle Text error:
      DRG-50857: oracle error in drvxtab.create_index_tables
      ORA-43929: Collation cannot be specified if parameter MAX_STRING_SIZE=STANDARD
      is set.
      ORA-06512: at "CTXSYS.DRUE", line 171
      ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 316


      It seems that I that setting MAX_STRING_SIZE=extended was successful. The procedure produced the following logs:


      $ ls -l utl32k_cdb_pdbs_output utlrp_cdb_pdbs_output
      total 28
      -rw-rw-r--. 1 oracle oracle 12681 Jun  1 10:44 utl32k_cdb_pdbs_output0.log
      -rw-rw-r--. 1 oracle oracle  4570 Jun  1 10:44 utl32k_cdb_pdbs_output1.log
      -rw-rw-r--. 1 oracle oracle   457 Jun  1 10:43 utl32k_cdb_pdbs_output_catcon_16444.lst
      total 28
      -rw-rw-r--. 1 oracle oracle 14210 Jun  1 10:49 utlrp_cdb_pdbs_output0.log
      -rw-rw-r--. 1 oracle oracle  5080 Jun  1 10:49 utlrp_cdb_pdbs_output1.log
      -rw-rw-r--. 1 oracle oracle   453 Jun  1 10:47 utlrp_cdb_pdbs_output_catcon_17442.lst


      Does anyone have an idea of what is going on?


      Thank you