Ticket #8688 (closed defect: cantfix)
Opened 2 years ago
Last modified 17 months ago
Trac internal error "OperationalError: cannot commit - no transaction is active"
| Reported by: | jsinger@… | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | database backend | Version: | 0.11.5 |
| Severity: | major | Keywords: | sqlite needinfo |
| Cc: | |||
| Release Notes: | |||
| API Changes: | |||
Description
I upgraded apache to 2.2.13 and Trac from 0.11b2 to 0.11.5.
After this, my system does not work any more. The list of trac projects is still automatically generated, however, as soon as I try
to open open one of the project pages I get the following message:
Trac detected an internal error:
OperationalError?: cannot commit - no transaction is active
The action that triggered the error was:
GET: /
It seems that Trac has difficulties with the database.
Attempts to upgrade with trac-admin result in:
Database is up to date, no upgrade necessary.
Attachments
Change History
Changed 2 years ago by jsinger@…
- Attachment trac11.5_bugreport added
comment:1 Changed 2 years ago by cboos
- Keywords needinfo added
Quite strange indeed, never seen this.
Maybe you have old plugins which somehow badly interfere?
Try disabling all plugins and see if the problem persists.
Changed 2 years ago by jsinger@…
- Attachment Trac_error_jks_091214.txt added
detailed error message for failure to sync with svn repository
comment:2 Changed 2 years ago by jsinger@…
The problem seemed to have disappeared for a while, but now it back: After I submitted some documents for a project with svn, trac suddenly stopped working again. Removing this project from trac does not help: The error appears in all projects.
(cf. attached file Trac_error_jks_091214.txt for detailed error message)
comment:3 follow-up: ↓ 4 Changed 2 years ago by cboos
You're using the default pysqlite bundled with your stock python... Maybe it uses a buggy SQLite, I remember having seen some reports about Apple-specific changes to SQLite that were not so fine (can't remember the exact thing though).
Try this from your Python command line:
>>> import sqlite3
>>> c = sqlite3.Connection("ddd")
>>> c.commit()
This shouldn't raise an error.
So I would advise you to upgrade PySqlite, and use the amalgamation build to get the latest SQLite.
comment:4 in reply to: ↑ 3 ; follow-up: ↓ 5 Changed 2 years ago by anonymous
Actually, I was not using the stock pysqlite, but a newer one - and the above test
just worked fine.
Nevertheless, I did upgrade to newer versions of sqlite3, pysqlite, subversion and recompiled mod_python. As a result the error seems to have disappeared once more -
but I already did believe last time that it had gone.
System Information
Trac: 0.11.5
Python: 2.5.2 (r252:60911, Apr 12 2008, 11:53:13) [GCC 4.0.1 (Apple Computer, Inc. build 5370)]
setuptools: 0.6c9
SQLite: 3.6.21
pysqlite: 2.5.6
Genshi: 0.5.1
mod_python: 3.3.1
Subversion: 1.6.6 (r40053)
jQuery: 1.2.6
comment:5 in reply to: ↑ 4 ; follow-up: ↓ 6 Changed 2 years ago by cboos
Replying to anonymous:
SQLite: 3.6.21 pysqlite: 2.5.6
That's as recent as you can get, but it's not what was written in Trac_error_jks_091214.txt. Could it be a server install issue which ends up in your mod_python not using that pysqlite 2.5.6 extension?
comment:6 in reply to: ↑ 5 Changed 2 years ago by anonymous
Replying to cboos:
Replying to anonymous:
SQLite: 3.6.21 pysqlite: 2.5.6
That's as recent as you can get, but it's not what was written in Trac_error_jks_091214.txt. Could it be a server install issue which ends up in your mod_python not using that pysqlite 2.5.6 extension?
No - I just upgraded today, after your recommendation -
the version numbers in the attached file are correct and refer to the
installation as it was when the error occured.
comment:7 Changed 17 months ago by cboos
- Component changed from general to database backend
- Keywords sqlite added; database, internal error removed
- Resolution set to cantfix
- Status changed from new to closed
No feedback, closing.



Report from Trac when accessing site