Words containing underscores are broken into separate words during indexing. So for example if you had a word like this in your record:
It would be split into the following terms:
If one of the terms is a stop word, all searches for the original word will return zero results.
Searches for the separate words, which are not stop words, will still return the relevant record.
Steps to Reproduce
- Navigate to System Definition > Text Indexes
- Open the text index for the sys_user table
- In the "Index Stop Words" related list click New
- Fill out the form as below:
- Index: sys_user
- Word: bumbershoot
- Stop mode: Index but do not query
- Navigate to User Administration > Users
- Open any user from the list and change their last name to the following:
- Return back to the user list and add the following filter:
Keywords -- are -- shrive_bumbershoot_meritorious_runnel_scapegrace
No records are returned from the search, because of the "bumbershoot" stop word included.
As a workaround, searching for the separate words, which are not stop words, removing the underscores, will return the expected records.
Related Problem: PRB830497