Insuficient privileges for anything about Oracle Text
827090Dec 28 2010 — edited Dec 29 2010I have this problem with Oracle Text that ask me for privileges for anything.
I use two instances of Oracle: in the first one it works like a charm, but the same instruction in the second gives me the error. This is the instruction:
CREATE INDEX SEBU_IDX_PREGUNTAS ON TB_BUS_PREGUNTAS(PREGUNTAB)
INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('SYNC (ON COMMIT) LEXER SEBU_lexer WORDLIST SEBU_word_list FILTER CTXSYS.NULL_FILTER DATASTORE SEBU_MCD_Preguntas');
and the error is (kind of translated from spanish):
ORA-29855: it was an error in the execution of ODCIINDEXCREATE
ORA-20000: Oracle text error:
ORA-01031: insuficient privileges
ORA-06512: in "CTXSYS.DRUE", line 160.
ORA-06512: in "CTXSYS.TEXTINDEXMETHODS", line 366.
I've give my user every grant my ignorance in Oracle allows me. I even have the DBA role.
Done this:
GRANT RESOURCE, CONNECT, CTXAPP TO MyUser ;
Also this:
GRANT EXECUTE ON CTXSYS.CTX_CLS TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_DDL TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_DOC TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_OUTPUT TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_QUERY TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_REPORT TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_THES TO MyUser ;
GRANT EXECUTE ON CTXSYS.CTX_ULEXER TO MyUser ;
The creation of the index actually creates the index but does not create the dr$ tables.
Trying to remove the "corrupted" index also generates the privileges error. However, I can remove table, wich I think also removes the index.
By the way, this index works on a column, not on files.
The creation of the preferences/attributes works:
BEGIN
ctx_ddl.create_preference('SEBU_lexer', 'BASIC_LEXER');
ctx_ddl.set_attribute('SEBU_lexer','index_stems', 'SPANISH');
ctx_ddl.set_attribute('SEBU_lexer','index_text','YES');
END;
Any help will very be appreciated.