Re: git-p4 fails when cloning a p4 depo.
- From
Simon Hausmann <simon@lst.de>
- Date
- Jun 17, 2007, 08:11 UTC
- Message-ID
- <200706171011.52492.simon@lst.de>
- In-Reply-To
- <466DF32D.802@xs4all.nl>
On Tuesday 12 June 2007 03:13:17 Han-Wen Nienhuys wrote:
Show 20 quoted lines
> Benjamin Sergeant escreveu: > > A perforce command with all the files in the repo is generated to get > > all the file content. > > Here is a patch to break it into multiple successive perforce command > > who uses 4K of parameter max, and collect the output for later. > > > > It works, but not for big depos, because the whole perforce depo > > content is stored in memory in P4Sync.run(), and it looks like mine is > > bigger than 2 Gigs, so I had to kill the process. > > General idea of the patch is ok. some nits: > > + chunk = '' > > + filedata = [] > > + for i in xrange(len(files)): > > why not > > for f in files: > > ?
It seems 'i' is used a bit later. Is there a nicer way to express this in python?
Show 9 quoted lines
> > + f = files[i]
> > + chunk += '"%s#%s" ' % (f['path'], f['rev'])
> > + if len(chunk) > 4000 or i == len(files)-1:
>
> 4k seems reasonable enough, but can you take the min() with
> os.sysconf('SC_ARG_MAX') ?
>
> Can you address this and resend so we can apply the patch?
> Thanks.Since I ran into the very problem of a too long commandline myself yesterday I took the liberty of adding the SC_ARG_MAX bit to Benjamin's patch and comitting it then.
Simon