Bug #35733 | main.symlink.test fails | ||
---|---|---|---|
Submitted: | 1 Apr 2008 9:01 | Modified: | 20 May 2008 23:14 |
Reporter: | Alexander Nozdrin | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Tests | Severity: | S7 (Test Cases) |
Version: | 6.0 | OS: | Any |
Assigned to: | Dmitry Lenev | CPU Architecture: | Any |
[1 Apr 2008 9:01]
Alexander Nozdrin
[7 Apr 2008 7:52]
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/commits/44972 ChangeSet@1.2620, 2008-04-07 11:53:00+04:00, dlenev@mockturtle.local +1 -0 Tentative fix for bug #35733 "main.symlink.test fails". The problem was that symlink.test failed due to debug assertions or due to errors emitted for wrong statements (in non-debug builds) if server was run with --thread-handling=pool-of-threads option. The above problems were caused by that on the one hand code mi_create() which handles case when error is returned relies on my_errno being set to appropriate non-0 value, but on the other it has not done this in case when error was emitted due to discovery that share for table which we are going to create is already present in the list of open shares. Running server with pool-of-threads option just exposed this bug since in this scheduler mode my_errno is reset to 0 when connection (THD) is reattached to the "real" thread. This fix ensures that code in mi_create() properly sets my_errno in the case described above. Question to reviewers are marked by QQ. QQ: Does it make sense to push this fix to 5.0/5.1 (IMO yes)?
[7 Apr 2008 9:00]
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/commits/44977 ChangeSet@1.2584, 2008-04-07 12:59:57+04:00, dlenev@mockturtle.local +1 -0 Fix for bug #35733 "main.symlink.test fails". The problem was that symlink.test failed due to debug assertions or due to errors emitted for wrong statements (in non-debug builds) if 6.0 version of server was run with --thread-handling=pool-of-threads option. The above problems were caused by that on the one hand code mi_create() which handles case when error is returned relies on my_errno being set to appropriate non-0 value, but on the other it has not done this in case when error was emitted due to discovery that share for table which we are going to create is already present in the list of open shares. Running server with pool-of-threads option just exposed this bug since in this scheduler mode my_errno is reset to 0 when connection (THD) is reattached to the "real" thread. This fix ensures that code in mi_create() properly sets my_errno in the case described above. Since original reason that caused this bug to be exposed in 6.0 tree might also under very special conditions lead to incorrect behavior of earlier versions of server (i.e. to errors emitted for wrong statements) this patch is also being pushed into 5.1 tree. No test case is present as this code is already covered by a test case + pushbuild options combination in 6.0.
[20 Apr 2008 13:00]
Bugs System
Pushed into 6.0.6-alpha
[22 Apr 2008 13:46]
Paul DuBois
Noted in 6.0.6 changelog. An incorrect error and message was produced for attempts to create a MyISAM table with an index (.MYI) filename that was already in use by some other MyISAM table that was open at the same time. For example, this might happen if you use the same value of the INDEX DIRECTORY table option for tables belonging to different databases. Resetting report to PQ waiting for push into 5.1.x.
[20 May 2008 21:22]
Bugs System
Pushed into 5.1.25-rc
[20 May 2008 23:14]
Paul DuBois
Noted in 5.1.25 changelog.
[28 Jul 2008 16:54]
Bugs System
Pushed into 5.1.25-rc (revid:sp1r-kostja@bodhi.(none)-20080520073817-17550) (version source revid:sp1r-kostja@bodhi.(none)-20080520073817-17550) (pib:3)