begin
ctx_ddl.create_preference('"SEARCH_WEB_INDEX_STO"','BASIC_STORAGE');
ctx_ddl.set_attribute('"SEARCH_WEB_INDEX_STO"','R_TABLE_CLAUSE','lob (data) st
ore as (cache)');
ctx_ddl.set_attribute('"SEARCH_WEB_INDEX_STO"','I_INDEX_CLAUSE','compress 2');
end;
/
begin
ctx_output.start_log('SEARCH_WEB_INDEX_LOG');
end;
/
create index "SAPOL_CMS"."SEARCH_WEB_INDEX"
on "SAPOL_CMS"."SEARCH_WEB"
("SEARCH_CONTENT")
indextype is ctxsys.context
parameters('
datastore "SEARCH_WEB_INDEX_DST"
filter "SEARCH_WEB_INDEX_FIL"
section group "SEARCH_WEB_INDEX_SGP"
lexer "SEARCH_WEB_INDEX_LEX"
wordlist "SEARCH_WEB_INDEX_WDL"
stoplist "SEARCH_WEB_INDEX_SPL"
storage "SEARCH_WEB_INDEX_STO"
')
/
begin
ctx_output.end_log;
end;
/
This index used to work fine for quite some time, but now when try to resync by typing the ctx_ddl.sync_index directly into SQLPlus it will not pickup new documents. However, we did find that dropping the index and recreating it again index the new documents.
Basically,
1) we add a document to the table
2) run ctx_ddl.sync_index
3) perform a search on this index/table and the document is never returned
Inserted some word and pdf documents into the SEARCH_WEB table. We do this via a custom application. I can see the new rows in the database.
The documents are added to DR$SEARCH_WEB_INDEX$I as I can see the tokens in this table for the new documents.
Add further different documents to the SEARCH_WEB table.
The SQL that I am calling now to repeat the problem is shown below. This used to run as a database job, but for now I am just manually running it myself. Please understand that this used to work really well, but has stopped working all together now, so I doubt that you will be able to repeat this issue in your test environment.
exec ctx_ddl.sync_index('search_web_index');
When I call exec ctx_ddl.sync_index('search_web_index') no new documents are added to the index. I can see this by looking in DR$SEARCH_WEB_INDEX$I. Please understand that this used to work.
To get around this problem instead of calling
exec ctx_ddl.sync_index('search_web_index')
I called:
drop index search_web_index;
create index search_web_index on search_web(search_content) indextype is ctxsys.context parameters('STOPLIST doco_stoplist filter ctxsys.inso_filter');
The new tokens would then appear in DR$SEARCH_WEB_INDEX$I.
so finally instead of dropping and recreating, why documents are not getting indexed while syncing.
Bookmarks