git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: bug? git push triggers auto pack when gc.auto = 0

From
Cchris <jugg@hotmail.com>
Date
Feb 4, 2014, 05:13 UTC
Message-ID
<loom.20140204T055040-646@post.gmane.org>
In-Reply-To
<CACsJy8Bo4XgA-g2hy+_pVEKLnerL9WNhpWe==zJANmCMdGXuow@mail.gmail.com>
Duy Nguyen <pclouds <at> gmail.com> writes:
Show 23 quoted lines
> On Tue, Feb 4, 2014 at 9:20 AM, chris <jugg <at> hotmail.com> wrote:
> > $ git push origin next
> > Counting objects: 56, done.
> > Delta compression using up to 4 threads.
> > Compressing objects: 100% (9/9), done.
> > Writing objects: 100% (9/9), 895 bytes | 0 bytes/s, done.
> > Total 9 (delta 8), reused 0 (delta 0)
> > Auto packing the repository for optimum performance.
> 
> This string only appears in versions before 1.8.0. It's longer after 1.8.0.
> 
> > To ssh://git <at> my.server.com/my_project
> >    3560275..f508080  next -> next
> > $ git config gc.auto
> > 0
> > $ git config gc.autopacklimit
> > 0
> > $ git --version
> > git version 1.8.5.3
> 
> but your client is after 1.8.0 so the string printed above is from the
> server side. "git config gc.auto" here does not matter. Run that
> command again on my.server.com.

Ok, so I can understand if the message is from the server. I'll chalk up never noticing it before to someone else always being the lucky one to trigger it.

However, I question why I should even care about this message? I'm going to assume that simply it is a lengthy synchronous operation that someone felt deserved some verbosity to why the client push action is taking longer than it should. Yet that makes me question why I'm being penalized for this server side operation. My client time should not be consumed for server side house keeping.

An obvious fix is to disable gc on the server and implement a cron job for the house keeping task. However, as often the case one does not have control over the server, so it is unfortunate that git has this server side house keeping as a blocking operation to a client action.

> > So my question is, should gc.auto = 0 disable auto-packing from occurring on
> > git push and other non-gc commands?
> 
> Yes it should.
Thanks for the confirmation.
Regards,
Chris
Previous: Duy NguyenNext: Duy Nguyen
Message 3 of 30 in “bug? git push triggers auto pack when gc.auto = 0”
  1. chrisFeb 4, 2014
  2. Duy NguyenFeb 4, 2014
  3. chrisFeb 4, 2014
  4. Duy NguyenFeb 4, 2014
  5. 1/2 receive-pack: update $GIT_DIR/info before auto garbage collectionNguyễn Thái Ngọc Duy, Feb 4, 2014
  6. 2/2 receive-pack: hint that the user can stop "git push" at auto gc timeNguyễn Thái Ngọc Duy, Feb 4, 2014
  7. Junio C HamanoFeb 4, 2014
  8. Junio C HamanoFeb 4, 2014
  9. chrisFeb 7, 2014
  10. Duy NguyenFeb 7, 2014
  11. chrisFeb 7, 2014
  12. 1/2 daemon: move daemonize() to libgit.aNguyễn Thái Ngọc Duy, Feb 8, 2014
  13. 2/2 gc: config option for running --auto in backgroundNguyễn Thái Ngọc Duy, Feb 8, 2014
  14. Erik Faye-LundFeb 10, 2014
  15. Duy NguyenFeb 10, 2014
  16. Erik Faye-LundFeb 10, 2014
  17. Junio C HamanoFeb 10, 2014
  18. Junio C HamanoFeb 10, 2014
  19. Duy NguyenFeb 12, 2014
  20. Junio C HamanoFeb 12, 2014
  21. Erik Faye-LundFeb 10, 2014
  22. Junio C HamanoFeb 10, 2014
  23. Duy NguyenFeb 10, 2014
  24. Junio C HamanoFeb 11, 2014
  25. chrisFeb 4, 2014
  26. David KastrupFeb 4, 2014
  27. chrisFeb 4, 2014
  28. David KastrupFeb 4, 2014
  29. chrisFeb 4, 2014
  30. David KastrupFeb 4, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.