Comment 6 for bug 607946

Revision history for this message
Monty Taylor (mordred) wrote : Re: [Bug 607946] Re: Crash / assertion failed in drizzled::Cursor::ha_reset (this=0x7ffbbc004ac8) at drizzled/cursor.cc:1455

EXCELLENT. thanks for the bug ... looking forward to figuring out what's
going on there!

On 10/01/2010 01:02 PM, Jason Belich wrote:
> I'm getting this same error by slamming my local drizzle
> (2010.09.1802-1ubuntu1~lucid1 debian package) instance with a couple
> million of this query (in php using PDO_Mysql) :
>
> INSERT INTO audit_count (database_name, table_name, column_name,
> html_count, xss_count ) VALUES (?,?,?,?,?) ON DUPLICATE KEY UPDATE
> html_count = html_count + ?, xss_count = xss_count + ?
>
> And the table structure is this:
>
> CREATE TABLE IF NOT EXISTS `audit_count` (
> `database_name` CHAR(64),
> `table_name` CHAR(64),
> `column_name` CHAR(64),
> `html_count` integer,
> `xss_count` integer,
> PRIMARY KEY (
> `database_name`,
> `table_name`,
> `column_name`
> )
> );
>
> And here is the error i'm getting out of the stderr:
>
> drizzled: drizzled/cursor.cc:1460: int drizzled::Cursor::ha_reset(): Assertion `table->getShare()->all_set.isSetAll()' failed.
> 101001 10:42:51 - drizzled got signal 6;
> This could be because you hit a bug. It is also possible that this binary
> or one of the libraries it was linked against is corrupt, improperly built,
> or misconfigured. This error can also be caused by malfunctioning hardware.
> We will try our best to scrape up some info that will hopefully help diagnose
> the problem, but since we have already crashed, something is definitely wrong
> and this may fail.
>
> read_buffer_size=131072
> max_used_connections=6
> connection_count=5
> It is possible that drizzled could use up to
> (read_buffer_size + sort_buffer_size)*thread_count
> bytes of memory
> Hope that's ok; if not, decrease some variables in the equation.
>
> Number of stack frames obtained: 15
> ()
> gsignal()
> abort()
> __assert_fail()
> drizzled::Cursor::ha_reset()
> drizzled::Session::free_cached_table()
> drizzled::Session::close_open_tables()
> drizzled::dispatch_command(drizzled::enum_server_command, drizzled::Session*, char*, unsigned int)
> drizzled::Session::executeStatement()
> drizzled::Session::run()
> MultiThreadScheduler::runSession(drizzled::Session*)
> thread_proxy()
> ()
> clone()
>
>
> You can guess what i'm doing here by the query and schema. I'm running 5 php gearman workers which read from gearman and pump the numbers into the table. super simple... It seems to be most unstable under heavy loads.
>