On Fri, Apr 30, 2010 at 1:23 PM, Ravi Roy <ravi.aroy_at_gmail.com> wrote:
>
>
> On Fri, Apr 30, 2010 at 3:38 PM, Ryan Schmidt
> <subversion-2010b_at_ryandesign.com> wrote:
>>
>> On Apr 30, 2010, at 04:52, Ravi Roy wrote:
>>
>> > I am writing a custom hook (pre-commit) to find out the size of the
>> > transaction for certain size and then allow / disallow commit. But I am not
>> > sure what is the structure under /db/transactions which should be checked
>> > for size ?
>>
>> You don't need to know. :) Instead, use the "svnlook" program to inspect
>> the transaction for the information you need. For example, "svnlook changed"
>> to see what changed in the transaction, and "svnlook cat" to get the
>> contents of individual files from the transaction, whose bytes you can then
>> sum up.
>>
>
> Thankd Ryan. Don't you think svnlook cat -t $T > contentsfile would be too
> havy for pre-commit hook to handle and make repo commits slow :-)
> Suppose somebody is trying to commit 100 MB of file which I want to disallow
> in principle, I think this will cause performace issues.
This will probably add some delay to the process,
but keep in mind that in the pre-commit part the file was already
transferred to the server, and this was probably the significant delay.
Unless information about files in the transaction and their sizes is
available in the start-commit phase (which occurs before the actual
transfer of content), there's no way to avoid the "big" delay over the network.
Which makes me wonder - is this information available in start-commit..?
>
> Thanks
>
> -RR
>
Received on 2010-04-30 12:32:43 CEST