Hello,
I have a full-text index defined on a database with 21,936,670 entries. I'm hitting a stack overflow error when I try to query the following (normalized) string with a fuzzy query:
"sajawandi, siraj al-din muhammad ibn muhammad, active 12th century. faraʼid al-sirajiyah"
The index entries look like this:
<d a="http://id.loc.gov/authorities/names/n2008037847"> <n>Sajāwandī, Sirāj al-Dīn Muḥammad ibn Muḥammad, active 12th century. Farāʼiḍ al-Sirājīyah</n> <d>12th cent.</d> </d>
If I create a new DB ("ftindex-test") with only that one entry and try the following lookup, it works:
ft:search( "ftindex-test", "sajawandi, siraj al-din muhammad ibn muhammad, active 12th century. faraʼid al-sirajiyah" , map {"mode": "phrase", "content": "entire", "fuzzy": true()} )/..
However, if I try the same query against the full index (with ~22 million entries), it fails with a stack overflow error:
[qtp1546693040-47] WARN org.eclipse.jetty.server.HttpChannel - /dba/query-eval java.lang.StackOverflowError at org.basex.index.query.FTIndexIterator$2.pos(FTIndexIterator.java:73) at org.basex.index.query.FTIndexIterator$2.pos(FTIndexIterator.java:74) ...
If I remove the "fuzzy" parameter, the query does work against the full index. Is this a bug, a known limitation here, or something that I'm missing?
Thanks in advance, Tim
-- Tim A. Thompson Metadata Librarian Yale University Library