Re: [HACKERS] TODO item: Implement Boyer-Moore searching (First time hacker)
От | David Rowley |
---|---|
Тема | Re: [HACKERS] TODO item: Implement Boyer-Moore searching (First time hacker) |
Дата | |
Msg-id | 0D0F8DC5EE1341A199B5BDA73F870BA7@amd64 обсуждение исходный текст |
Ответ на | Re: [HACKERS] TODO item: Implement Boyer-Moore searching (First time hacker) (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>) |
Список | pgsql-patches |
Heikki Linnakangas Wrote: > Tom Lane wrote: > > Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes: > >> Also, it would be nice to use B-M(-H) for LIKE as well. > > > > Right offhand, that seems impossible, at least in patterns with %. > > Or were you thinking of trying to separate out the fixed substrings > > of a pattern and search for them with BMH? > Yep, something like that. Even if it only handled the special case of > '%foobar%', that would be nice, because that's a pretty common special > case. It would be a quick test to check for % at either end. But we'd also need to ensure there were none in the middle. That might slow it down. I guess while looping over the inner chars checking for more %'s we could be building a skiptable. We'd have to abort it if we found any %'s of course I think with out giving it much thought _'s could be handled by BMH, these could just be given a skip distance of 2. Only having a lossy skip table throws that out the window without having a special check for _ David.
В списке pgsql-patches по дате отправления: