aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands/variable.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2010-02-01 02:46:01 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2010-02-01 02:46:01 +0000
commitc7ddee05cdb81630664280f5e8bd9845c2bcc26a (patch)
tree39ce5e5b366d52bbe534b2a0d2fc149650877f6b /src/backend/commands/variable.c
parent3255ea02309c5b655a61f3a74742675cb629842d (diff)
downloadpostgresql-c7ddee05cdb81630664280f5e8bd9845c2bcc26a.tar.gz
postgresql-c7ddee05cdb81630664280f5e8bd9845c2bcc26a.zip
Change regexp engine's ccondissect/crevdissect routines to perform DFA
matching before recursing instead of after. The DFA match eliminates unworkable midpoint choices a lot faster than the recursive check, in most cases, so doing it first can speed things up; particularly in pathological cases such as recently exhibited by Michael Glaesemann. In addition, apply some cosmetic changes that were applied upstream (in the Tcl project) at the same time, in order to sync with upstream version 1.15 of regexec.c. Upstream apparently intends to backpatch this, so I will too. The pathological behavior could be unpleasant if encountered in the field, which seems to justify any risk of introducing new bugs. Tom Lane, reviewed by Donal K. Fellows of Tcl project
Diffstat (limited to 'src/backend/commands/variable.c')
0 files changed, 0 insertions, 0 deletions