Skip to Main Content

printjoins

chromedomeMar 28 2010 — edited Mar 31 2010
I'm testing this on 9.2.0.7, 10.2.0.3 and 11.1.0.7. I have a little internal app that gives developers the ability to quickly log problems, errors, bugs and their solutions when found. It is searchable respository. It uses a multi-column index.

Here is the definition for 10g and up:
CREATE INDEX ps_multitab_cidx ON ps_prob(otx_sync_col)
INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('DATASTORE sol_user_ds
SECTION GROUP sol_sectioner
LEXER sol_lexer
WORDLIST sol_wordlist
SYNC (EVERY "SYSDATE+6/24")
TRANSACTIONAL');

The lexer uses the printjoins attribute, among other reasons, to preserve the full Oracle error, e.g. "TNS-12523"

It does its job wonderfully. In dr$ps_multitab_cidx$i, we see "TNS-12523" as one of the token_text values.

However, I want the behavior of the lexer with printjoins and without printjoins. I want Oracle Text to index "12523" and "TNS" too. With the printjoins attribute in the lexer, when I do a CONTAINS query on "3113", I expect to get the entry in my app that points to ORA-03113. But that does not work since only the full "ORA-03113" token was indexed.

Maybe this explains why I have such a dismal time searching in My Oracle Support (what used to be Metalink).

If anyone can explain how to get Text to index both the tokens separated by the hyphen or underscore, and the full text of the joined word, I'd be really greatful.
Comments
Post Details
Added on Mar 28 2010
5 comments
2,167 views