On Tuesday, August 12, 2014 06:59:20 AM Branko Čibej wrote:
> On 12.08.2014 03:31, Alexey Neyman wrote:
> > Hi SVN users/developers,
> > 
> > Is there a limitation in size on the property value that can be set?
> > Any scalability traps to be aware of (i.e. non-linear increase in time
> > due to increase in size of the property value)? I tried a 4Mb
> > property, seems to work fine...
> 
> One thing to be aware of is that properties were never designed to be
> large. Property values are always transmitted in full text between
> client and server (i.e., they're not compressed); they're stored in full
> text in the repository (not deltified the way file contents are). So the
> more large properties you have, and the more often you modify them, the
> less efficient your repository will be, in terms of storage requirements
> and network bandwidth.
> 
> So while you should be able to store a 2 gig property value, I really,
> really recommend not to do that.

I thought of having pre- and post-commit hooks communicate using a *revision* 
property: 
pre-commit hook would set a revision property with the list of files and 
actions to be 
performed on them, and the post-commit hook will perform these actions by 
committing a 
new revision (instead of modifying a transaction by pre-commit hook).

Thus a more specific question - when are arbitrary *revision* properties sent 
from the 
client to the server? Obviously, svn:* properties are used by various SVN 
commands; but am 
I right to assume that non-standard revision properties are sent only for the 
'svn pg --
revprop' command?

That said, I expect the property value to be much less than 2Gb. So far, the 
largest commit 
we've had was ~20000 files - with ~150 characters per path, that would be about 
3Mb for 
the property value.

Regards,
Alexey.

Reply via email to