Re: Table is full error

2003-09-05 Thread Denis Mercier

 try this link  http://jeremy.zawodny.com/blog/archives/000796.html
 setting avg_row_length at 50 worked for me I tested and got
 mytable up to 9GB, (large table with variable size records )
 
 the only reason I could see that it would matter to have an accurate
 value for the avg_row_length would be if mysqld uses that value to make
 reads and writes faster. 
 I too would like to know more, mysqld is fast, I would hate to slow it
 down in any way if it could be prevented.
 
 
 On Thu, 2003-09-04 at 17:02, [EMAIL PROTECTED] wrote:
  
  I'm not too familiar with this.. someone else today used the value 50,
  when in fact based on their avg_row_length being reported as:
  
  Avg_row_length: 2257832
  
  Your average row length is reported as:
  
   Avg_row_length =   20564
  
  From:  http://www.mysql.com/doc/en/CREATE_TABLE.html
  
  AVG_ROW_LENGTH  An approximation of the average row length for your table.
  You only need to set this for large tables with variable size records.
  
  So if you are using a fixed length records, you don't need this..
  otherwise. my best guess is use say: 22000  ??
  
  If someone else has more experience with this issue, please toll in and
  make a suggestion based on the above values...
  
  
  On Thu, 4 Sep 2003, Keith Bussey wrote:
  
   Thanks I will make new tables and transfer the data over =)
  
   Just wodnering though, any advice on how to tell what to set AVG_ROW_LENGTH to ?
  
   --
   Keith Bussey
  
   Wisol, Inc.
   Chief Technology Manager
   (514) 398-9994 ext.225
  
  
   Quoting [EMAIL PROTECTED]:
  
   
On Thu, 4 Sep 2003, Keith Bussey wrote:
 Running that shows me the following:

 mysql SHOW TABLE STATUS FROM email_tracking LIKE 'email_body_old';

   
   ++++++-+-+--+---++-+-+-++-+
 | 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 |

   
   ++++++-+-+--+---++-+-+-++-+
 | email_body_old | MyISAM | Dynamic| 208853 |  20564 |
4294967292 |
  4294967295 |  1820672 | 0
 | 450438 | 2002-10-21 11:58:24 | 2003-08-31 01:01:41 | 2002-11-30
 01:41:00 || |

   
   ++++++-+-+--+---++-+-+-++-+
 1 row in set (0.00 sec)
   
   
There's your problem...   your 3 bytes off your max_data_length .. which
is giving the table full error
   
Check:  http://www.mysql.com/doc/en/Full_table.html   at the bottom for
help to alter table to keep growing
   
   
  
  
  -- 
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
  
 
 



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Table is full error

2003-09-04 Thread Keith Bussey
Hey all, I have a table with the following size:

-rw-rw   1 mysqlmysql4.0G Aug 31 01:01 email_body.MYD

Thus if I try and insert one more row I get the error:

ERROR 1114: The table 'email_body' is full


Now I'm wondering why this is and if there is any options ot increase max table
size ? I have other databases on other servers with much larger tables without
problem. I'm running MySQL-standard 4.0.13 on FreeBSD 4.8-Stable

Thanks!

-- 
Keith Bussey

Wisol, Inc.
Chief Technology Manager
(514) 398-9994 ext.225




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith Bussey
I'm not sure it has to do with the number of rows, but in any case this is what
happened:

mysql select count(*) from email_body;
+--+
| count(*) |
+--+
|   208853 |
+--+
1 row in set (0.00 sec)
 
mysql alter table email_body MAX_ROWS=70;
Query OK, 315 rows affected (0.23 sec)
Records: 315  Duplicates: 0  Warnings: 0

mysql select count(*) from email_body;
+--+
| count(*) |
+--+
|  319 |
+--+
1 row in set (0.00 sec)


Your suggestion seemed to wipe out my rows ! (s'ok I got a backup ;p)


-- 
Keith Bussey

Wisol, Inc.
Chief Technology Manager
(514) 398-9994 ext.225


Quoting Keith C. Ivey [EMAIL PROTECTED]:

 On 4 Sep 2003 at 10:13, Keith Bussey wrote:
 
  -rw-rw   1 mysqlmysql4.0G Aug 31 01:01 email_body.MYD
  
  Thus if I try and insert one more row I get the error:
  
  ERROR 1114: The table 'email_body' is full
 
 By default, MyISAM tables use 4-byte pointers to indicate positions 
 in the data file.  So if your data file gets bigger than 4 GB (or 
 larger for fixed-length records, but that's not what you have), you 
 get that error:
 
 http://www.mysql.com/doc/en/Full_table.html
 
 Figure out how many records you're likely to need and do
 
 ALTER TABLE email_body MAX_ROWS=whatever;
 
 -- 
 Keith C. Ivey [EMAIL PROTECTED]
 Tobacco Documents Online
 http://tobaccodocuments.org
 
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith C. Ivey
On 4 Sep 2003 at 10:13, Keith Bussey wrote:

 -rw-rw   1 mysqlmysql4.0G Aug 31 01:01 email_body.MYD
 
 Thus if I try and insert one more row I get the error:
 
 ERROR 1114: The table 'email_body' is full

By default, MyISAM tables use 4-byte pointers to indicate positions 
in the data file.  So if your data file gets bigger than 4 GB (or 
larger for fixed-length records, but that's not what you have), you 
get that error:

http://www.mysql.com/doc/en/Full_table.html

Figure out how many records you're likely to need and do

ALTER TABLE email_body MAX_ROWS=whatever;

-- 
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith C. Ivey
On 4 Sep 2003 at 10:53, Keith Bussey wrote:

 Your suggestion seemed to wipe out my rows ! (s'ok I got a backup ;p)

Yikes!  Are you running into any file system limits?  Have you dealt 
with files larger than 4 GB on that server before with no problems?  
If not, you may have run into a MySQL bug of some sort.

An alternative way to get the table to have 5-byte pointers would be 
to create the new table (same CREATE TABLE query as for the old 
structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the 
end) and then copy all the records into it:

   INSERT INTO email_body_NEW SELECT * FROM email_body;

Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't 
matter, as long as their product is between 2**32 and 2**40 - 1.

-- 
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: Table is full error

2003-09-04 Thread Denis Mercier
I also had table is full error, today
actually.
  
mysql alter table mytable max_rows = 2000 avg_row_length=50;

mysql show table status like 'mytable' \G
*** 1. row ***
   Name: mytable
   Type: MyISAM
 Row_format: Dynamic
   Rows: 157
 Avg_row_length: 2257832
Data_length: 354479668
Max_data_length: 1099511627775
   Index_length: 3072
  Data_free: 0
 Auto_increment: NULL
Create_time: 2003-09-04 12:17:56
Update_time: 2003-09-04 12:18:09
 Check_time: NULL
 Create_options: max_rows=4294967295 avg_row_length=50
Comment:
1 row in set (0.03 sec)

this fixed my problem.
  


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Colbey

Most likely it's the 4GB OS limitation...   My suggestion is to create a
new table using mysql's built in raid option... span the table over
multiple files to allow of much larger table growth...

migrate all the rows over to the new spanned table..



On Thu, 4 Sep 2003, Keith C. Ivey wrote:

 On 4 Sep 2003 at 10:53, Keith Bussey wrote:

  Your suggestion seemed to wipe out my rows ! (s'ok I got a backup ;p)

 Yikes!  Are you running into any file system limits?  Have you dealt
 with files larger than 4 GB on that server before with no problems?
 If not, you may have run into a MySQL bug of some sort.

 An alternative way to get the table to have 5-byte pointers would be
 to create the new table (same CREATE TABLE query as for the old
 structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the
 end) and then copy all the records into it:

INSERT INTO email_body_NEW SELECT * FROM email_body;

 Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't
 matter, as long as their product is between 2**32 and 2**40 - 1.

 --
 Keith C. Ivey [EMAIL PROTECTED]
 Tobacco Documents Online
 http://tobaccodocuments.org


 --
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith Bussey
I do have another Database on the same machine which has a table that is a lot
bigger (about 9 GIGs) and it wasn't created with any of the special table
options suggested by Keith C. Ivey below.

The difference is this table has many more fields, while the email_body one (the
one with the problem) as only 2:

an ID autonumber field, and a text field.

Perhaps there is some bug/limitation in Mysql whereby a field can only have so
much size ??

-- 
Keith Bussey

Wisol, Inc.
Chief Technology Manager
(514) 398-9994 ext.225


Quoting Colbey [EMAIL PROTECTED]:

 
 Most likely it's the 4GB OS limitation...   My suggestion is to create a
 new table using mysql's built in raid option... span the table over
 multiple files to allow of much larger table growth...
 
 migrate all the rows over to the new spanned table..
 
 
 
 On Thu, 4 Sep 2003, Keith C. Ivey wrote:
 
  On 4 Sep 2003 at 10:53, Keith Bussey wrote:
 
   Your suggestion seemed to wipe out my rows ! (s'ok I got a backup ;p)
 
  Yikes!  Are you running into any file system limits?  Have you dealt
  with files larger than 4 GB on that server before with no problems?
  If not, you may have run into a MySQL bug of some sort.
 
  An alternative way to get the table to have 5-byte pointers would be
  to create the new table (same CREATE TABLE query as for the old
  structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the
  end) and then copy all the records into it:
 
 INSERT INTO email_body_NEW SELECT * FROM email_body;
 
  Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't
  matter, as long as their product is between 2**32 and 2**40 - 1.
 
  --
  Keith C. Ivey [EMAIL PROTECTED]
  Tobacco Documents Online
  http://tobaccodocuments.org
 
 
  --
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
 
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Colbey

Hrm..   interesting.. I know I've personally hit the 4gb limit before and
had to do a fix for it.. but never hit an internal tablesize limitation..

You didn't mention what version of mysql your running...

Also if the table has alot of columns and 1 of more of those columns has
alot of data, perhaps considering looking at normalizing the table into a
few?  Could potentially speed up operations..

Not the easy fix your looking for but a thought...

Try running:  SHOW TABLE STATUS FROM database LIKE 'table_name';

It will check the max index/data sizes mysql is configured/allocated
for...



On Thu, 4 Sep 2003, Keith Bussey wrote:

 I do have another Database on the same machine which has a table that is a lot
 bigger (about 9 GIGs) and it wasn't created with any of the special table
 options suggested by Keith C. Ivey below.

 The difference is this table has many more fields, while the email_body one (the
 one with the problem) as only 2:

 an ID autonumber field, and a text field.

 Perhaps there is some bug/limitation in Mysql whereby a field can only have so
 much size ??

 --
 Keith Bussey

 Wisol, Inc.
 Chief Technology Manager
 (514) 398-9994 ext.225


 Quoting Colbey [EMAIL PROTECTED]:

 
  Most likely it's the 4GB OS limitation...   My suggestion is to create a
  new table using mysql's built in raid option... span the table over
  multiple files to allow of much larger table growth...
 
  migrate all the rows over to the new spanned table..
 
 
 
  On Thu, 4 Sep 2003, Keith C. Ivey wrote:
 
   On 4 Sep 2003 at 10:53, Keith Bussey wrote:
  
Your suggestion seemed to wipe out my rows ! (s'ok I got a backup ;p)
  
   Yikes!  Are you running into any file system limits?  Have you dealt
   with files larger than 4 GB on that server before with no problems?
   If not, you may have run into a MySQL bug of some sort.
  
   An alternative way to get the table to have 5-byte pointers would be
   to create the new table (same CREATE TABLE query as for the old
   structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the
   end) and then copy all the records into it:
  
  INSERT INTO email_body_NEW SELECT * FROM email_body;
  
   Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't
   matter, as long as their product is between 2**32 and 2**40 - 1.
  
   --
   Keith C. Ivey [EMAIL PROTECTED]
   Tobacco Documents Online
   http://tobaccodocuments.org
  
  
   --
   MySQL General Mailing List
   For list archives: http://lists.mysql.com/mysql
   To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
  
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith C. Ivey
On 4 Sep 2003 at 15:31, Keith Bussey wrote:

 I do have another Database on the same machine which has a table that
 is a lot bigger (about 9 GIGs) and it wasn't created with any of the
 special table options suggested by Keith C. Ivey below.

Does the other table have fixed-length records (no VARCHAR, TEXT, or 
BLOB columns)?  If so, the numbers for the pointers are in records, 
not bytes, so the table can reach 2**32 - 1 records before it's full. 
You can see what the maximum data length is with SHOW TABLE STATUS.

For teh email_boy table, do you have any index other than the one for 
the primary key?  The .MYI file isn't getting big, is it?

-- 
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith Bussey
Quoting Colbey [EMAIL PROTECTED]:

 Hrm..   interesting.. I know I've personally hit the 4gb limit before and
 had to do a fix for it.. but never hit an internal tablesize limitation..
 
 You didn't mention what version of mysql your running...

I mentioned in my original email ;p.4.0.13-standard

  Also if the table has alot of columns and 1 of more of those columns has
 alot of data, perhaps considering looking at normalizing the table into a
 few?  Could potentially speed up operations..

The table with a lot of columns (by alot I mean like 25 or so) is running great,
it just has millions of records...but there are no text fields in it, there are
fields that link to tables with id-text_field.

The problem is one of these tables (2 column table) with ID - text_field.

 Not the easy fix your looking for but a thought...
 
 Try running:  SHOW TABLE STATUS FROM database LIKE 'table_name';
 
 It will check the max index/data sizes mysql is configured/allocated
 for...

Running that shows me the following:

mysql SHOW TABLE STATUS FROM email_tracking LIKE 'email_body_old';
++++++-+-+--+---++-+-+-++-+
| 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 |
++++++-+-+--+---++-+-+-++-+
| email_body_old | MyISAM | Dynamic| 208853 |  20564 |  4294967292 |
 4294967295 |  1820672 | 0
| 450438 | 2002-10-21 11:58:24 | 2003-08-31 01:01:41 | 2002-11-30
01:41:00 || |
++++++-+-+--+---++-+-+-++-+
1 row in set (0.00 sec)



 On Thu, 4 Sep 2003, Keith Bussey wrote:
 
  I do have another Database on the same machine which has a table that is a
 lot
  bigger (about 9 GIGs) and it wasn't created with any of the special table
  options suggested by Keith C. Ivey below.
 
  The difference is this table has many more fields, while the email_body one
 (the
  one with the problem) as only 2:
 
  an ID autonumber field, and a text field.
 
  Perhaps there is some bug/limitation in Mysql whereby a field can only have
 so
  much size ??
 
  --
  Keith Bussey
 
  Wisol, Inc.
  Chief Technology Manager
  (514) 398-9994 ext.225
 
 
  Quoting Colbey [EMAIL PROTECTED]:
 
  
   Most likely it's the 4GB OS limitation...   My suggestion is to create a
   new table using mysql's built in raid option... span the table over
   multiple files to allow of much larger table growth...
  
   migrate all the rows over to the new spanned table..
  
  
  
   On Thu, 4 Sep 2003, Keith C. Ivey wrote:
  
On 4 Sep 2003 at 10:53, Keith Bussey wrote:
   
 Your suggestion seemed to wipe out my rows ! (s'ok I got a backup
 ;p)
   
Yikes!  Are you running into any file system limits?  Have you dealt
with files larger than 4 GB on that server before with no problems?
If not, you may have run into a MySQL bug of some sort.
   
An alternative way to get the table to have 5-byte pointers would be
to create the new table (same CREATE TABLE query as for the old
structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the
end) and then copy all the records into it:
   
   INSERT INTO email_body_NEW SELECT * FROM email_body;
   
Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't
matter, as long as their product is between 2**32 and 2**40 - 1.
   
--
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org
   
   
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:   
 http://lists.mysql.com/[EMAIL PROTECTED]
   
  
 
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith Bussey
Quoting Keith C. Ivey [EMAIL PROTECTED]:

 On 4 Sep 2003 at 15:31, Keith Bussey wrote:
 
  I do have another Database on the same machine which has a table that
  is a lot bigger (about 9 GIGs) and it wasn't created with any of the
  special table options suggested by Keith C. Ivey below.
 
 Does the other table have fixed-length records (no VARCHAR, TEXT, or 
 BLOB columns)?  If so, the numbers for the pointers are in records, 
 not bytes, so the table can reach 2**32 - 1 records before it's full. 
 You can see what the maximum data length is with SHOW TABLE STATUS.
 
 For teh email_boy table, do you have any index other than the one for 
 the primary key?  The .MYI file isn't getting big, is it?

The MYI for that table is 1.7M, and no the text field isn't indexed

Other table has all fixed-length records except 2 varchar fields

Thus, if I understand right, then because the field is text it uses more
pointers than a larger table that has no text fields (in my case atleast) ?


 
 -- 
 Keith C. Ivey [EMAIL PROTECTED]
 Tobacco Documents Online
 http://tobaccodocuments.org
 
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith C. Ivey
On 4 Sep 2003 at 16:10, Keith Bussey wrote:

 The MYI for that table is 1.7M, and no the text field isn't indexed
 
 Other table has all fixed-length records except 2 varchar fields
 
 Thus, if I understand right, then because the field is text it uses
 more pointers than a larger table that has no text fields (in my case
 atleast) ?

No, as I understand it, any MyISAM table with dynamic records should 
give the table full error when it reaches 4 GB, if it was created 
without specifying MAX_ROWS or AVG_ROW_LENGTH.  If your other table 
doesn't have fixed-length records and was created without specifying 
either of those options, then I don't know how it got to 9 GB (unless 
maybe it doesn't have any indexes?).  What does the output from SHOW 
TABLE STATUS and SHOW CREATE TABLE look like for it (not that that's 
likely to help with solving the problem for your other table)?

-- 
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread colbey

On Thu, 4 Sep 2003, Keith Bussey wrote:
 Running that shows me the following:

 mysql SHOW TABLE STATUS FROM email_tracking LIKE 'email_body_old';
 ++++++-+-+--+---++-+-+-++-+
 | 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 |
 ++++++-+-+--+---++-+-+-++-+
 | email_body_old | MyISAM | Dynamic| 208853 |  20564 |  4294967292 |
  4294967295 |  1820672 | 0
 | 450438 | 2002-10-21 11:58:24 | 2003-08-31 01:01:41 | 2002-11-30
 01:41:00 || |
 ++++++-+-+--+---++-+-+-++-+
 1 row in set (0.00 sec)


There's your problem...   your 3 bytes off your max_data_length .. which
is giving the table full error

Check:  http://www.mysql.com/doc/en/Full_table.html   at the bottom for
help to alter table to keep growing


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread Keith C. Ivey
On 4 Sep 2003 at 16:54, Keith Bussey wrote:

 Thanks I will make new tables and transfer the data over =)
 
 Just wodnering though, any advice on how to tell what to set
 AVG_ROW_LENGTH to ?

Eh?  Isn't that was I was saying 5.5 hours ago?  This isn't anything 
new.  Here's the message again in case it got lost somewhere:

 Begin quoted text 
On 4 Sep 2003 at 10:53, Keith Bussey wrote:

 Your suggestion seemed to wipe out my rows ! (s'ok I got a backup 
 ;p)

Yikes!  Are you running into any file system limits?  Have you dealt 
with files larger than 4 GB on that server before with no problems?  
If not, you may have run into a MySQL bug of some sort.

An alternative way to get the table to have 5-byte pointers would be 
to create the new table (same CREATE TABLE query as for the old 
structure, except add MAX_ROWS=70 AVG_ROW_LENGTH=2 to the 
end) and then copy all the records into it:

   INSERT INTO email_body_NEW SELECT * FROM email_body;

Actually, the exact figures for MAX_ROWS and AVG_ROW_LENGTH shouldn't 
matter, as long as their product is between 2**32 and 2**40 - 1.
 End quoted text 

-- 
Keith C. Ivey [EMAIL PROTECTED]
Tobacco Documents Online
http://tobaccodocuments.org


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Table is full error

2003-09-04 Thread colbey

I'm not too familiar with this.. someone else today used the value 50,
when in fact based on their avg_row_length being reported as:

Avg_row_length: 2257832

Your average row length is reported as:

 Avg_row_length =   20564

From:  http://www.mysql.com/doc/en/CREATE_TABLE.html

AVG_ROW_LENGTH  An approximation of the average row length for your table.
You only need to set this for large tables with variable size records.

So if you are using a fixed length records, you don't need this..
otherwise. my best guess is use say: 22000  ??

If someone else has more experience with this issue, please toll in and
make a suggestion based on the above values...


On Thu, 4 Sep 2003, Keith Bussey wrote:

 Thanks I will make new tables and transfer the data over =)

 Just wodnering though, any advice on how to tell what to set AVG_ROW_LENGTH to ?

 --
 Keith Bussey

 Wisol, Inc.
 Chief Technology Manager
 (514) 398-9994 ext.225


 Quoting [EMAIL PROTECTED]:

 
  On Thu, 4 Sep 2003, Keith Bussey wrote:
   Running that shows me the following:
  
   mysql SHOW TABLE STATUS FROM email_tracking LIKE 'email_body_old';
  
 
 ++++++-+-+--+---++-+-+-++-+
   | 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 |
  
 
 ++++++-+-+--+---++-+-+-++-+
   | email_body_old | MyISAM | Dynamic| 208853 |  20564 |
  4294967292 |
4294967295 |  1820672 | 0
   | 450438 | 2002-10-21 11:58:24 | 2003-08-31 01:01:41 | 2002-11-30
   01:41:00 || |
  
 
 ++++++-+-+--+---++-+-+-++-+
   1 row in set (0.00 sec)
 
 
  There's your problem...   your 3 bytes off your max_data_length .. which
  is giving the table full error
 
  Check:  http://www.mysql.com/doc/en/Full_table.html   at the bottom for
  help to alter table to keep growing
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Table is full error ... but it isn't ... how to troubleshoot?

2002-06-25 Thread Michael Jessop

I am getting a table is full error but a show table status on the table specified in 
the error, which I assume is a temporary table, comes back as the empty set.

I did the same for the two tables being merged and they are way under the limit as far 
as pointer size and table size (both having avg. size rows of under 100 bytes - one 
having 700 rows, the other having 700,000 rows).

I am guessing it is my union query...  I want to union the two tables but leave off 
one of the fields (because they will be unique in the two tables and I do not want the 
union to key off that)... my syntax is probably illegal or something...

Here is the error...

C:\Documents and Settings\mjessop\My Documents\Python Development\Catalogbuild_
catalog.py
Traceback (most recent call last):
  File C:\Documents and Settings\mjessop\My Documents\Python Development\Catalo
g\catalog_gui.py, line 294, in on_run_step_five
self.run_step_five()
  File C:\Documents and Settings\mjessop\My Documents\Python Development\Catalo
g\catalog_gui.py, line 266, in run_step_five
self.catalog_process.merge_works()
  File C:\Documents and Settings\mjessop\My Documents\Python Development\Catalo
g\catalog_model.py, line 542, in merge_works
status = cur.execute(sql)
  File C:\Python22\Lib\site-packages\MySQLdb\cursors.py, line 61, in execute
r = self._query(query)
  File C:\Python22\Lib\site-packages\MySQLdb\cursors.py, line 168, in _query
rowcount = self._BaseCursor__do_query(q)
  File C:\Python22\Lib\site-packages\MySQLdb\cursors.py, line 112, in __do_que
ry
db.query(q)
_mysql_exceptions.OperationalError: (1114, The table '#sql360_1e_0' is full)

Here is the sql...

sql = insert into merged_works  +
(wrk_inst, sinker, trs_inst, aas_inst, title, pub_name)  + \
select w.wrk_inst, w.sinker, w.trs_inst, w.aas_inst, w.title, w.pub_name  + \
from works w union all  + \
select wk.wrk_inst, wk.sinker, wk.trs_inst, wk.aas_inst, wk.title, wk.pub_name  + \
from worksets wk left join works w2  + \
on wk.wrk_inst = w2.wrk_inst  + \
where w2.wrk_inst is null  + \
order by sinker asc, title asc

Thank you.

+++-+++--+++
+ Michael S. Jessop+
| Senior Web Developer |
+ Copyright Clearance Center, Inc. +
+++-+++--+++

-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php