Richard, ----- Original Message ----- From: "Richard F. Rebel" <[EMAIL PROTECTED]> To: "Heikki Tuuri" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Wednesday, June 04, 2003 10:28 PM Subject: Re: RH 8.0 InnoDB: Assertion failure in thread 122911infilemem0pool.c line 477
> > Hello Heikki, > > > On Wed, 2003-06-04 at 14:29, Heikki Tuuri wrote: > > Richard, > > > hmm... maybe mysqld is reporting a wrong query in a crash. Do you have any > > BLOB (or TEXT) tables and what kind of queries you run on them? How big are > > the BLOBs if any? > > > > The hex dump looked like parts of some long CHAR or TEXT fiels. > > > > By the way, you do not have an index on 'SITE' in the table. An index might > > speed up your queries. > > Okay, I by looking at that text, I found two tables with TEXT columns > and then selected for the data that showed up in the error log. I found > the following two columns that match. > > mysql> select * from RATINGS_WHENU where FEEDBACK like '%first order was > very late%'\G > *************************** 1. row *************************** > ID: 180 > SITE: 144 > CLIENT_ID: > 3LR0ZynFKovQmeffNkvFgfzrfB/d5b49a1512559abbd41350cfa46e4a61 > STOCK: Y > NAVIGATE: Y > TIMELY: N > AGAIN: Y > CUSTOMER: Y > ENTERED_TIME: 2001-01-22 01:40:17 > FEEDBACK: first order was very late. > second, was on time. > LAST_UPDATE: 20010122014017 > MEET: Y > CONTACTED: Y > COMPLETE: Y > SELECTION: Y > PRICING: Y > 1 row in set (0.01 sec) > > mysql> select * from RATINGS_WHENU where FEEDBACK like '%TOO SLOW%'\G > *************************** 1. row *************************** > ID: 247 > SITE: 221 > CLIENT_ID: > KiAqHyjJGsvQmefvzfnrfNkrBC/1f856f57cb8bb2e77734a855460a505c > STOCK: Y > NAVIGATE: Y > TIMELY: Y > AGAIN: Y > CUSTOMER: U > ENTERED_TIME: 2001-01-29 11:43:27 > FEEDBACK: The site is just TOO SLOW. Otherwise, well done. > LAST_UPDATE: 20010129114327 > MEET: Y > CONTACTED: N > COMPLETE: U > SELECTION: Y > PRICING: N > 1 row in set (0.01 sec) > > mysql> show create table RATINGS_WHENU\G > *************************** 1. row *************************** > Table: RATINGS_WHENU > Create Table: CREATE TABLE `RATINGS_WHENU` ( > `ID` int(11) NOT NULL auto_increment, > `SITE` int(11) default NULL, > `CLIENT_ID` varchar(64) default NULL, > `STOCK` char(1) default NULL, > `NAVIGATE` char(1) default NULL, > `TIMELY` char(1) default NULL, > `AGAIN` char(1) default NULL, > `CUSTOMER` char(1) default NULL, > `ENTERED_TIME` datetime default NULL, > `FEEDBACK` text, > `LAST_UPDATE` timestamp(14) NOT NULL, > `MEET` char(1) default NULL, > `CONTACTED` char(1) default NULL, > `COMPLETE` char(1) default NULL, > `SELECTION` char(1) default NULL, > `PRICING` char(1) default NULL, > PRIMARY KEY (`ID`) > ) TYPE=InnoDB > > So perhaps mysql *is* reporting the wrong query. I was at least able to > select them out of the table above. actually, it probably is reporting the right query :). It is the TEXT column `FEEDBACK` text. TEXT is essentially the same as a BLOB. > I have exorcised the code we have that updates and interacts with this > table in order to try and cause the server to crash to no avail. > > What's next? I have added some diagnostic code to 4.0.14 which would reveal a leak in the mutex. I am also running a simulation of your workload on our SuSE Linux 4-way server. select MEET, count(*) from RATINGS_WHENU where MEET in ('N','Y') and SITE = '21' group by MEET; +------+----------+ | MEET | count(*) | +------+----------+ | N | 137 | | Y | 136 | +------+----------+ The assertions are so strange that I suspect thread stacks get corrupt. That can be a mysqld bug, an out-of-memory problem, or a Linux/glibc bug. An upgrade to Linux-2.4.20 is recommended. Also try adding that index to SITE. That changes the query plan and might mask the bug whatever it is. > Best, > > -- > Richard F. Rebel > [EMAIL PROTECTED] > t. 212.239.0000 Best regards, Heikki Tuuri Innobase Oy http://www.innodb.com Transactions, foreign keys, and a hot backup tool for MySQL Order MySQL technical support from https://order.mysql.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]