Thread Leerzeichen-Regex lässt StackExchange ausfallen?
(27 answers)
Opened by GwenDragon at 2016-07-21 13:24
Durch ein Regex, das Leerzeichen (\x20 bzw \u200c) am Anfang und Ende von Postings entfernt, wurde StackExchange lahmgelegt weil 20.000 Leerzeichen gepostet wurden?
Siehe http://stackstatus.net/post/147710624694/outage-po... Ist so eine Falle auch in Perl möglich? Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 #!/usr/bin/perl use strict; use warnings; use 5.010; use utf8; use Benchmark qw(:all :hireswallclock) ; my $DATA = <<'DATA'; T est 123 A ha a a a a aaaa s a s sssssssssssssssssssssss ssssssssssssssss sssssssssssssssss dd ddddd aaa 111 ddd fff a fg fff fff a DATA my $c1 = <<'CODE'; $DATA =~ s/^[\s\u200c]+|[\s\u200c]+$//g; print $DATA; CODE my $c2 = <<'CODE'; my $re = qr(^[\s\u200c]+|[\s\u200c]+$); $DATA =~ s/$re//g; print $DATA; CODE timethis(10_000_000,$c1); timethis(10_000_000,$c2); timethis 10000000: 1.91004 wallclock secs ( 1.91 usr + 0.00 sys = 1.91 CPU) @ 5246589.72/s (n=10000000) timethis 10000000: 27.0479 wallclock secs (26.95 usr + 0.02 sys = 26.97 CPU) @ 370796.10/s (n=10000000) Kommt darauf an wie falsch es gemacht wird, damit es lahmt ;) Last edited: 2016-07-21 13:34:12 +0200 (CEST) |