Truncated searches don't work in SS 4.2.1 with
Pears1.1.32. For example, searching on "wisc*"
matches "wisc" but not "wisconsin".
Similar results occur using the ztest command line
client. Interestingly, searching with just the truncation
attribute or truncation and structure attributes gives
the correct results. But when the use attribute is used,
the truncation attribute seems to be ignored:
Command: scan wis
Scan Successful! 20 terms returned
'winnebago' 2 (use=1016;structure=2 greatlakes=2)
'winnetka' 3 (use=1016;structure=2 greatlakes=3)
'winona' 16 (use=1016;structure=2 greatlakes=16)
'wins' 3 (use=1016;structure=2 greatlakes=3)
'winslow' 3 (use=1016;structure=2 greatlakes=3)
'winter' 9 (use=1016;structure=2 greatlakes=9)
'wintering' 2 (use=1016;structure=2 greatlakes=2)
'wire' 1 (use=1016;structure=2 greatlakes=1)
'wires' 1 (use=1016;structure=2 greatlakes=1)
'wis' 146 (use=1016;structure=2 greatlakes=146)
'wisc' 23 (use=1016;structure=2 greatlakes=23)
'wisconsin' 1008 (use=1016;structure=2
greatlakes=1008)
'wish' 1 (use=1016;structure=2 greatlakes=1)
'wisherd' 2 (use=1016;structure=2 greatlakes=2)
'with' 210 (use=1016;structure=2 greatlakes=210)
'without' 1007 (use=1016;structure=2 greatlakes=1007)
'witte' 1 (use=1016;structure=2 greatlakes=1)
'wm' 13 (use=1016;structure=2 greatlakes=13)
'wm1g001' 1 (use=1016;structure=2 greatlakes=1)
'wm1g002' 1 (use=1016;structure=2 greatlakes=1)
rspTime is 20 msecs
Command: wis/t=1
1008 records found
Search Successful! :-)
recordSyntax='null'
number of Records Returned='0'
componentResults[0]:
term= 'wis'
count= 1180 fullResultsFlag= false
use = -1
structure = -1
dbResults[0] dbName[0]=greatlakes
count=1008 fetchOffset= 1
rspTime is 10 msecs
Command: wis/t=1;s=2
1008 records found
Search Successful! :-)
recordSyntax='null'
number of Records Returned='0'
componentResults[0]:
term= 'wis'
count= 1180 fullResultsFlag= false
use = -1
structure = 2
dbResults[0] dbName[0]=greatlakes
count=1008 fetchOffset= 1
rspTime is 11 msecs
Command: wis/t=1;s=2;u=1016
146 records found
Search Successful! :-)
recordSyntax='null'
number of Records Returned='0'
componentResults[0]:
term= 'wis'
count= 146 fullResultsFlag= false
use = 1016
structure = 2
Logged In: YES
user_id=1006497
This is only a problem if nacoNormalize=true is set in the
zbase database.ini file.
It appears that making a slight change to
ORG.oclc.pears.IndexRoutines.Phrase fixes the problem:
In nacoNormalize(), I changed the logic that begins with
"if(c<' '" to "if((c != '\u0002' && c<' ')" .