> Doh, you're right ... but on third thought, what happens with a pattern > containing "%_"? If % tries to advance bytewise then we'll be trying to > apply NextChar in the middle of a data character, and bad things ensue.
Right, when you have '_' after a '%' you need to make sure the '%' advances full characters. In my suggestion the test if '_' (or '\') come after the '%' is done once and it select which of the two loops to use, the one that do byte stepping or the one with NextChar. It's difficult to know for sure that we have thought about all the corner cases. I hope the gain is worth the effort.. :-) /Dennis ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate