-----BEGIN PGP SIGNED MESSAGE-----
thanks for your message!
On Tue, 2 May 2006, Tom Lane wrote:
> Has anyone else noticed serious bloat in a lot of the mysql utility
> programs from 5.0.18 to 5.0.19?
> An example is
> -rwxr-xr-x 1 root root 1166272 Mar 15 14:07 ./usr/bin/mysql_tzinfo_to_sql
> vs 5.0.18
> -rwxr-xr-x 1 root root 110880 Feb 9 15:23 ./usr/bin/mysql_tzinfo_to_sql
> It looks to me like the culprit is this change
> diff -c -r mysql-5.0.18/mysys/my_init.c mysql-5.0.21/mysys/my_init.c
> *** mysql-5.0.18/mysys/my_init.c Wed Dec 21 14:39:25 2005
> --- mysql-5.0.21/mysys/my_init.c Wed Apr 26 14:30:38 2006
> *** 152,157 ****
> --- 152,158 ----
> + free_charsets();
> if ((infoflag & MY_GIVE_INFO) || print_info)
> which causes the *entire* character set support logic and constant
> tables to be sucked into everything that calls my_init.
> I know disk space is cheap, but bandwidth not so much ... was it
> really intentional to bloat these programs an extra megabyte apiece?
> The above is probably worst case, since it's from builds with
> but I'd think that even the typical "complex" set would be most
> of this.
Thanks for pointing this out. Sergey, any comment on this? It seems like the
above change was made by you in this ChangeSet:
ChangeSet 1.1960.61.1 2005/12/01 23:43:37 SergeyV@selena.
Fixes bug #11892. When MyODBC or any other client do my_init()/my_end()
several times, it was causing corruption of charset data stored in once_mem_pool.
my_end() deallocated once_mem pool, but did not put a flag that charsets have
to be reloaded. The fix addresses this problem.
Is there maybe a better fix for that without causing the unnecessary bloat?
Lenz Grimmer <lenz@stripped>
Community Relations Manager, EMEA
MySQL GmbH, http://www.mysql.de/, Hamburg, Germany
Visit the MySQL Forge at http://forge.mysql.com/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: For info see http://quantumlab.net/pine_privacy_guard/
-----END PGP SIGNATURE-----