{"thread":{"id":"46617","subject":"ignoring extra bitmap file?","startedAt":"2017-08-17T19:55:38Z","lastAt":"2017-08-28T13:33:29Z","messageCount":3,"participants":["Andreas Krey","Jeff King"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"326630","messageId":"20170817192436.GA4782@inner.h.apk.li","threadId":"46617","inReplyTo":null,"subject":"ignoring extra bitmap file?","fromName":"Andreas Krey","fromEmail":"a.krey@gmx.de","sentAt":"2017-08-17T19:24:36Z","receivedAt":"2017-08-17T19:55:38Z","isPatch":false,"sender":{"key":"a.krey@gmx.de","avatar":"https://avatars.githubusercontent.com/u/37810?v=4"},"body":"Hi everyone,\n\nI'm seeing the message\n\n   remote: warning: ignoring extra bitmap file: ./objects/pack/pack-2943dc24....pack\n\nand indeed, there is such a thing (two, actually):\n\n   171736188 Aug 17 08:20 pack-2943dc2477026f87b280ebcefa93fe28412688df.idx\n    12662268 Aug 17 08:24 pack-2943dc2477026f87b280ebcefa93fe28412688df.bitmap\n 12927989355 Aug 17 08:27 pack-2943dc2477026f87b280ebcefa93fe28412688df.pack\n   164857412 Aug 17 08:33 pack-8b4a42ca7aa2aca6f354292007910de1110117b2.idx\n    13164932 Aug 17 08:49 pack-8b4a42ca7aa2aca6f354292007910de1110117b2.bitmap\n      281872 Aug 17 09:40 pack-bddb40f984124ba8c2a4e5c55b0d1b2804fd5817.pack\n       13280 Aug 17 09:40 pack-bddb40f984124ba8c2a4e5c55b0d1b2804fd5817.idx\n        7904 Aug 17 15:51 pack-0f8b1478e17174c562d9a52cf577e0e050bdb7c5.idx\n     2373948 Aug 17 16:09 pack-23253e17510cacaae3bb38fb5429073b3bc59480.pack\n        6980 Aug 17 16:09 pack-23253e17510cacaae3bb38fb5429073b3bc59480.idx\n      144158 Aug 17 17:03 pack-0f8b1478e17174c562d9a52cf577e0e050bdb7c5.pack\n 12927996484 Aug 17 19:19 pack-8b4a42ca7aa2aca6f354292007910de1110117b2.pack\n      153332 Aug 17 20:17 pack-65ff13a10c29a6c1604017c50dc9a320044ee605.pack\n       14036 Aug 17 20:17 pack-65ff13a10c29a6c1604017c50dc9a320044ee605.idx\n\nBut it looks like something went wrong in that repack cycle (that\npack-2943dc247702 is the full repo), and it won't get removed later\nin the next repack in the evening.\n\nQuestion: Can I safely remove the .bitmap file, and repack will then\nclean up the .pack and .idx files as will?\n\n(This is still that repo in bitbucket (latest 4.x) server\nwith git 2.6.2, now with cg.auto=0.)\n\n- Andreas\n\n-- \n\"Totally trivial. Famous last words.\"\nFrom: Linus Torvalds <torvalds@*.org>\nDate: Fri, 22 Jan 2010 07:29:21 -0800\n"},{"id":"326676","messageId":"20170818065333.7povtg6b4sugnnfg@sigill.intra.peff.net","threadId":"46617","inReplyTo":"20170817192436.GA4782@inner.h.apk.li","subject":"Re: ignoring extra bitmap file?","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2017-08-18T06:53:34Z","receivedAt":"2017-08-18T06:53:40Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Thu, Aug 17, 2017 at 09:24:36PM +0200, Andreas Krey wrote:\n\n> I'm seeing the message\n> \n>    remote: warning: ignoring extra bitmap file: ./objects/pack/pack-2943dc24....pack\n> \n> and indeed, there is such a thing (two, actually):\n\nOnly one is the extra. :) The other is doing something useful.\n\nBasically, the bitmap code was written to a handle a single bitmap file.\nIt would be possible to handle multiple, but it simplified the\nimplementation greatly to only handle one. And in practice, since a\nbitmap can only be made for a pack which contains all of the reachable\nobjects, you'd have only one bitmap per repo, for the one big \"main\"\npack.\n\n> But it looks like something went wrong in that repack cycle (that\n> pack-2943dc247702 is the full repo), and it won't get removed later\n> in the next repack in the evening.\n\nYes, it looks like you got a full repack that failed to remove the old\npack. Or more likely you had two full repacks racing with each other,\neach creating a new big pack.\n\nSo the extra bitmap here is harmless. Both of them contain more or less\nthe same data, and whichever one we use will be fine (and remember that\nthe .bitmap files are purely an optimization, so that \"more or less\"\nwill only make a minor impact on the speed of operations, not on the\noutput).\n\n> Question: Can I safely remove the .bitmap file, and repack will then\n> clean up the .pack and .idx files as will?\n\nYes, it's always safe to remove a .bitmap file (though if you remove the\nlast one, you may expect performance to drop for some operations).\n\nWhether there's a .bitmap doesn't impact whether .pack and .idx files\nare deleted. The next full repack would pack everything into a new big\npack, and then delete any existing files, including .pack, .idx, and\n.bitmap.\n\n-Peff\n"},{"id":"327281","messageId":"20170828133253.GA23438@inner.h.apk.li","threadId":"46617","inReplyTo":"20170818065333.7povtg6b4sugnnfg@sigill.intra.peff.net","subject":"Re: ignoring extra bitmap file?","fromName":"Andreas Krey","fromEmail":"a.krey@gmx.de","sentAt":"2017-08-28T13:32:53Z","receivedAt":"2017-08-28T13:33:29Z","isPatch":false,"sender":{"key":"a.krey@gmx.de","avatar":"https://avatars.githubusercontent.com/u/37810?v=4"},"body":"On Fri, 18 Aug 2017 02:53:34 +0000, Jeff King wrote:\n...\n> Whether there's a .bitmap doesn't impact whether .pack and .idx files\n> are deleted. The next full repack would pack everything into a new big\n> pack, and then delete any existing files, including .pack, .idx, and\n> .bitmap.\n\nIt took a bit of patience, but the extra packs and .bitmaps\nfinally went away without intervention.\n\nHowever, now I have a few GB sitting in loose objects that\nrefuse to vanish yet. Bryan might be interested here;\nhow often is bitbucket 4.latest doing prune-objects\n(with auto-gc disabled)?\n\nAndreas\n\n-- \n\"Totally trivial. Famous last words.\"\nFrom: Linus Torvalds <torvalds@*.org>\nDate: Fri, 22 Jan 2010 07:29:21 -0800\n"}]}