Bug #12950 | ndb backup failure if updating column with charset during backup | ||
---|---|---|---|
Submitted: | 2 Sep 2005 13:39 | Modified: | 13 Oct 2005 11:46 |
Reporter: | A M | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Cluster: Cluster (NDB) storage engine | Severity: | S2 (Serious) |
Version: | 4.1.14 | OS: | Linux (redhat ent. 3) |
Assigned to: | Jonas Oreland | CPU Architecture: | Any |
[2 Sep 2005 13:39]
A M
[2 Sep 2005 13:44]
A M
cluster log, look for backup #2
Attachment: ndb_2_cluster.log (application/octet-stream, text), 34.85 KiB.
[2 Sep 2005 13:57]
A M
regarding the updates, i am referring to row updates with pk condition. i.e. in our example: update testdata set textcol = reverse(textcol) where keycol = <id>
[7 Sep 2005 15:57]
Jonas Oreland
Hi, can you please attach the error log and trace files aswell? /Jonas
[14 Sep 2005 5:28]
Jonas Oreland
What is the load situation on the servers * with only updates running * with only backup running * with backup and updates running The cluster log speaks of missed heartbeats and the error log is watchdog timeout. Both indicate high load. But then again it might be something else :-) /Jonas
[14 Sep 2005 11:02]
A M
hi what exactly do you mean by load on the system? load average? user/system/idle? process cpu usage? would you like the output of vmstat w/ 1 sec intervals during a load test and crash? you might have a problem correlating the output with the exact second of the crash.. during the tests the system was under load (i came across the problem while running load tests), i would say some 60 transactions per second, 20 being inserts on non-indexed tables, 20 being updates on one table and 20 updates on a second table. the updates are single-row changes using a pk condition. however note that in the context of cpu load, the cpu wasnt working that hard.. i noticed an average of about 30% for both computers. by the way, the tps is the total for both computers in the cluster (i.e. the queries do not run on only one mysql in the cluster), maybe this has something to do with the problem. also, the cluster log is showing the missed heartbeats right after the backup request (and subsequent crash of the master ndb data node). note that a double digit tps is not required for the crash. if you have a backup that takes say 20 seconds, and attempt to update any ndb tables, an ndb node will crash.
[21 Sep 2005 9:50]
Jonas Oreland
I managed to reproduce this 1...on ~10 tries... working on finding out why...
[21 Sep 2005 13:08]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/internals/30150
[21 Sep 2005 13:26]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/internals/30152
[21 Sep 2005 13:33]
Jonas Oreland
Would you be willing to test the patch for this before I close the bug report? (so that I have fixed the correct bug:-))
[21 Sep 2005 13:39]
A M
i'd be happy to check the patch, but it would have to wait about a week before i could get to it.
[21 Sep 2005 14:30]
Jonas Oreland
Pushed into 4.1.15 Note the problem does not occur in 5.0 ---- I'll close this bug report. Please reopen if you find that it still fails, once you get around to test it.
[6 Oct 2005 6:36]
Jonas Oreland
ndbd could crash if there was updates of a column with charset, if a backup was running at the same time. The problem was that the backup incorrectly used charset-normalized reads for its internal triggers. This could also lead to "incorrect" data in backup (the columns being normalized, e.g aAa->AAA if charset latin_ci), if such a column was updated _during_ the backup.
[13 Oct 2005 11:46]
Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release. If necessary, you can access the source repository and build the latest available version, including the bugfix, yourself. More information about accessing the source trees is available at http://www.mysql.com/doc/en/Installing_source_tree.html Additional info: Bugfix documented in 4.1.15 changlog. Closed.
[27 Oct 2005 11:27]
A M
Checked bug on 4.1.15. Looks ok to me :)