[#23657] [Bug #1550] String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes — Run Paint Run Run <redmine@...>

Bug #1550: String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes

13 messages 2009/06/01

[#23729] [Bug #1583] Time + String no Longer Raises TypeError? — Run Paint Run Run <redmine@...>

Bug #1583: Time + String no Longer Raises TypeError?

14 messages 2009/06/05

[#23770] [Bug #1595] rake unusable on windows install — Robert Gonzalez <redmine@...>

Bug #1595: rake unusable on windows install

10 messages 2009/06/09

[#23869] [Bug #1640] [PATCH] Documentation for the Rational Class — Run Paint Run Run <redmine@...>

Bug #1640: [PATCH] Documentation for the Rational Class

12 messages 2009/06/16

[#23903] [Bug #1648] Rational#div Raises NoMethodError for Invalid Argument — Run Paint Run Run <redmine@...>

Bug #1648: Rational#div Raises NoMethodError for Invalid Argument

9 messages 2009/06/17

[#23977] [ANN] meeting log of RubyDeveloperKaigi20090622 — "Yugui (Yuki Sonoda)" <yugui@...>

Hi,

41 messages 2009/06/23
[#23979] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Run Paint Run Run <runrun@...> 2009/06/23

Thanks for the update. :-)

[#24173] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — "NARUSE, Yui" <naruse@...> 2009/07/07

Sorry for late response,

[#24174] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Luis Lavena <luislavena@...> 2009/07/07

On Tue, Jul 7, 2009 at 12:12 AM, NARUSE, Yui<naruse@airemix.jp> wrote:

[#24242] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Charles Oliver Nutter <headius@...> 2009/07/09

On Mon, Jul 6, 2009 at 10:18 PM, Luis Lavena<luislavena@gmail.com> wrote:

[#24010] [Bug #1685] Some windows unicode path issues remain — B Kelly <redmine@...>

Bug #1685: Some windows unicode path issues remain

26 messages 2009/06/24
[#29189] [Bug #1685] Some windows unicode path issues remain — Yuki Sonoda <redmine@...> 2010/04/01

Issue #1685 has been updated by Yuki Sonoda.

[#29200] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/01

Yuki Sonoda wrote:

[#29892] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/29

Hi,

[#24058] [Bug #1696] http downloads are unuseably slow — Steven Hartland <redmine@...>

Bug #1696: http downloads are unuseably slow

19 messages 2009/06/27

[#24063] [Feature #1697] Object#<=> — Marc-Andre Lafortune <redmine@...>

Feature #1697: Object#<=>

15 messages 2009/06/28

[ruby-core:23969] Re: [Bug #1677] memory leak in DBD-mysql

From: Heesob Park <phasis@...>
Date: 2009-06-22 13:54:31 UTC
List: ruby-core #23969
2009/6/22 Qi Lu <redmine@ruby-lang.org>:
> Bug #1677: memory leak in DBD-mysql
> http://redmine.ruby-lang.org/issues/show/1677
>
> Author: Qi Lu
> Status: Open, Priority: Normal
> ruby -v: 1.8.6
>
> I found a serious memory leak in my Ruby code, then I narrow it down and =
found that there is leak in dbd-mysql. The ruby version is 1.8.6 and dbd-my=
sql is 0.4.2. it wrote a test code and run in windows XP/Vista/2003, it lea=
ks in all OS, about 3M/day. Here is my test code:
>
> require 'dbi'
>
> connection =3D DBI.connect("DBI:Mysql:localhost;database=3Dleaktest;port=
=3D3306, leaktest, kael4")
>
> i =3D 1
> name =3D 'test'
> while true do
> =C2=A0value =3D name + i.to_s
> =C2=A0sql =3D "insert into test (name) values ('#{value}');"
> =C2=A0sth =3D connection.execute(sql)
> =C2=A0sleep 0.5
> =C2=A0sth.finish
> =C2=A0sleep 0.5
> =C2=A0i +=3D 1
> end
>
> make sure to setup database, here are the statement:
>
> mysql> create database leaktest;
> mysql> create table test ( ID int(11) NOT NULL auto_increment, name varch=
ar(20) not nul
> l, CONSTRAINT PK_test_id PRIMARY KEY (ID) );
> mysql> grant select,update,insert,delete,execute,create,drop,alter on Sky=
Msgs.* to SkyM
> sgs@localhost identified by 'MsgsSky';
>
> This test only do simply insertion operation in MySQL.
>
I have no idea about the memory leak in this case. Just an advice.
Since your code is processing statements that return no result set,
sth.finish is meaning less. You should use #do instead of #execute
like this:

 while true do
  value =3D name + i.to_s
  sql =3D "insert into test (name) values ('#{value}');"
  connection.do(sql)
  sleep 1
  i +=3D 1
 end

Regards,

Park Heesob

In This Thread