From: Alexander Nozdrin Date: December 22 2010 7:31am Subject: bzr commit into mysql-trunk-bugfixing branch (alexander.nozdrin:3465) Bug#59022 List-Archive: http://lists.mysql.com/commits/127482 X-Bug: 59022 Message-Id: <201012220731.oBM7J7fh025216@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4569701085987238167==" --===============4569701085987238167== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/alik/MySQL/bzr/00.build/mysql-trunk-bugfixing/ based on revid:tor.didriksen@stripped 3465 Alexander Nozdrin 2010-12-22 A patch for Bug#59022 (Valgrind warning in write_delayed() after InnoDB merge). Free allocated bitmap. modified: sql/sql_insert.cc === modified file 'sql/sql_insert.cc' --- a/sql/sql_insert.cc 2010-11-29 16:27:58 +0000 +++ b/sql/sql_insert.cc 2010-12-22 07:31:25 +0000 @@ -2423,6 +2423,12 @@ int write_delayed(THD *thd, TABLE *table */ bitmaps= (my_bitmap_map*) my_malloc(bitmap_buffer_size(table->write_set->n_bits), MYF(0)); bitmap_init(&row->write_set, bitmaps, table->write_set->n_bits, FALSE); + /* + bitmap_init() does not touch MY_BITMAP::mutex if my_bitmap_map instance + is provided. It needs to be reset, otherwise bitmap_free() will try to + destroy uninitialized mutex and crash. + */ + row->write_set.mutex= NULL; bitmap_clear_all(&row->write_set); bitmap_union(&row->write_set, table->write_set); @@ -2916,6 +2922,7 @@ bool Delayed_insert::handle_inserts(void bitmap_clear_all(table->write_set); bitmap_union(table->write_set, &row->write_set); table->file->column_bitmaps_signal(); + bitmap_free(&row->write_set); /* To get the exact auto_inc interval to store in the binlog we must not --===============4569701085987238167== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/alexander.nozdrin@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: alexander.nozdrin@stripped\ # 73ww6z6ivu53sy0g # target_branch: file:///home/alik/MySQL/bzr/00.build/mysql-trunk-\ # bugfixing/ # testament_sha1: 9b06ebd92e11c48ce22a293e0a1ad762fddbb1eb # timestamp: 2010-12-22 10:31:30 +0300 # source_branch: file:///home/alik/MySQL/bzr/mysql-trunk/ # base_revision_id: tor.didriksen@stripped\ # ri0jgqgqweybct6b # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWeG5K5YAAbDfgEAQWXf//3cn RyC////wUAQi0BY729Mx15cNBI0VP1NhDACUZ6aKeRqPTU2p6YptTynqYSUCaaMhpMgmmSTxqmBD QwIw0NAyJqbSmk9NTyTT1GnqZAeo0BkaAaNABklNPSaeiBoeoAGgAAAAACSQieqfpPRRtEZDIaPU BoDQAABAIJa6QfHcVFUsjnr9HZXRVlpkBClDRjalryAEhE6+ol22GZlx3l0Y3EgPwSljpsY34GTh euWb/UcFNiN5d2u3dPNedE/X7xs2MiUWGIWPdFgxzUSW11LbUEMEeuSCFJBc4Ssvg2Z4CM5i8Tln O3nVa5cS/zG6MI0ks0jiueD3JebQal7GJ494rcOeGKkXAhyDrxNA5mdniHBdJGJkjKLKC8imiLO2 wF62GVnUb2vonPq9BLIvFS+G/GjZFpVpjmv3OGNFG1nn4Xyw9Zbox9+rDPOFkRDBRYuyTRQEb/Db uTyF1WOE/bkpWthAZVgbO6wiXy9P5LaGKwsFXfcdRaEaTa6uBAnDu1sFQWEhzk2FjVcxiZSuGl1N mJpIwqRjMb+GhNgmDKWqHilj1hmaH+v28DElXU7McLDabqvyitVx71kcRXeUWi1RLlEXIVQ8mnIY aFZLiOjsNl5kYG6zLlYyRC+6e55N7FEbcnot4WKFkP6aLDXXVASpxsjipRji7FFSYTgPJJH36Jtw 3XUaqYjC6dmzMHGghL8HyfxGRjv/I73HMzBl7dlLh17cI++/F7DLWq6SQBOXFQ4PtpYW49i/g/XV B+yIQbZ4WAZxgD8uvfiHppQ+usAagU0ZDe6wL7JQ+Ks81Bgy22lFbPMn5dCnV+kTK7oyETjYa8GS 4BtGbga3MNVYYiEiOSJkN46y6LDNpbDw1UKyCc8OIbG8CvJYt4svBEC+620yQizZFHNQCNQPfmMw tDCxXv6xYhwQAIM5wvX2vYFdRX75Mp/7229rOfg0nwVDgmLN6Crdtgc9evlKwlFOC1bwAy1E62cQ 14LRYHRBH6X+NOitS0YCxPDT9Q1EGBwtIOKwO/8tBVS+g0FaZgYRXXc5wFxlchIMfnMUWdfEjbSo eLEp0EimhmA4wnC2bmVOnNgvYQ0T1glsladnRdoFbLXMy5Cx5tybcJYguVO6ZQvg9wPTQikMd+cD ow0H73OkedIn2I3KzlsuK7ZejpbElJvS4c5qtDYmpNfFOQwBrnLv5EqvGe7qtmlrGITQxiYsszMl pHpvBW8WLrgXXLxSGA1ehqvy1dEPfBLcZdiaFvBEKOB6yyk4tb0QaWESFGS0PqKgQhJio/oQsh+C 2o4Xc0z9nJFMlgq3/zvtzPzR8wk1rWsG9dH6vf6VngpwTA1SQcBLxn0+SPpVROL84CpnHMDRdVS4 lwlbS7do2g4aClbcPAbBdR1OssFYUhwp2AKDBFwwixjfzA7l2R7u7DYMNlKY967YXZKe0IlROO0V /RNbO8b7DiL1VJGwVOWqXSJsVihQsDuU2hPxkQJKRHmP8XckU4UJDhuSuWA= --===============4569701085987238167==--