Results 1 to 6 of 6

Thread: text indexes

  1. #1
    Join Date
    Dec 2003
    Location
    Belgium
    Posts
    48

    Lightbulb Unanswered: text indexes

    Hi,

    Have following question, by creating an index as specific indextype (for Oracle text), get this error while trying to put it in a different tablespace than the default one:


    create index context_index_arc on arc_documenten(document) indextype is ctxsys.context tablespace tabespace1_indexes;


    ERROR at line 1:
    ORA-29850: invalid option for creation of domain indexes

    I know it is different for these types of indexes to use the storage part, but how can I put this index to another tablespace?

    I also tried this one:

    create index context_index on documenten(document) indextype is ctxsys.context parameters('tablespace=tablespace1_INDEXES')

    ERROR at line 1:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-20000: Oracle Text error:
    DRG-11000: invalid keyword TABLESPACE=tablspace1_INDEXES
    ORA-06512: at "CTXSYS.DRUE", line 157
    ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 186


    anyone can help me ?
    thanks

  2. #2
    Join Date
    Oct 2003
    Posts
    706
    Are you, like, a really bad typist? Is the syntax of what you actually typed correct and as you intended?
    ChimneySweep(R): fast, automatic
    table repair at a click of the
    mouse! http://www.sundialservices.com

  3. #3
    Join Date
    Aug 2004
    Location
    France
    Posts
    754
    Hello,

    For Oracle Text indexes, specifying another tablespace than the default one can only be done by creating your own BASIC_STORAGE "storage preferences" first, and then tell Oracle Text to use these preferences when you create your index.

    For example, to create a storage preference named textstore in order to use tablespace text01 :

    begin
    ctx_ddl.create_preference('textstore', 'BASIC_STORAGE');
    ctx_ddl.set_attribute('textstore', 'I_TABLE_CLAUSE','tablespace text01 storage (initial 1K)');
    ctx_ddl.set_attribute('textstore', 'K_TABLE_CLAUSE','tablespace text01 storage (initial 1K)');
    ctx_ddl.set_attribute('textstore', 'R_TABLE_CLAUSE','tablespace text01 storage (initial 1K)');
    ctx_ddl.set_attribute('textstore', 'N_TABLE_CLAUSE','tablespace text01 storage (initial 1K)');
    ctx_ddl.set_attribute('textstore', 'I_INDEX_CLAUSE','tablespace text01 storage (initial 1K)');
    ctx_ddl.set_attribute('textstore', 'P_TABLE_CLAUSE','tablespace text01 storage (initial 1K)');
    end;
    /

    create index context_index_arc on arc_documenten(document) indextype is ctxsys.context parameters ('storage textstore');

    Note that you should have created tablespace text01 prior to the index creation.

    Regards,

    RBARAER

  4. #4
    Join Date
    Dec 2003
    Location
    Belgium
    Posts
    48
    Hi, thanks for the reply, I finally got time to test some things out now, but still get errors:

    SQL> create index context_index on documenten(document) indextype is ctxsys.context parameters ('storage textstore');
    create index context_index on documenten(document) indextype is ctxsys.context parameters ('storage textstore');
    *
    ERROR at line 1:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-20000: Oracle Text error:
    DRG-50857: oracle error in drixtab.create_index_tables
    ORA-01950: no privileges on tablespace 'USERS'
    ORA-06512: at "CTXSYS.DRUE", line 157
    ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 186

    I don't need it in the users tablespaces, I thought by specifying that parameters ('storage ...) that it would go in that tablespace?

    I created the storage as next:

    SQL> begin
    ctx_ddl.create_preference('textstore', 'BASIC_STORAGE');
    ctx_ddl.set_attribute('textstore', 'I_INDEX_CLAUSE','tablespace a_indexes storage (initial 1K)');
    end;
    /

    the tablespace in de preference exists and the user has default tablespace users with no quota ... I don't understand what is wrong ... someone else?

    thanks
    greets
    ksc
    Last edited by ksc; 10-05-04 at 11:36.

  5. #5
    Join Date
    Dec 2003
    Location
    Belgium
    Posts
    48
    Quote Originally Posted by ksc
    Hi, thanks for the reply, I finally got time to test some things out now, but still get errors:

    SQL> create index context_index on documenten(document) indextype is ctxsys.context parameters ('storage textstore');
    create index context_index on documenten(document) indextype is ctxsys.context parameters ('storage textstore');
    *
    ERROR at line 1:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-20000: Oracle Text error:
    DRG-50857: oracle error in drixtab.create_index_tables
    ORA-01950: no privileges on tablespace 'USERS'
    ORA-06512: at "CTXSYS.DRUE", line 157
    ORA-06512: at "CTXSYS.TEXTINDEXMETHODS", line 186

    I don't need it in the users tablespaces, I thought by specifying that parameters ('storage ...) that it would go in that tablespace?

    I created the storage as next:

    SQL> begin
    ctx_ddl.create_preference('textstore', 'BASIC_STORAGE');
    ctx_ddl.set_attribute('textstore', 'I_INDEX_CLAUSE','tablespace a_indexes storage (initial 1K)');
    end;
    /

    the tablespace in de preference exists and the user has default tablespace users with no quota ... I don't understand what is wrong ... someone else?

    thanks
    greets
    ksc
    okay, things are oke now, I thought I didn't had to put all those preference attributes in of it, but it seems that is has to be ...

  6. #6
    Join Date
    Aug 2004
    Location
    France
    Posts
    754
    Yes, you have to set all these attributes for the storage preference.

    Glad it helped.

    Regards,

    RBARAER

Posting Permissions

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