Crash/segfault in google::protobuf::internal::RepeatedPtrFieldBase::raw_data (this=0x20) at /usr/include/google/protobuf/repeated_field.h:611

Bug #638518 reported by Patrick Crews
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
Undecided
Joe Daly

Bug Description

Crash occurred while testing the transaction log.
Server built via
  ./configure --with-debug
Server started via
  ./test-run --start-and-exit --mysqld=--transaction-log.enable
Server tested via randgen command line:
perl ./gentest.pl --dsn=dbi:drizzle:host=localhost:port=9307:user=root:password="":database=test --gendata=conf/drizzle/drizzle.zz --grammar=conf/engines/engine_stress.yy --queries=1000 --threads=1 --debug

A fairly large number of queries occurred between defining SAVEPOINT A and trying to ROLLBACK to it (which caused the crash).

This might be related to:
https://bugs.launchpad.net/drizzle/+bug/626566

Backtrace:
Program terminated with signal 11, Segmentation fault.
#0 0x000000000084ba36 in google::protobuf::internal::RepeatedPtrFieldBase::raw_data (this=0x20)
    at /usr/include/google/protobuf/repeated_field.h:611
611 return elements_;
(gdb) backtrace
#0 0x000000000084ba36 in google::protobuf::internal::RepeatedPtrFieldBase::raw_data (this=0x20)
    at /usr/include/google/protobuf/repeated_field.h:611
#1 0x000000000084e1c2 in google::protobuf::RepeatedPtrField<drizzled::message::Statement>::begin (this=0x20)
    at /usr/include/google/protobuf/repeated_field.h:929
#2 0x0000000000848db9 in drizzled::TransactionServices::rollbackToSavepoint (this=0xe84990, session=0x25ef080, sv=...)
    at drizzled/transaction_services.cc:835
#3 0x00000000008210e0 in drizzled::statement::RollbackToSavepoint::execute (this=0x25e1d00)
    at drizzled/statement/rollback_to_savepoint.cc:76
#4 0x00000000007cc7ba in mysql_execute_command (session=0x25ef080) at drizzled/sql_parse.cc:479
#5 0x00000000007cd57c in drizzled::mysql_parse (session=0x25ef080, inBuf=0x2549a88 "ROLLBACK TO SAVEPOINT A", length=23)
    at drizzled/sql_parse.cc:750
#6 0x00000000007cc10e in drizzled::dispatch_command (command=drizzled::COM_QUERY, session=0x25ef080,
    packet=0x25891b1 "ROLLBACK TO SAVEPOINT A", packet_length=23) at drizzled/sql_parse.cc:224
#7 0x000000000078ef41 in drizzled::Session::executeStatement (this=0x25ef080) at drizzled/session.cc:667
#8 0x000000000078e7db in drizzled::Session::run (this=0x25ef080) at drizzled/session.cc:522
#9 0x00007f42c665bb54 in MultiThreadScheduler::runSession (this=0x231b3b0, session=0x25ef080)
    at ./plugin/multi_thread/multi_thread.h:67
#10 0x00007f42c66599e2 in session_thread (arg=0x25ef080) at plugin/multi_thread/multi_thread.cc:52
#11 0x00007f42ca33b9ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#12 0x00007f42ca0986fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#13 0x0000000000000000 in ?? ()

Related branches

Changed in drizzle:
status: New → Confirmed
assignee: nobody → David Shrewsbury (dshrews)
Revision history for this message
David Shrewsbury (dshrews) wrote :

More likely related to changes made for bug 600032.

Revision history for this message
Joe Daly (skinny.moey) wrote :

Ill take a look at this as Im still working on 600032

Changed in drizzle:
assignee: David Shrewsbury (dshrews) → Joe Daly (skinny.moey)
Revision history for this message
Patrick Crews (patrick-crews) wrote :

Tested the linked branch with the same randgen test - no longer crashing on ROLLBACK commands.

Tested with a variety of seed values over several runs. Branch looks good for merge.

Joe Daly (skinny.moey)
Changed in drizzle:
status: Confirmed → Fix Released
milestone: none → 2010-09-27
status: Fix Released → Confirmed
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.