Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

glibc detected *** python: free(): invalid pointer: 0x00007fe3d443e829 #6

Open
obluda opened this issue Mar 4, 2013 · 7 comments
Open

Comments

@obluda
Copy link

obluda commented Mar 4, 2013

hey dude,
i've encountered some freeing probs.
i've checked add_complete method and i think you're trying to free too often in the for loop. also not freeing anything incase that for was not being ran at all.

*** glibc detected *** python: free(): invalid pointer: 0x00007fe3d443e829 ***
======= Backtrace: =========
/lib/libc.so.6(+0x71e16)[0x7fe3d57c2e16]
/lib/libc.so.6(cfree+0x6c)[0x7fe3d57c7b8c]
/lib/python2.7/site-packages/pyreBloom.so(add_complete+0x54)[0x7fe3d443e534]
/lib/python2.7/site-packages/pyreBloom.so(+0x4cb6)[0x7fe3d443fcb6]
python(PyObject_Call+0x36)[0x44a176]
/lib/python2.7/site-packages/pyreBloom.so(+0x40ca)[0x7fe3d443f0ca]
python(PyEval_EvalFrameEx+0x9c6)[0x4eb166]
python(PyEval_EvalFrameEx+0xa82)[0x4eb222]
python(PyEval_EvalCodeEx+0x1a0)[0x4f1db0]
python[0x4f2f32]
python(PyObject_Call+0x36)[0x44a176]
python(PyEval_EvalFrameEx+0x1fb9)[0x4ec759]
python(PyEval_EvalCodeEx+0x1a0)[0x4f1db0]
python[0x4f2f32]
python(PyObject_Call+0x36)[0x44a176]
python[0x47cc7a]
python(PyObject_Call+0x36)[0x44a176]
python(PyEval_CallObjectWithKeywords+0x36)[0x44c666]
@obluda
Copy link
Author

obluda commented Mar 4, 2013

oops, i gave it a second look and all seems fine..
mm weird.

@dlecocq
Copy link

dlecocq commented Mar 4, 2013

I've seen this happen very occasionally, but I'm not quite sure why. It hasn't gotten in the way of it being useful for what we use it for yet, but it's on our radar.

@obluda
Copy link
Author

obluda commented Mar 12, 2013

i've been hunting it with debug version and valgrind, weird things were happening on hiredis level.
then i realized i have some really archaic hiredis library..
everything works ok so far ;-)

also, what do you think about freeing bloom.c:96:reply = redisCommand(ctxt->ctxt, "PING"); ?

@dlecocq
Copy link

dlecocq commented Mar 12, 2013

Blerg -- I should have seen that. Good catch! I'll patch that.

@obluda
Copy link
Author

obluda commented Mar 15, 2013

i've also noticed segfaults when redis server restarts. to reproduce:
1/connect with pyre
2/restart redis
3/do some add request

@widnyana
Copy link

hi @dlecocq,

pardon me, did you have patch for this?

@dlecocq
Copy link

dlecocq commented Mar 10, 2016

I just tried locally the steps provided by @obluda , and that doesn't reproduce the behavior for me. @widnyana -- do you have any steps to reliably reproduce this behavior?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants