Edgewall Software
Home
Trac
Trac Hacks
Genshi
Babel
Bitten
Home
Download
Documentation
Mailing Lists
License
FAQ
Search:
Login
Preferences
Help/Guide
About Trac
Wiki
Timeline
Roadmap
Browse Source
View Tickets
New Ticket
Search
Context Navigation
+2
Start Page
Index
History
Editing WhySQLite
Adjust edit area height:
8
12
16
20
24
28
32
36
40
Edit side-by-side
= Why Trac uses SQLite as its internal data store = There had been recently a discussion in the Trac mailing list why Trac uses SQLite as data store instead of the more natural approach of using a version controlled subversion repository for storage of issues and wiki pages. This pages summarizes this discussion by highlighting the arguments and referencing the original posts. The following notation is used: * Introduces a new argument. * [-] Statement that invalidates the argument. * [+] Statement that reestablishes the argument by refuting the objection. == Pro SVN == 1. SQLite is space-expensive, no diffs ([http://lists.edgewall.com/archive/trac/2004-August/000594.html Alik Eliashberg]). * [-] Diffs could be stored in SQLite instead of full versions ([http://lists.edgewall.com/archive/trac/2004-August/000595.html Emmanuel Blot]). * [+] Diffs in SQLite would be reinventing the wheel by implementing yet another VC system ([http://lists.edgewall.com/archive/trac/2004-August/000597.html Alik Eliashberg]). * [-] Disk space is not an issue ([http://lists.edgewall.com/archive/trac/2004-August/000603.html Jonas Borgström]). 2. Enables the management of wiki pages outside of Trac ([http://lists.edgewall.com/archive/trac/2004-August/000597.html Alik Eliashberg]) * [-] Removing wiki pages from outside leaves dangling references to this page ([http://lists.edgewall.com/archive/trac/2004-August/000598.html Emmanuel Blot]). * [+] Pages can also be deleted with trac-admin leaving the same dangling references ([http://lists.edgewall.com/archive/trac/2004-August/000602.html Toni Brkic]). * [+] Dead links are a natural feature of wikis ([http://lists.edgewall.com/archive/trac/2004-August/000599.html Alik Eliashberg]). * [-] Editing a wiki page in an editor is non-wiki ([http://lists.edgewall.com/archive/trac/2004-August/000598.html Emmanuel Blot]). * [+] Editor is more convenient for page creation and large changes. Wiki-Web modifications are means for community interaction ([http://lists.edgewall.com/archive/trac/2004-August/000599.html Alik Eliashberg], [http://lists.edgewall.com/archive/trac/2004-August/000596.html Toni Brkic]). * [+] This page has been authored in Emacs to have better overview and spell checking (haui at haumacher.de). 3. A wiki is well suited for project documentation. Project documentation is an integral part of the project and should be stored in the project repository, access should not be limited to Trac access ([http://lists.edgewall.com/archive/trac/2004-August/000622.html Denis Gervalle]). 4. Less to learn, since people installing trac are already familiar with subversion ([http://lists.edgewall.com/archive/trac/2004-August/000602.html Toni Brkic]). 5. Extra benefits from VC systems like merging/diffing with no extra cost ([http://lists.edgewall.com/archive/trac/2004-August/000602.html Toni Brkic]). == Pro SQLite == 1. SVN integration would counteract support for other VC systems * [-] Support for other VC systems can be achieved with a backend-independent VC interface ([http://lists.edgewall.com/archive/trac/2004-August/000597.html Alik Eliashberg:]) * [+] A backend-independent VC interface has a least common denominator problem (only features supported that are supported by all VC systems) ([http://lists.edgewall.com/archive/trac/2004-August/000625.html trac at nogga.de]). * [-] Adding Trac support for other VC systems has the same least common denominator problem, because Trac could no longer make use of unique SVN features. There is no need for supporting other VC systems at all ([http://lists.edgewall.com/archive/trac/2004-August/000625.html trac at nogga.de]). 2. As workaround, a macro can include SVN files into wiki contents ([http://lists.edgewall.com/archive/trac/2004-August/000626.html François Harvey], [http://lists.edgewall.com/archive/trac/2004-August/000627.html Mario Ruggier], [http://lists.edgewall.com/archive/trac/2004-August/000628.html François Harvey]). 3. Trac heavily depends on SQLite and SQL ([http://lists.edgewall.com/archive/trac/2004-August/000603.html Jonas Borgström]).
Note:
See
WikiFormatting
and
TracWiki
for help on editing wiki content.
Change information
Your email or username:
E-mail address and name can be saved in the
Preferences
Comment about this change (optional):
Note:
See
TracWiki
for help on using the wiki.