Opened 12 years ago
Last modified 12 years ago
#11013 new defect
Unable to hotcopy SQLite database on Windows if >1Gb
Reported by: | 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 )
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 , 12 years ago
Description: | modified (diff) |
---|---|
Milestone: | → next-major-releases |
Priority: | normal → low |
Perhaps we should use the (PySqlite Backup feature), once it's finished.