Opened 6 years ago

Last modified 4 years ago

#11127 closed enhancement

using of "db.commit()" make some problems — at Initial Version

Reported by: ms1014 Owned by: Ryan J Ollos
Priority: normal Component: MasterTicketsPlugin
Severity: normal Keywords:
Cc: Trac Release: 0.12

Description

Hello. I have to propose you to hear trac developers and to use @with_transaction instead db.commit() in plugin for trac 0.12. .commit() is a cause of "Database is locked" error. Example of configuration:

Linux debian 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64 GNU/Linux
------
Trac	0.12.3
Genshi	0.6
pysqlite	2.6.0
Python	2.7.3 (default, Jan 2 2013, 13:56:14) [GCC 4.7.2]
setuptools	0.6
SQLite	3.7.13
------
TracMasterTickets 	3.0.5dev
ddblocker 	N/A
Tracchildtickets 	2.5.2

I see this error, when I try to do "UPDATE" or "DELETE" in ITicketManupulator.validate_ticket or ITicketChangeListener.ticket_changed in my plugins. And it's gone when I had used @with_transaction in save() method in mastertickets/model.py. So I think commit() was a cause that bad interactions.

Thank you for your job. :)

Change History (0)

Note: See TracTickets for help on using tickets.