<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet href="https://dev.horde.org/themes/horde//default/feed-rss.xsl" type="text/xsl"?> 
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 
 <channel> 
  <title>Speed up browsing folders with a lot of files</title> 
  <pubDate>Fri, 10 Apr 2026 13:36:19 +0000</pubDate> 
  <link>https://bugs.horde.org/ticket/10286</link> 
  <atom:link rel="self" type="application/rss+xml" title="Speed up browsing folders with a lot of files" href="https://bugs.horde.org/ticket/10286/rss" /> 
  <description>Speed up browsing folders with a lot of files</description> 
 
   
   
  <item> 
   <title>Currently Chora is very slow when browsing folders with a lo</title> 
   <description>Currently Chora is very slow when browsing folders with a lot of files (at least for Git). There should be a way to speed things up.</description> 
   <pubDate>Tue, 28 Jun 2011 12:16:36 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t65920</link> 
  </item> 
   
  <item> 
   <title>This is not a very helpful request. *Everything* can *always</title> 
   <description>This is not a very helpful request. *Everything* can *always* been improved somehow. Unless you can pinpoint a specific reason why those listings are slow, this request doesn&#039;t make sense.</description> 
   <pubDate>Tue, 28 Jun 2011 12:37:41 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t65923</link> 
  </item> 
   
  <item> 
   <title>OK, I finally got some time to inspect the issue. Seems like</title> 
   <description>OK, I finally got some time to inspect the issue. Seems like queryLastLog() in Git driver is very expensive. And it is performed on every file in a directory.

As far as I know currently git doesn&#039;t support retrieving last log entries for all folder files. git ls-tree is very similar, but it doesn&#039;t include last commit author and date. However these limitations can be avoided by using something like:

for a in $(ls); do git log --pretty=format:&quot;%h%x09%an%x09%ad%x09$a&quot; -1 -- &quot;$a&quot;; done</description> 
   <pubDate>Thu, 04 Aug 2011 12:15:40 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66791</link> 
  </item> 
   
  <item> 
   <title>That requires running on a full (non-bare) checkout though, </title> 
   <description>That requires running on a full (non-bare) checkout though, right?</description> 
   <pubDate>Thu, 04 Aug 2011 12:33:19 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66792</link> 
  </item> 
   
  <item> 
   <title>Good question. As it uses git log on a file instead of the i</title> 
   <description>Good question. As it uses git log on a file instead of the index I suspect yes, the repository should be full.</description> 
   <pubDate>Thu, 04 Aug 2011 13:14:39 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66793</link> 
  </item> 
   
  <item> 
   <title>Spoke a little bit too soon about the magic performance of a</title> 
   <description>Spoke a little bit too soon about the magic performance of a command in my comment. My previous tests with git log were made on a repository without a full log (git clone --depth 1 with 2 months worth of data). Just checked with full log. As an example root IMP folder listing on previous repository took 0.2 seconds. On full log it took 2.2 seconds :(. Nevertheless it is ~3 times faster than current Chora code. On my server Chora lists files in IMP folder in ~6 seconds.

By the way it can be run on the bare repository too with this modification:
for a in $(git ls-tree --name-only fa5c5155d); do git log --pretty=format:&quot;%h%x09%an%x09%ad%x09$a&quot; -1 -- &quot;imp/$a&quot;; done

Where fa5c5155d is a tree object for imp folder.

This also includes last commits for folders which are missing currently from GUI and could be interesting for the user:

dc5d0f6 Ralf Lang       Wed Jun 15 08:44:43 2011 +0000  COPYING
97c55b2 Jan Schneider   Mon May 23 14:34:45 2011 +0200  README
a874ce8 Michael M Slusarz       Mon Apr 25 13:21:27 2011 -0600  attachment.php
b02d946 Jan Schneider   Tue Mar 29 16:08:21 2011 +0200  bin
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   compose-dimp.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   compose-mimp.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   compose.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   config
5b4709a Michael M Slusarz       Fri Mar 25 11:43:40 2011 -0600  contacts.php
12cdfbb Michael M Slusarz       Wed Aug 3 17:29:02 2011 -0600   docs
70161b3 Michael M Slusarz       Mon Apr 25 23:01:49 2011 -0600  folders-mimp.php
1af27ae Michael M Slusarz       Sat Jun 4 13:59:50 2011 -0600   folders.php
3a34c30 Michael M Slusarz       Mon Jul 25 23:22:34 2011 -0600  index-dimp.php
12d62db Michael M Slusarz       Tue Mar 22 17:15:24 2011 -0600  index.php
12cdfbb Michael M Slusarz       Wed Aug 3 17:29:02 2011 -0600   js
2d380a5 Michael M Slusarz       Wed Aug 3 17:26:26 2011 -0600   lib
6930c5b Jan Schneider   Tue Aug 2 15:53:32 2011 +0200   locale
3a43505 Michael M Slusarz       Tue May 17 00:12:31 2011 -0600  mailbox-mimp.php
6e93a8c Michael M Slusarz       Tue Jul 12 12:41:47 2011 -0600  mailbox.php
6e93a8c Michael M Slusarz       Tue Jul 12 12:41:47 2011 -0600  message-dimp.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   message-mimp.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   message.php
ae35555 Jan Schneider   Sat Mar 26 22:55:54 2011 +0100  migration
6f1f0e0 Michael M Slusarz       Thu May 5 09:57:44 2011 -0600   mobile.php
12cdfbb Michael M Slusarz       Wed Aug 3 17:29:02 2011 -0600   package.xml
3b6c3f2 Jan Schneider   Fri Jan 28 22:31:54 2011 +0100  pgp.php
16436a1 Michael M Slusarz       Sat May 14 00:06:36 2011 -0600  rss.php
ca28ddc Michael J Rubinsky      Thu Jun 16 16:02:21 2011 -0400  saveimage.php
32c3fac Michael M Slusarz       Tue May 17 00:13:49 2011 -0600  search-basic.php
54dac27 Michael M Slusarz       Mon Aug 1 16:37:27 2011 -0600   search.php
e3b18b4 Jan Schneider   Wed Mar 30 14:39:55 2011 +0200  smime.php
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   templates
f5d1d97 Gunnar Wrobel   Mon Jun 20 23:19:10 2011 +0200  test
6f99348 Michael M Slusarz       Mon Aug 1 16:40:02 2011 -0600   themes
9a46eae Michael M Slusarz       Tue May 17 17:32:16 2011 -0600  thread.php
2aa8698 Michael M Slusarz       Tue Jun 21 23:18:04 2011 -0600  view.php
</description> 
   <pubDate>Fri, 05 Aug 2011 12:53:48 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66808</link> 
  </item> 
   
  <item> 
   <title>Sounds promising - do you happen to have a patch for this, o</title> 
   <description>Sounds promising - do you happen to have a patch for this, or can you make one? (definitely including the last commit per directory, imo)</description> 
   <pubDate>Sat, 06 Aug 2011 05:22:38 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66816</link> 
  </item> 
   
  <item> 
   <title>Not really. I gave a quick look couple of times at Horde_Vcs</title> 
   <description>Not really. I gave a quick look couple of times at Horde_Vcs code and it is still a mistery to me :) I will give it another try some day rather later than sooner. In the meantime maybe someone with more experience can patch it more easily.</description> 
   <pubDate>Sat, 06 Aug 2011 13:19:05 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/10286#t66817</link> 
  </item> 
   
   
 
 </channel> 
</rss> 
