List:General Discussion« Previous MessageNext Message »
From:Michael Widenius Date:October 7 1999 1:19am
Subject:Filesize on Solaris 7 X86
View as plain text  
>>>>> "Thierack" == Thierack Ingo <thierack@stripped> writes:

Thierack> Hello,
Thierack> if i create a table with the new MYISAM the filesize is limited to 2GB (with
> option 
Thierack> "MAX_ROWS=13000000 AVG_ROW_LENGTH=1900").

Thierack> with old ISAM i can create tables  with more then 4 GB without problems.

Thierack> How can i get more then 2GB filesize with MYISAM-Tables.


Thierack> System : Solaris 7 x86
Thierack> Compiler : gcc-2.95.1
Thierack> Mysql : 3.23.4-alpha

Hi!

Note that the old ISAM will not work properly with tables > 4G
(It only uses a 4 byte pointer to data)

There seams to be a bug in the new MyISAM when it reports the maxiumn
data file length, but it creates the table ok!

Here is a test of this:

mysql> create table t1 (a int, b blob) MAX_ROWS=13000000 AVG_ROW_LENGTH=1900;
Query OK, 0 rows affected (0.17 sec)

mysql> show table status like "t1";
+------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+---------------------------------------+---------+
| Name | Type   | Row_format | Rows | Avg_row_length | Data_length | Max_data_length |
Index_length | Data_free | Auto_increment | Create_time         | Update_time         |
Check_time | Create_options                        | Comment |
+------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+---------------------------------------+---------+
| t1   | MYISAM | Dynamic    |    0 |              0 |           0 |      4294967295 |    
    1024 |         0 |           NULL | 1999-10-07 01:59:21 | 1999-10-07 01:59:21 | NULL  
    | max_rows=13000000 avg_row_length=1900 |         |
+------+--------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+---------------------------------------+---------+

$shell myisamchk -dv t1

MYISAM file:         t1
Record format:       Packed
File-version:        1
Creation time:       1999-10-07  1:59:21
Status:              checked
Data records:                    0  Deleted blocks:                 0
Datafile parts:                  0  Deleted data:                   0
Datafile pointer (bytes):        5  Keyfile pointer (bytes):        3
Datafile length:                 0  Keyfile length:              1024
Max datafile length: 1099511627774  Max keyfile length:   17179868159
Recordlength:                   15

table description:
Key Start Len Index   Type                     Rec/key         Root  Blocksize

As you can see, the 'Max datafile length' is big enough.

I have fixed the output of 'show table status' for the next MySQL release.

Regards,
Monty
Thread
Filesize on Solaris 7 X86Michael Widenius7 Oct