Opened 18 years ago
Closed 17 years ago
#5559 closed defect (invalid)
Trac-Admin: Segmentation fault
Reported by: | Bruz | Owned by: | Christopher Lenz |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | admin/console | Version: | 0.10.4 |
Severity: | normal | Keywords: | trac-admin needinfo |
Cc: | Branch: | ||
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description
After Upgrade from 0.9.5 to 0.10.4 i could not use trac-admin…. Allways 'Segmentation fault'
Attachments (0)
Change History (6)
comment:1 by , 17 years ago
Keywords: | needinfo added |
---|---|
Priority: | highest → normal |
Severity: | blocker → normal |
comment:2 by , 17 years ago
This happens to me too. trac-admin segfaults on initenv. However, it creates the project folder so I can run other commands: 'upgrade' and 'resync' do segfault too. Trac 0.10.4 Python 2.4.4 Subversion 1.4.2 python-subversion 1.4.2
Linux, Debian Sarge. trac and other packages were installed using apt-get.
Latest lines from strace: access("/opt/code.trac/db", R_OK|W_OK) = 0 futex(0x82290e8, FUTEX_WAKE, 1) = 0 open("/opt/code.trac/db/trac.db", O_RDWR|O_CREAT|O_LARGEFILE, 0644) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=0, …}) = 0 dup(3) = 4 mmap2(NULL, 2097152, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40ec2000 mprotect(0x40ec2000, 4096, PROT_NONE) = 0 clone(child_stack=0x410c14c4, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, parent_tidptr=0x410c1bf8ptrace: umoven: No such process , tls=0xbfffdc5c, child_tidptr=0x410c1bf8) = 17761 trace: ptrace(PTRACE_SYSCALL, …): No such process
comment:3 by , 17 years ago
Looks like it fails during the creation of the SQLite database. Maybe there's a mismatch between the version of the SQLite library that get used at runtime and the version that was used when building the PySqlite bindings.
Some tips:
- you can run the
initenv
from within gdb and when it crashes do ainfo shared
, look for libsqlite3.so - if you're unsure about the version of SQLite which was used when building the bindings, the simplest way is to rebuild them yourself, see PySqlite#BuildingSQLiteyourself (and take this opportunity to upgrade to 2.3.5).
comment:4 by , 17 years ago
gdb shows libsqlite3.so.0
I did the tests from http://trac.edgewall.org/wiki/PySqlite:
>>> import trac.db.sqlite_backend as test >>> test._ver (3, 3, 8) >>> test.have_pysqlite 2 >>> test.sqlite.version '2.3.2' >>> from pysqlite2 import dbapi2 as sqlite >>>
Also, python-pysqlite2 Debian package requires libsqlite3-0 ≥ 3.3.8, so there shouldn't be a mismatch between installed SQLite version and the version used when building PySqlite. What else can I do to debug the issue?
follow-up: 6 comment:5 by , 17 years ago
After some digging I understood that sqlite itself was segfaulting because of threading issue (I was running everything inside a UserModeLinux instance). After moving to a normal server everything works fine for me.
comment:6 by , 17 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Replying to aar@cpan.org:
After moving to a normal server everything works fine for me.
So I assume this can be closed.
Bruz, I think we need more information about this. What operating system are you on? What version of Python? Are you able to create new environments, is the error only on running trac-admin with existing ones? How did you upgrade Trac?