Bug #13905 OS limit on number of files breaks documented "raid_chunks" limits
Submitted: 10 Oct 2005 18:21 Modified: 12 Oct 2005 16:18
Reporter: Joerg Bruehe Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:4.1.15 (likely: all 4.x) OS:Other (SCO 3.2 5.0.7 i386)
Assigned to: CPU Architecture:Any

[10 Oct 2005 18:21] Joerg Bruehe
Description:
Release build of 4.1.15, tested on machine "openserv".
Test "raid" fails with this symptom:

=== cut ===
raid                           [ fail ]

Errors are (from PATH/mysqltest-time) :
mysqltest: At line NNN: query 'create table test_$1.r2 (i int) raid_type=1 raid_chunks=257' failed: 1: Can't create/write to
 file './test_$1/b0/r2.MYD' (Errcode: 24)
(the last lines may be the most important ones)

Ending Tests
=== cut ===

Testing with varying values for "raid_chunks" works for values up to and including 83,
for 84 it fails in dropping the database, for 88 it fails as shown above in the original test;
I did not check intermediate values.

Error number 24 means "EMFILE", which means on "open()":
          OPEN_MAX descriptors are open in the current process.
I could not find a setting for "OPEN_MAX", it seems to be configurable.

As a consequence of this, the created database "test_$1" is not dropped, so it will be listed in the subsequent tests "rpl000009", "rpl_create_database", and "show_check" and so make them fail.

How to repeat:
Test suite failure.

Suggested fix:
1) Change the manual to mention the (possible) OS limit.
2) Add a cleanup function after a failed test.