Opened 17 years ago
Last modified 16 years ago
#4378 closed defect
MySQL structure case insensitive causes collision with file names — at Version 1
Reported by: | Owned by: | Jonas Borgström | |
---|---|---|---|
Priority: | high | Milestone: | 0.11.1 |
Component: | version control | Version: | 0.10.3rc1 |
Severity: | critical | Keywords: | mysql, 4378, patch |
Cc: | Branch: | ||
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description (last modified by )
When running init with a MySQL backend on a subversion repository that has a case collision, the following error comes up. The repo in this case has two symlinks inside of it named "CTE" and "cte". This needs to be changed for case sensitive file systems.
Failed to initialize environment. (1062, "Duplicate entry '1-html/cte-A' for key 1") Traceback (most recent call last): File "/usr/lib/python2.3/site-packages/trac/scripts/admin.py", line 628, in do_initenv repos = self.__env.get_repository() File "/usr/lib/python2.3/site-packages/trac/env.py", line 195, in get_repository return RepositoryManager(self).get_repository(authname) File "/usr/lib/python2.3/site-packages/trac/versioncontrol/api.py", line 101, in get_repository repos = self._connector.get_repository(rtype, rdir, authname) File "/usr/lib/python2.3/site-packages/trac/versioncontrol/svn_fs.py", line 260, in get_repository crepos = CachedRepository(self.env.get_db_cnx(), repos, None, self.log) File "/usr/lib/python2.3/site-packages/trac/versioncontrol/cache.py", line 34, in __init__ self.sync() File "/usr/lib/python2.3/site-packages/trac/versioncontrol/cache.py", line 100, in sync (str(current_rev), path, kind, action, File "/usr/lib/python2.3/site-packages/trac/db/util.py", line 50, in execute return self.cursor.execute(sql_escape_percent(sql), args) File "/usr/lib/python2.3/site-packages/trac/db/util.py", line 50, in execute return self.cursor.execute(sql_escape_percent(sql), args) File "/usr/lib/python2.3/site-packages/MySQLdb/cursors.py", line 163, in execute self.errorhandler(self, exc, value) File "/usr/lib/python2.3/site-packages/MySQLdb/connections.py", line 35, in defaulterrorhandler raise errorclass, errorvalue IntegrityError: (1062, "Duplicate entry '1-html/cte-A' for key 1")
Change History (1)
comment:1 by , 17 years ago
Component: | trac-admin → general |
---|---|
Description: | modified (diff) |
Milestone: | → 0.10.4 |
Owner: | changed from | to
Note:
See TracTickets
for help on using tickets.
Replying to jackie.m@iddl.vt.edu:
Well, the file system has nothing to do here, as we're taking the information straight from the repository. Looks like it would be MySQL which has this case sensitivity issue for its keys. There must be something to configure at the MySQL level, I can't believe it's that broken.
See also #3676, for a different but related problem for the same key.