Edgewall Software

Opened 17 years ago

Last modified 16 years ago

#4378 closed defect

MySQL structure case insensitive causes collision with file names — at Initial Version

Reported by: jackie.m@… Owned by: Christopher Lenz
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

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 (0)

Note: See TracTickets for help on using tickets.