ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows
@ 2013-12-05 13:53 mpelzsherman (Michael Pelz-Sherman)
  2013-12-06  7:14 ` [ruby-core:58899] [ruby-trunk - Bug #9221] " duerst (Martin Dürst)
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: mpelzsherman (Michael Pelz-Sherman) @ 2013-12-05 13:53 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been reported by mpelzsherman (Michael Pelz-Sherman).

----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58899] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
@ 2013-12-06  7:14 ` duerst (Martin Dürst)
  2013-12-06 14:40 ` [ruby-core:58912] " mpelzsherman (Michael Pelz-Sherman)
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: duerst (Martin Dürst) @ 2013-12-06  7:14 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by duerst (Martin Dürst).


This runs in no time on ruby 2.0.0p247 (2013-06-27) [i386-mingw32] (same patch level!). Can you give more details about your environment?
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43451

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58912] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
  2013-12-06  7:14 ` [ruby-core:58899] [ruby-trunk - Bug #9221] " duerst (Martin Dürst)
@ 2013-12-06 14:40 ` mpelzsherman (Michael Pelz-Sherman)
  2013-12-06 14:41 ` [ruby-core:58913] " mpelzsherman (Michael Pelz-Sherman)
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: mpelzsherman (Michael Pelz-Sherman) @ 2013-12-06 14:40 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by mpelzsherman (Michael Pelz-Sherman).


duerst (Martin Dürst) wrote:
> This runs in no time on ruby 2.0.0p247 (2013-06-27) [i386-mingw32] (same patch level!). Can you give more details about your environment?

Model Name:	MacBook Pro
  Model Identifier:	MacBookPro9,1
  Processor Name:	Intel Core i7
  Processor Speed:	2.3 GHz
  Number of Processors:	1
  Total Number of Cores:	4
  L2 Cache (per Core):	256 KB
  L3 Cache:	6 MB
  Memory:	16 GB
  Boot ROM Version:	MBP91.00D3.B08
  SMC Version (system):	2.1f173
  Serial Number (system):	C02JP19HF1G3
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43463

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58913] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
  2013-12-06  7:14 ` [ruby-core:58899] [ruby-trunk - Bug #9221] " duerst (Martin Dürst)
  2013-12-06 14:40 ` [ruby-core:58912] " mpelzsherman (Michael Pelz-Sherman)
@ 2013-12-06 14:41 ` mpelzsherman (Michael Pelz-Sherman)
  2013-12-07  2:07 ` [ruby-core:58930] " charliesome (Charlie Somerville)
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: mpelzsherman (Michael Pelz-Sherman) @ 2013-12-06 14:41 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by mpelzsherman (Michael Pelz-Sherman).


Running ruby-2.0.0-p247 [ x86_64 ], installed using RVM.
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43464

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58930] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (2 preceding siblings ...)
  2013-12-06 14:41 ` [ruby-core:58913] " mpelzsherman (Michael Pelz-Sherman)
@ 2013-12-07  2:07 ` charliesome (Charlie Somerville)
  2013-12-07  7:48 ` [ruby-core:58937] " hsbt (Hiroshi SHIBATA)
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: charliesome (Charlie Somerville) @ 2013-12-07  2:07 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by charliesome (Charlie Somerville).


Reproduced on trunk:

irb(main):027:0> RUBY_DESCRIPTION
=> "ruby 2.1.0dev (2013-12-07 trunk 44044) [x86_64-darwin13.0]"
irb(main):028:0> Benchmark.measure { Time.parse("12:00 PM " + "f"*30) }.to_s
=> "  4.760000   0.000000   4.760000 (  4.759983)\n"
irb(main):029:0> Benchmark.measure { Time.parse("12:00 PM " + "f"*31) }.to_s
=> "  7.770000   0.000000   7.770000 (  7.787989)\n"
irb(main):030:0> Benchmark.measure { Time.parse("12:00 PM " + "f"*32) }.to_s
=> " 12.390000   0.000000  12.390000 ( 12.405786)\n"
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43479

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58937] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (3 preceding siblings ...)
  2013-12-07  2:07 ` [ruby-core:58930] " charliesome (Charlie Somerville)
@ 2013-12-07  7:48 ` hsbt (Hiroshi SHIBATA)
  2013-12-08 10:56 ` [ruby-core:58967] " phasis68 (Heesob Park)
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: hsbt (Hiroshi SHIBATA) @ 2013-12-07  7:48 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by hsbt (Hiroshi SHIBATA).

Target version set to current: 2.1.0


----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43487

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58967] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (4 preceding siblings ...)
  2013-12-07  7:48 ` [ruby-core:58937] " hsbt (Hiroshi SHIBATA)
@ 2013-12-08 10:56 ` phasis68 (Heesob Park)
  2013-12-08 12:38 ` [ruby-core:58969] [ruby-trunk - Bug #9221][Assigned] " akr (Akira Tanaka)
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: phasis68 (Heesob Park) @ 2013-12-08 10:56 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by phasis68 (Heesob Park).


It can be reproduced on ruby 2.0.0-p247 i386-mingw32.

I modified a test code to do not use extension library.

C:\work>ruby -v
ruby 2.0.0p247 (2013-06-27) [i386-mingw32]

C:\work>type test.rb
require 'benchmark'
str = "12:00 PM fffffffffffffffffffffffffffff"
pat=/((?:\d+\s*:\s*\d+(?:\s*:\s*\d+(?:[,.]\d*)?)?|\d+\s*h(?:\s*\d+m?(?:\s*\d+s?)
?)?)(?:\s*[ap](?:m\b|\.m\.))?|\d+\s*[ap](?:m\b|\.m\.))(?:\s*((?:gmt|utc?)?[-+]\d
+(?:[,.:]\d+(?::\d+)?)?|[[:alpha:].\s]+(?:standard|daylight)\stime\b|[[:alpha:]]
+(?:\sdst)?\b))?/i
p Benchmark.measure { pat.match(str) }

C:\work>ruby test.rb
#<Benchmark::Tms:0x24a3440 @label="", @real=3.303211, @cstime=0.0, @cutime=0.0,
@stime=0.0, @utime=3.2969999999999997, @total=3.2969999999999997>

Interestingly, this issue is not reproduced on irb session or without filename.

C:\work>ruby < test.rb
#<Benchmark::Tms:0x24cf4e0 @label="", @real=0.0, @cstime=0.0, @cutime=0.0, @stim
e=0.0, @utime=0.0, @total=0.0>

C:\work>irb
DL is deprecated, please use Fiddle
irb(main):001:0> require 'benchmark'
=> true
irb(main):002:0> str = "12:00 PM fffffffffffffffffffffffffffff"
=> "12:00 PM fffffffffffffffffffffffffffff"
<:].\s]+(?:standard|daylight)\stime\b|[[:alpha:]]+(?:\sdst)?\b))?/i
=> /((?:\d+\s*:\s*\d+(?:\s*:\s*\d+(?:[,.]\d*)?)?|\d+\s*h(?:\s*\d+m?(?:\s*\d+s?)?
)?)(?:\s*[ap](?:m\b|\.m\.))?|\d+\s*[ap](?:m\b|\.m\.))(?:\s*((?:gmt|utc?)?[-+]\d+
(?:[,.:]\d+(?::\d+)?)?|[[:alpha:].\s]+(?:standard|daylight)\stime\b|[[:alpha:]]+
(?:\sdst)?\b))?/i
irb(main):004:0> p Benchmark.measure { pat.match(str) }
#<Benchmark::Tms:0x27059a0 @label="", @real=0.0, @cstime=0.0, @cutime=0.0, @stim
e=0.0, @utime=0.0, @total=0.0>
=> #<Benchmark::Tms:0x27059a0 @label="", @real=0.0, @cstime=0.0, @cutime=0.0, @s
time=0.0, @utime=0.0, @total=0.0>


----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43517

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58969] [ruby-trunk - Bug #9221][Assigned] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (5 preceding siblings ...)
  2013-12-08 10:56 ` [ruby-core:58967] " phasis68 (Heesob Park)
@ 2013-12-08 12:38 ` akr (Akira Tanaka)
  2013-12-09  1:34 ` [ruby-core:58979] [ruby-trunk - Bug #9221] " phasis68 (Heesob Park)
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: akr (Akira Tanaka) @ 2013-12-08 12:38 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by akr (Akira Tanaka).

Status changed from Open to Assigned
Assignee set to tadf (tadayoshi funaba)

I assigned this issue to tadf because the pattern
is written in ext/date/date_parse.c.
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43520

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Assigned
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58979] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (6 preceding siblings ...)
  2013-12-08 12:38 ` [ruby-core:58969] [ruby-trunk - Bug #9221][Assigned] " akr (Akira Tanaka)
@ 2013-12-09  1:34 ` phasis68 (Heesob Park)
  2013-12-09  1:59 ` [ruby-core:58980] " nobu (Nobuyoshi Nakada)
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: phasis68 (Heesob Park) @ 2013-12-09  1:34 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by phasis68 (Heesob Park).


I think this is an issue of Oniguruma(regular expressions library).

Here is a shortest code of producing this issue.
p /(?:[[:alpha:]]+\s)?/i.match("f"*40)

The [:alpha:] bracket and case ignore flag combination shows bad performance.

The simple workaround is using [a-z] instead of [:alpha:].

----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43531

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Assigned
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58980] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (7 preceding siblings ...)
  2013-12-09  1:34 ` [ruby-core:58979] [ruby-trunk - Bug #9221] " phasis68 (Heesob Park)
@ 2013-12-09  1:59 ` nobu (Nobuyoshi Nakada)
  2013-12-09  2:43 ` [ruby-core:58984] " phasis68 (Heesob Park)
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: nobu (Nobuyoshi Nakada) @ 2013-12-09  1:59 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by nobu (Nobuyoshi Nakada).


[[:alpha:]] doesn't equal to [a-z], the former matches unicode alphabet categories.
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43532

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Assigned
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58984] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (8 preceding siblings ...)
  2013-12-09  1:59 ` [ruby-core:58980] " nobu (Nobuyoshi Nakada)
@ 2013-12-09  2:43 ` phasis68 (Heesob Park)
  2013-12-09 15:20 ` [ruby-core:58999] [ruby-trunk - Bug #9221][Open] " nagachika (Tomoyuki Chikanaga)
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: phasis68 (Heesob Park) @ 2013-12-09  2:43 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by phasis68 (Heesob Park).


I know [[:alpha:]] is not equal to [a-z]. 
But, it seems that the current time parsing is only for ascii string.

BTW, date_strptime.c has the same regular expression on line 567-572.
It should be modified also.

----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43537

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Closed
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:58999] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (9 preceding siblings ...)
  2013-12-09  2:43 ` [ruby-core:58984] " phasis68 (Heesob Park)
@ 2013-12-09 15:20 ` nagachika (Tomoyuki Chikanaga)
  2013-12-10  2:42 ` [ruby-core:59015] [ruby-trunk - Bug #9221] " headius (Charles Nutter)
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: nagachika (Tomoyuki Chikanaga) @ 2013-12-09 15:20 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by nagachika (Tomoyuki Chikanaga).

Status changed from Closed to Open
Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN to 1.9.3: REQUIRED, 2.0.0: REQUIRED

Thank you for your notice. I'll re-open this ticket.
And I confirmed ruby_1_9_3 and ruby_2_0_0 have these regular expressions.
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43552

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: REQUIRED, 2.0.0: REQUIRED


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:59015] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (10 preceding siblings ...)
  2013-12-09 15:20 ` [ruby-core:58999] [ruby-trunk - Bug #9221][Open] " nagachika (Tomoyuki Chikanaga)
@ 2013-12-10  2:42 ` headius (Charles Nutter)
  2013-12-20 18:50 ` [ruby-core:59237] " nagachika (Tomoyuki Chikanaga)
  2014-01-29  5:45 ` [ruby-core:60201] " usa
  13 siblings, 0 replies; 15+ messages in thread
From: headius (Charles Nutter) @ 2013-12-10  2:42 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by headius (Charles Nutter).


Also affects JRuby: https://github.com/jruby/jruby/issues/1319
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43565

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Open
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: REQUIRED, 2.0.0: REQUIRED


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:59237] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (11 preceding siblings ...)
  2013-12-10  2:42 ` [ruby-core:59015] [ruby-trunk - Bug #9221] " headius (Charles Nutter)
@ 2013-12-20 18:50 ` nagachika (Tomoyuki Chikanaga)
  2014-01-29  5:45 ` [ruby-core:60201] " usa
  13 siblings, 0 replies; 15+ messages in thread
From: nagachika (Tomoyuki Chikanaga) @ 2013-12-20 18:50 UTC (permalink / raw
  To: ruby-core


Issue #9221 has been updated by nagachika (Tomoyuki Chikanaga).

Backport changed from 1.9.3: REQUIRED, 2.0.0: REQUIRED to 1.9.3: REQUIRED, 2.0.0: DONE

r44086 and r44126 are backported to ruby_2_0_0 branch at r44126.
----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-43786

Author: mpelzsherman (Michael Pelz-Sherman)
Status: Closed
Priority: Normal
Assignee: tadf (tadayoshi funaba)
Category: core
Target version: current: 2.1.0
ruby -v: ruby-2.0.0-p247
Backport: 1.9.3: REQUIRED, 2.0.0: DONE


See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [ruby-core:60201] [ruby-trunk - Bug #9221] Time.parse performance becomes exponentially worse as string length grows
  2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
                   ` (12 preceding siblings ...)
  2013-12-20 18:50 ` [ruby-core:59237] " nagachika (Tomoyuki Chikanaga)
@ 2014-01-29  5:45 ` usa
  13 siblings, 0 replies; 15+ messages in thread
From: usa @ 2014-01-29  5:45 UTC (permalink / raw
  To: ruby-core

Issue #9221 has been updated by Usaku NAKAMURA.

Backport changed from 1.9.3: REQUIRED, 2.0.0: DONE to 1.9.3: DONE, 2.0.0: DONE

backported into ruby_1_9_3 at r44746.

----------------------------------------
Bug #9221: Time.parse performance becomes exponentially worse as string length grows
https://bugs.ruby-lang.org/issues/9221#change-44686

* Author: Michael Pelz-Sherman
* Status: Closed
* Priority: Normal
* Assignee: tadayoshi funaba
* Category: core
* Target version: 2.1.0
* ruby -v: ruby-2.0.0-p247
* Backport: 1.9.3: DONE, 2.0.0: DONE
----------------------------------------
See attached script. Output:

parsing 12:00 PM fffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.010443
parsing 12:00 PM ffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.017739
parsing 12:00 PM fffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.028127
parsing 12:00 PM ffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.049885
parsing 12:00 PM fffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.071379
parsing 12:00 PM ffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.112612
parsing 12:00 PM fffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.184517
parsing 12:00 PM ffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.293784
parsing 12:00 PM fffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.476253
parsing 12:00 PM ffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 0.786087
parsing 12:00 PM fffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 1.256976
parsing 12:00 PM ffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 2.019426
parsing 12:00 PM fffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 3.300646
parsing 12:00 PM ffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 5.37757
parsing 12:00 PM fffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 8.763601
parsing 12:00 PM ffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 14.165842
parsing 12:00 PM fffffffffffffffffffffffffffffffff
2013-12-05 12:00:00 -0500
elapsed: 23.888907
...


---Files--------------------------------
time_parse.rb (237 Bytes)


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2014-01-29  5:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-05 13:53 [ruby-core:58876] [ruby-trunk - Bug #9221][Open] Time.parse performance becomes exponentially worse as string length grows mpelzsherman (Michael Pelz-Sherman)
2013-12-06  7:14 ` [ruby-core:58899] [ruby-trunk - Bug #9221] " duerst (Martin Dürst)
2013-12-06 14:40 ` [ruby-core:58912] " mpelzsherman (Michael Pelz-Sherman)
2013-12-06 14:41 ` [ruby-core:58913] " mpelzsherman (Michael Pelz-Sherman)
2013-12-07  2:07 ` [ruby-core:58930] " charliesome (Charlie Somerville)
2013-12-07  7:48 ` [ruby-core:58937] " hsbt (Hiroshi SHIBATA)
2013-12-08 10:56 ` [ruby-core:58967] " phasis68 (Heesob Park)
2013-12-08 12:38 ` [ruby-core:58969] [ruby-trunk - Bug #9221][Assigned] " akr (Akira Tanaka)
2013-12-09  1:34 ` [ruby-core:58979] [ruby-trunk - Bug #9221] " phasis68 (Heesob Park)
2013-12-09  1:59 ` [ruby-core:58980] " nobu (Nobuyoshi Nakada)
2013-12-09  2:43 ` [ruby-core:58984] " phasis68 (Heesob Park)
2013-12-09 15:20 ` [ruby-core:58999] [ruby-trunk - Bug #9221][Open] " nagachika (Tomoyuki Chikanaga)
2013-12-10  2:42 ` [ruby-core:59015] [ruby-trunk - Bug #9221] " headius (Charles Nutter)
2013-12-20 18:50 ` [ruby-core:59237] " nagachika (Tomoyuki Chikanaga)
2014-01-29  5:45 ` [ruby-core:60201] " usa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).