sed query
Chris Rees
utisoft at gmail.com
Fri May 31 14:02:30 UTC 2013
Hi all,
I think I've discovered a strange behaviour of sed perhaps triggered
by the length of a regex passed to it. I noticed that a certain
expression I passed took a very long time, and suspected the usual
backtracking loop, so I started trimming it... and discovered this:
[crees at pegasus]~% time sed -ne "s,^BitchX-[0-9][^|]*[\|]/usr/por,,"
/var/db/pkg/INDEX-9
4.699u 0.007s 0:04.70 99.7% 40+2733k 0+0io 0pf+0w
[crees at pegasus]~% time sed -ne "s,^BitchX-[0-9][^|]*[\|]/usr/po,,"
/var/db/pkg/INDEX-9
0.042u 0.000s 0:00.04 100.0% 48+3216k 0+0io 0pf+0w
I've looked at the code, and can't from a brief glance figure out why
a slightly longer regex makes such a difference-- does it start to
split it?
Chris
More information about the freebsd-hackers
mailing list