-
Vishesh Handa authored
When we receive a search string, we typically split it up by spaces and dots. Then each sub string is checked, if it is <= 3 characters, we use our own expansion scheme (imperfect) otherwise xapians. We need to use our own completion scheme because xapian's consumes too much memory in the case of very few characters. It basically expands the string to every possible completion result it has in its db, this results in loads and loads of memory being consumed. We now split based on some extra characters so that when searching for '2*2=' will not consume all your RAM in the case when your DB has many words starting with 2. BUG: 332253 FIXED-IN: 4.13.1
5bdb3292