Problem with signal handler inside of drizzle client

Bug #672327 reported by Lee Bieber
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
High
Andrew Hutchings
7.0
Fix Released
High
Andrew Hutchings

Bug Description

We are seeing some random valgrind test failures, emphasis on random, sometimes it happens, sometimes it doesn't

From krow, Are we possibly leaking threads?

struct sigaction act;

  act.sa_handler = SIG_IGN;
  sigaction(SIGPIPE, &act, NULL);

Wondering if the structure should have been set to zero.

Related branches

Revision history for this message
Lee Bieber (kalebral-deactivatedaccount) wrote :

Random test failures are with drizzleslap and haildb.drizzleslap

Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

http://hudson.drizzle.org/job/drizzle-build-ubuntu10.04-32bit-valgrind/673/consoleFull

drizzletest: At line 63: query 'CREATE SCHEMA drizzleslap' failed: 20: drizzle_state_read:lost connection to server (EOF)

Something very bad happening...

Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

ok so there are 2 parts to this bug:

1. Valgrind error:

==31402==
==31402== Syscall param rt_sigaction(act->sa_mask) points to uninitialised byte(s)
==31402== at 0x4366777: __libc_sigaction (sigaction.c:96)
==31402== by 0x402FD70: drizzle_create (drizzle.c:73)
==31402== by 0x8063F32: main (drizzletest.cc:5678)
==31402== Address 0xbea733fc is on thread 1's stack
==31402==
==31402== Syscall param rt_sigaction(act->sa_flags) points to uninitialised byte(s)
==31402== at 0x4366777: __libc_sigaction (sigaction.c:96)
==31402== by 0x402FD70: drizzle_create (drizzle.c:73)
==31402== by 0x8063F32: main (drizzletest.cc:5678)
==31402== Address 0xbea733f4 is on thread 1's stack
==31402==
==31402== Syscall param rt_sigaction(act->sa_restorer) points to uninitialised byte(s)
==31402== at 0x4366777: __libc_sigaction (sigaction.c:96)
==31402== by 0x402FD70: drizzle_create (drizzle.c:73)
==31402== by 0x8063F32: main (drizzletest.cc:5678)
==31402== Address 0xbea733f8 is on thread 1's stack

2. This error:
drizzletest: At line 63: query 'CREATE SCHEMA drizzleslap' failed: 20: drizzle_state_read:lost connection to server (EOF)

Part 1 should be easy to solve by initialising the struct properly (in theory). Part 2 is a client connection timeout for dtr's client connection because the drizzleslap is taking so long (I think we have default timeout really low, something like a minute).

Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

TImeout is 330 seconds (30 seconds and 10 retries)

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.