On 29.11.2013 20:42, Ivan Zhakov wrote: > On 29 November 2013 22:22, <br...@apache.org> wrote: >> Author: brane >> Date: Fri Nov 29 18:22:00 2013 >> New Revision: 1546619 >> >> URL: http://svn.apache.org/r1546619 >> Log: >> * branches/fsfs-ucsnorm/BRANCH-README: New file. >> >> Added: >> subversion/branches/fsfs-ucsnorm/BRANCH-README (with props) >> >> Added: subversion/branches/fsfs-ucsnorm/BRANCH-README >> URL: >> http://svn.apache.org/viewvc/subversion/branches/fsfs-ucsnorm/BRANCH-README?rev=1546619&view=auto >> ============================================================================== >> --- subversion/branches/fsfs-ucsnorm/BRANCH-README (added) >> +++ subversion/branches/fsfs-ucsnorm/BRANCH-README [UTF-8] Fri Nov 29 >> 18:22:00 2013 >> @@ -0,0 +1,66 @@ >> +The purpose of this [fsfs-ucsnorm] branch is to implement two optional >> +checks related to Unicode normalisation to FSFS. >> + >> + >> +Option: Prevent name collisions >> +=============================== >> + >> +If this option is enabled, FSFS will reject operations that would >> +create two different representations of the same name in the same >> +directory. This will prevent situations where a user could see more >> +than one form of the name in a directory listing: > Nice feature, but why in FS layer? May be it's better to implement > this feature on svn_repos layer?
It's not, for at least two reasons: * Users of the FS API must have the same constraints as repository clients, otherwise the whole thing falls on its face. * The repos layer cannot implement this optimally; at a rough guess, it would have to double the number of lookups performed: o The node cache in an FSFS implementation detail, and this option will affect how cache keys are generated. o Likewise for actual lookups into the on-disk representation. -- Brane -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com