Edgewall Software
Modify

Opened 12 years ago

Last modified 12 years ago

#11013 new defect

Unable to hotcopy SQLite database on Windows if >1Gb

Reported by: pdecourcel@… Owned by:
Priority: low Milestone: next-major-releases
Component: admin/console Version: 0.12
Severity: normal Keywords: hotcopy database sqlite
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description (last modified by Christian Boos)

System Information:

  • Trac 0.12
  • Windows XP 64bits SP2 (should be reproduceable on any version of Windows)

How To Reproduce:

Assuming your Trac env use a large (>1Gb) SQLite database, when you use "trac-admin hotcopy ENV" (while Trac is running), the copy of the database fails at 1Gb.

Why : On Windows, when a SQLite DB is locked (eg, during a transaction), database file has an exclusive lock between 1Gb and 1Gb + 512bytes (see http://www.mail-archive.com/sqlite-users@sqlite.org/msg08077.html), so hotcopy fails to read it.

Proposition : When SQLite backend is used, skip the database file during the hotcopy process and use something like "sqlite3 trac.db .backup trac.db.bak" instead.

Attachments (0)

Change History (1)

comment:1 by Christian Boos, 12 years ago

Description: modified (diff)
Milestone: next-major-releases
Priority: normallow

Perhaps we should use the (PySqlite Backup feature), once it's finished.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The ticket will remain with no owner.
The ticket will be disowned.
as The resolution will be set. Next status will be 'closed'.
The owner will be changed from (none) to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.