List for cgit developers and users
 help / color / mirror / Atom feed
* Remove a few loops in cgit for a large number of repos.
@ 2013-10-10 14:44 mlhess
  2013-10-10 15:48 ` john
  0 siblings, 1 reply; 3+ messages in thread
From: mlhess @ 2013-10-10 14:44 UTC (permalink / raw)


Hi Everyone,


I am looking into using cgit for Drupal.org's repos, and wondering if we
could remove code like this:
http://git.zx2c4.com/cgit/tree/shared.c#n79


We have almost 10,000 repos and are worried about the load from loops, and
building the index it loops over. All of the repos are under a directory
(in 2 different sub directories), so I was hoping we could just validate
the directory path (making sure someone is not trying to do a ../../,etc)
and allow it?

Could that be done?  Please let me know your thoughts.

Thanks
Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.zx2c4.com/pipermail/cgit/attachments/20131010/06a3d09d/attachment.html>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Remove a few loops in cgit for a large number of repos.
  2013-10-10 14:44 Remove a few loops in cgit for a large number of repos mlhess
@ 2013-10-10 15:48 ` john
  2013-10-10 17:24   ` mlhess
  0 siblings, 1 reply; 3+ messages in thread
From: john @ 2013-10-10 15:48 UTC (permalink / raw)


On Thu, Oct 10, 2013 at 10:44:55AM -0400, Michael Hess wrote:
> I am looking into using cgit for Drupal.org's repos, and wondering if we
> could remove code like this:
> http://git.zx2c4.com/cgit/tree/shared.c#n79
> 
> 
> We have almost 10,000 repos and are worried about the load from loops, and
> building the index it loops over. All of the repos are under a directory
> (in 2 different sub directories), so I was hoping we could just validate
> the directory path (making sure someone is not trying to do a ../../,etc)
> and allow it?
> 
> Could that be done?  Please let me know your thoughts.

Have you actually seen this causing excessive load, or is it only a
theoretical issue?

I expect it would be possible, in the case of scan-path, to load repos
from disk lazily, but that will probably add quite a lot of complexity
and I'm not convinced it's worthwhile.

That particular loop will only be executed once and I suspect it is
dwarfed by the time spent loading and parsing the config (cached project
list if you're using scan-path).


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Remove a few loops in cgit for a large number of repos.
  2013-10-10 15:48 ` john
@ 2013-10-10 17:24   ` mlhess
  0 siblings, 0 replies; 3+ messages in thread
From: mlhess @ 2013-10-10 17:24 UTC (permalink / raw)


I have not seen the load yet, we will do some load testing and let you
know.

Thanks,
Michael


On Thu, Oct 10, 2013 at 11:48 AM, John Keeping <john at keeping.me.uk> wrote:

> On Thu, Oct 10, 2013 at 10:44:55AM -0400, Michael Hess wrote:
> > I am looking into using cgit for Drupal.org's repos, and wondering if we
> > could remove code like this:
> > http://git.zx2c4.com/cgit/tree/shared.c#n79
> >
> >
> > We have almost 10,000 repos and are worried about the load from loops,
> and
> > building the index it loops over. All of the repos are under a directory
> > (in 2 different sub directories), so I was hoping we could just validate
> > the directory path (making sure someone is not trying to do a ../../,etc)
> > and allow it?
> >
> > Could that be done?  Please let me know your thoughts.
>
> Have you actually seen this causing excessive load, or is it only a
> theoretical issue?
>
> I expect it would be possible, in the case of scan-path, to load repos
> from disk lazily, but that will probably add quite a lot of complexity
> and I'm not convinced it's worthwhile.
>
> That particular loop will only be executed once and I suspect it is
> dwarfed by the time spent loading and parsing the config (cached project
> list if you're using scan-path).
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.zx2c4.com/pipermail/cgit/attachments/20131010/d2586b69/attachment.html>


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-10-10 17:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-10 14:44 Remove a few loops in cgit for a large number of repos mlhess
2013-10-10 15:48 ` john
2013-10-10 17:24   ` mlhess

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).