Crash from boost::condition_variable assert fail when datadir is not full path

Bug #669707 reported by David Shrewsbury
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
High
Monty Taylor
7.0
Fix Released
High
Monty Taylor

Bug Description

Seems datadir can only be a full path, otherwise Drizzle fall down, go boom:

> sbin/drizzled --datadir=./var

InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes use GCC atomic builtins, rw_locks do not
InnoDB: The first specified data file ../ibdata1 did not exist:
InnoDB: a new database to be created!
101101 19:51:03 InnoDB: Setting file ../ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
101101 19:51:03 InnoDB: Log file ../ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ../ib_logfile0 size to 20 MB
InnoDB: Database physically writes the file full: wait...
101101 19:51:03 InnoDB: Log file ../ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ../ib_logfile1 size to 20 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
101101 19:51:04 InnoDB Plugin 1.0.6 started; log sequence number 0
Can't start server: can't create PID file (./var/kodiak.pid):
drizzled: /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:38: boost::condition_variable::~condition_variable(): Assertion `!pthread_cond_destroy(&cond)' failed.
101101 19:51:04 - 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=0
connection_count=0
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: 14
drizzled_handle_segfault()
()
gsignal()
abort()
__assert_fail()
boost::condition_variable::~condition_variable()
exit()
sbin/drizzled() [0xa86aa4]
signal_hand()
boost::detail::thread_data<void (*)()>::run()
thread_proxy()
()
clone()
Aborted

Related branches

Revision history for this message
David Shrewsbury (dshrews) wrote :

Same thing for:

--datadir=var

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.