merge commits may harm your cache maybe?

  • Done
  • quality assurance status badge
Details
5 participants
  • Paul Szenher
  • Guillaume Le Vaillant
  • Liliana Marie Prikler
  • Roman Riabenko
  • Simon Tournier
Owner
unassigned
Submitted by
Roman Riabenko
Severity
important
Merged with
R
R
Roman Riabenko wrote on 23 Sep 2023 21:02
guix reconfigure error no match for id 4f35ff1275e05be31f5d41464ccf147e9dbfd016
(address . bug-guix@gnu.org)
42da01c733d7a5eb75930d7f4b8d47b90da9bd45.camel@riabenko.com
I am trying to upgrade my guix systems. I ran guix pull and now I am
trying to run guix system reconfigure. It failed on two different
machines with the same backtrace. Please see the full backtrace
attached. The error message from it:

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Git error: object not found - no match for id
(4f35ff1275e05be31f5d41464ccf147e9dbfd016)


$ guix describe
Generation 28 Sep 23 2023 19:30:36 (current)
guix 4f35ff1
branch: master
commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016

Considering that I experience it on two guix machines with different
system configurations, I assume that there is some bug somewhere.

Roman
$ sudo guix system reconfigure /etc/config.scm
Password:
Backtrace:
In guix/ui.scm:
2286:10 19 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 18 (with-exception-handler _ _ #:unwind? _ # _)
In guix/status.scm:
859:3 17 (_)
839:4 16 (call-with-status-report _ _)
In guix/scripts/system.scm:
1278:4 15 (_)
In ice-9/boot-9.scm:
1752:10 14 (with-exception-handler _ _ #:unwind? _ # _)
In guix/store.scm:
659:37 13 (thunk)
1298:8 12 (call-with-build-handler #<procedure 7f20532e8b40 at g…> …)
2168:25 11 (run-with-store #<store-connection 256.99 7f2057bfd410> …)
In guix/scripts/system.scm:
1302:15 10 (_ _)
831:5 9 (perform-action reconfigure #<<image> name: #f format:…> …)
In guix/scripts/system/reconfigure.scm:
346:3 8 (check-forward-update _ #:current-channels _)
In srfi/srfi-1.scm:
691:23 7 (filter-map #<procedure 7f205894eba0 at guix/scripts…> . #)
In guix/scripts/system/reconfigure.scm:
353:39 6 (_ #<<channel> name: guix url: "https://git.savannah.gn…>)
In guix/git.scm:
481:21 5 (update-cached-checkout _ #:ref _ #:recursive? _ # _ # _ …)
367:15 4 (reference-available? _ _)
In git/commit.scm:
172:8 3 (_ #<git-repository 24fd030> #<oid 4f35ff1275e05be31f5d…>)
In git/bindings.scm:
77:2 2 (raise-git-error _)
In ice-9/boot-9.scm:
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Git error: object not found - no match for id (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEbyuIUwJNVUrtp3hK60bLvjKDmmkFAmUPNlcACgkQ60bLvjKD
mmndxBAAiARKkdpB3iIKMaNjaZHCpZhdeIWGIMzlfik22TkSB6P3NYvbqr87n8T8
opzOjv+1FMdVQAB5VWmMiqtQSsJlTtdDpGLiDRn0k7Ng7PwcP48YvvC1TXToKSNa
DPx3WbVEi2CvBEYZbIKGvfiukjkzb/xRL4O3foSPBN009N7P3HNpgJmnEL4R8SgD
6Gz4OP2uJ4PZFoy4r+aT2RXXX7YXgb/LICmvpRmqtsIQNYqDGmW4JYNH9VGzdNSV
oMm1/PgIgb3XccinQD3AkwUJQ1iaV7/awMixtH1nM9b4huDj3aO1FmEEok6Co9jq
GuhmKxX2A0Kr1W9Wq8kc3SrxbI9oEw0fPhkG8qSfIQvvPReGRMMvetBDvPF2alsr
PaC0bpSGOsxKv3JoojSgQ4FalugZqjzZIG08kq3sb/D051s+xG0mIw63Hx1NS3wA
ZjdgvzRbHGgpuaC4Usv4B2TZyJ5ogZChGmhyAySCzYiPkcH1esYCoBmSl9bCT2Iu
DAj6N+kds8j7efcdhhr00fvxJNE/WNNt6eDkWRgQbRqEuXgDCcOAern4g6wlYhhO
UqcBUhM84Pus5V10IohVA0ynlJgupxq4QlhflBdLn724eDN6OwmUyoeW9Bk3Ck37
05xy/F3JUlAun6WlxpdureIbeyhHu4SvPS3ONvk4D+9etmrrQKI=
=IISO
-----END PGP SIGNATURE-----


L
L
Liliana Marie Prikler wrote on 24 Sep 2023 10:37
2e78ea3a25d4da00c841c8dd35f0e533700bf659.camel@gmail.com
Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
Toggle quote (19 lines)
> I am trying to upgrade my guix systems. I ran guix pull and now I am
> trying to run guix system reconfigure. It failed on two different
> machines with the same backtrace. Please see the full backtrace
> attached. The error message from it:
>
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> Git error: object not found - no match for id
> (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
>
>
> $ guix describe
> Generation 28   Sep 23 2023 19:30:36    (current)
>   guix 4f35ff1
>     repository URL: https://git.savannah.gnu.org/git/guix.git
>     branch: master
>     commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
>
> Considering that I experience it on two guix machines with different
> system configurations, I assume that there is some bug somewhere.
Experiencing the same for commit
35fd25af9bbcce84908101a9f487ba106a8d6df7. I would hazard a guess that
it's due to them being merge commits. Interestingly, allow-downgrades
does not have an effect on this message.

Cheers
G
G
Guillaume Le Vaillant wrote on 24 Sep 2023 10:49
Re: bug#66169: guix reconfigure error no match for id 4f35ff1275e05be31f5d41464ccf147e9dbfd016
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
87lecwq7kb.fsf@kitej
Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:

Toggle quote (27 lines)
> Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
>> I am trying to upgrade my guix systems. I ran guix pull and now I am
>> trying to run guix system reconfigure. It failed on two different
>> machines with the same backtrace. Please see the full backtrace
>> attached. The error message from it:
>>
>> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
>> Git error: object not found - no match for id
>> (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
>>
>>
>> $ guix describe
>> Generation 28   Sep 23 2023 19:30:36    (current)
>>   guix 4f35ff1
>>     repository URL: https://git.savannah.gnu.org/git/guix.git
>>     branch: master
>>     commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
>>
>> Considering that I experience it on two guix machines with different
>> system configurations, I assume that there is some bug somewhere.
> Experiencing the same for commit
> 35fd25af9bbcce84908101a9f487ba106a8d6df7. I would hazard a guess that
> it's due to them being merge commits. Interestingly, allow-downgrades
> does not have an effect on this message.
>
> Cheers

I reconfigured two machines using commit
4f35ff1275e05be31f5d41464ccf147e9dbfd016, and it succeeded on both
machines, I didn't get this "no match for id" issue.
That's strange...
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCZQ/4NA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j82bAEAlvkN9ndhhJXM7kSs8WlkOhITOCgzs8GirMqx
4nfk1FcA+wTTVGyWXv2S2W/TLBnE7ZS5Ws/VruZSV00JiPzyOAPw
=GuUC
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 24 Sep 2023 10:56
(name . Guillaume Le Vaillant)(address . glv@posteo.net)
4d6bf9b098374bcb1de0fc46347378dc57b4c043.camel@gmail.com
Am Sonntag, dem 24.09.2023 um 08:49 +0000 schrieb Guillaume Le
Vaillant:
Toggle quote (35 lines)
> Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:
>
> > Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
> > > I am trying to upgrade my guix systems. I ran guix pull and now I
> > > am
> > > trying to run guix system reconfigure. It failed on two different
> > > machines with the same backtrace. Please see the full backtrace
> > > attached. The error message from it:
> > >
> > > ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> > > Git error: object not found - no match for id
> > > (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
> > >
> > >
> > > $ guix describe
> > > Generation 28   Sep 23 2023 19:30:36    (current)
> > >   guix 4f35ff1
> > >     repository URL: https://git.savannah.gnu.org/git/guix.git
> > >     branch: master
> > >     commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
> > >
> > > Considering that I experience it on two guix machines with
> > > different
> > > system configurations, I assume that there is some bug somewhere.
> > Experiencing the same for commit
> > 35fd25af9bbcce84908101a9f487ba106a8d6df7.  I would hazard a guess
> > that it's due to them being merge commits.  Interestingly,
> > allow-downgrades does not have an effect on this message.
> >
> > Cheers
>
> I reconfigured two machines using commit
> 4f35ff1275e05be31f5d41464ccf147e9dbfd016, and it succeeded on both
> machines, I didn't get this "no match for id" issue.
> That's strange...
Do you have provenance tracking on your machines (the default)?
L
L
Liliana Marie Prikler wrote on 24 Sep 2023 11:16
Re: guix reconfigure error no match for id 4f35ff1275e05be31f5d41464ccf147e9dbfd016
(name . Guillaume Le Vaillant)(address . glv@posteo.net)
55c9e517e9d10fb8ac17b17ffebf14f1fff66a29.camel@gmail.com
Am Sonntag, dem 24.09.2023 um 10:37 +0200 schrieb Liliana Marie
Prikler:
Toggle quote (7 lines)
> Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
> > ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> > Git error: object not found - no match for id
> > (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
> Experiencing the same for commit
> 35fd25af9bbcce84908101a9f487ba106a8d6df7.

Am Sonntag, dem 24.09.2023 um 08:49 +0000 schrieb Guillaume Le
Vaillant:
Toggle quote (4 lines)
> I reconfigured two machines using commit
> 4f35ff1275e05be31f5d41464ccf147e9dbfd016, and it succeeded on both
> machines[.]

I now have a workaround that looks quite odd. If you 
$ sudo rm -rf /root/.cache/guix
guix system will rerun the indexing and thus pick up the new commits.
I will dub this "advanced cache invalidation" since it appears as
though we are looking up commits in the wrong cache.

Cheers
G
G
Guillaume Le Vaillant wrote on 24 Sep 2023 11:22
Re: bug#66169: guix reconfigure error no match for id 4f35ff1275e05be31f5d41464ccf147e9dbfd016
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
87h6njrkgv.fsf@kitej
Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:

Toggle quote (39 lines)
> Am Sonntag, dem 24.09.2023 um 08:49 +0000 schrieb Guillaume Le
> Vaillant:
>> Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:
>>
>> > Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
>> > > I am trying to upgrade my guix systems. I ran guix pull and now I
>> > > am
>> > > trying to run guix system reconfigure. It failed on two different
>> > > machines with the same backtrace. Please see the full backtrace
>> > > attached. The error message from it:
>> > >
>> > > ice-9/boot-9.scm:1685:16: In procedure raise-exception:
>> > > Git error: object not found - no match for id
>> > > (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
>> > >
>> > >
>> > > $ guix describe
>> > > Generation 28   Sep 23 2023 19:30:36    (current)
>> > >   guix 4f35ff1
>> > >     repository URL: https://git.savannah.gnu.org/git/guix.git
>> > >     branch: master
>> > >     commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
>> > >
>> > > Considering that I experience it on two guix machines with
>> > > different
>> > > system configurations, I assume that there is some bug somewhere.
>> > Experiencing the same for commit
>> > 35fd25af9bbcce84908101a9f487ba106a8d6df7.  I would hazard a guess
>> > that it's due to them being merge commits.  Interestingly,
>> > allow-downgrades does not have an effect on this message.
>> >
>> > Cheers
>>
>> I reconfigured two machines using commit
>> 4f35ff1275e05be31f5d41464ccf147e9dbfd016, and it succeeded on both
>> machines, I didn't get this "no match for id" issue.
>> That's strange...
> Do you have provenance tracking on your machines (the default)?

Yes. I use an additional channel, not only the "guix" default channel.
Maybe that makes a difference...
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCZRAAoA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j9xAQD/X6d3eRIFdyKbTTJzquiA7fMir5C250qvEdO0
POW20E8A/j6XUa0/e9hRhR5g9WqTHqCWecuHLV1zAjj8jtAptnYe
=H8LH
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 24 Sep 2023 19:24
(address . control@debbugs.gnu.org)
ee7fd83cc9364ea60fc3d4c98a0e5922b7dceeec.camel@gmail.com
merge 66169 66182
retitle 66169 merge commits may harm your cache maybe?
severity 66169 important
thanks
P
P
Paul Szenher wrote on 25 Sep 2023 10:30
(address . bug-guix@gnu.org)
fc89b990-15cd-216e-b211-c78563c9c994@gmail.com
On 9/24/23 5:22 AM, Guillaume Le Vaillant wrote:
Toggle quote (44 lines)
> Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:
>
>> Am Sonntag, dem 24.09.2023 um 08:49 +0000 schrieb Guillaume Le
>> Vaillant:
>>> Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:
>>>
>>>> Am Samstag, dem 23.09.2023 um 22:02 +0300 schrieb Roman Riabenko:
>>>>> I am trying to upgrade my guix systems. I ran guix pull and now I
>>>>> am
>>>>> trying to run guix system reconfigure. It failed on two different
>>>>> machines with the same backtrace. Please see the full backtrace
>>>>> attached. The error message from it:
>>>>>
>>>>> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
>>>>> Git error: object not found - no match for id
>>>>> (4f35ff1275e05be31f5d41464ccf147e9dbfd016)
>>>>>
>>>>>
>>>>> $ guix describe
>>>>> Generation 28   Sep 23 2023 19:30:36    (current)
>>>>>   guix 4f35ff1
>>>>>     repository URL: https://git.savannah.gnu.org/git/guix.git
>>>>>     branch: master
>>>>>     commit: 4f35ff1275e05be31f5d41464ccf147e9dbfd016
>>>>>
>>>>> Considering that I experience it on two guix machines with
>>>>> different
>>>>> system configurations, I assume that there is some bug somewhere.
>>>> Experiencing the same for commit
>>>> 35fd25af9bbcce84908101a9f487ba106a8d6df7.  I would hazard a guess
>>>> that it's due to them being merge commits.  Interestingly,
>>>> allow-downgrades does not have an effect on this message.
>>>>
>>>> Cheers
>>>
>>> I reconfigured two machines using commit
>>> 4f35ff1275e05be31f5d41464ccf147e9dbfd016, and it succeeded on both
>>> machines, I didn't get this "no match for id" issue.
>>> That's strange...
>> Do you have provenance tracking on your machines (the default)?
>
> Yes. I use an additional channel, not only the "guix" default channel.
> Maybe that makes a difference...

Also reporting similar issues on a Guix machine with multiple channels.

In my case, I have a local 'file://...' channel that I use for
development, and have found that the following sequence of actions will
consistently exhibit the above behavior on guix master:

1. Commit update to local channel git
2. guix pull
3. sudo guix system reconfigure

The issue is resolved by removal of the root user's guix cache in
/root/.cache/guix (forcing a full fetch during system reconfigure), but
repeating the above steps will cause the issue to reoccur.

I suspect it might have to do with the recent changes made to the
'reference-available?' function in
6d33c1f8061e86d63ab5c9ec75df9c58130c7264 (though it's not entirely clear
why that change would cause this failure).

After downgrading my "guix" channel to
f45c0c82289d409b4fac00464ea8b323839ba53f (the commit immediately prior
to the above change) I am again able to receive changes from my local
channel without issue.
S
S
Simon Tournier wrote on 25 Sep 2023 12:25
874jji7dnz.fsf@gmail.com
Hi,

On Sat, 23 Sep 2023 at 22:02, Roman Riabenko via Bug reports for GNU Guix <bug-guix@gnu.org> wrote:

Toggle quote (39 lines)
> Backtrace:
> In guix/ui.scm:
> 2286:10 19 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
> 1752:10 18 (with-exception-handler _ _ #:unwind? _ # _)
> In guix/status.scm:
> 859:3 17 (_)
> 839:4 16 (call-with-status-report _ _)
> In guix/scripts/system.scm:
> 1278:4 15 (_)
> In ice-9/boot-9.scm:
> 1752:10 14 (with-exception-handler _ _ #:unwind? _ # _)
> In guix/store.scm:
> 659:37 13 (thunk)
> 1298:8 12 (call-with-build-handler #<procedure 7f20532e8b40 at g…> …)
> 2168:25 11 (run-with-store #<store-connection 256.99 7f2057bfd410> …)
> In guix/scripts/system.scm:
> 1302:15 10 (_ _)
> 831:5 9 (perform-action reconfigure #<<image> name: #f format:…> …)
> In guix/scripts/system/reconfigure.scm:
> 346:3 8 (check-forward-update _ #:current-channels _)
> In srfi/srfi-1.scm:
> 691:23 7 (filter-map #<procedure 7f205894eba0 at guix/scripts…> . #)
> In guix/scripts/system/reconfigure.scm:
> 353:39 6 (_ #<<channel> name: guix url: "https://git.savannah.gn…>)
> In guix/git.scm:
> 481:21 5 (update-cached-checkout _ #:ref _ #:recursive? _ # _ # _ …)
> 367:15 4 (reference-available? _ _)
> In git/commit.scm:
> 172:8 3 (_ #<git-repository 24fd030> #<oid 4f35ff1275e05be31f5d…>)
> In git/bindings.scm:
> 77:2 2 (raise-git-error _)
> In ice-9/boot-9.scm:
> 1685:16 1 (raise-exception _ #:continuable? _)
> 1685:16 0 (raise-exception _ #:continuable? _)
>
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> Git error: object not found - no match for id (4f35ff1275e05be31f5d41464ccf147e9dbfd016)

This part:

In guix/git.scm:
481:21 5 (update-cached-checkout _ #:ref _ #:recursive? _ # _ # _ …)
367:15 4 (reference-available? _ _)

rings this bell 6d33c1f8061e86d63ab5c9ec75df9c58130c7264. Hum, indeed
my bad, I missed a corner-case, reviewers too, and the patch had been in
the tracked for weeks. Arf. :-)

Well, I guess it is now fixed by
94f3831e5bb1e04eeb3a0e7d31a0675208ce6f4c.

Maybe another discrepancy is still around.

Does the usual “guix pull && guix system reconfigure” work?

Cheers,
simon
S
S
Simon Tournier wrote on 11 Oct 2023 16:12
875y3dtfi0.fsf@gmail.com
Hi,

On Mon, 25 Sep 2023 at 12:25, Simon Tournier <zimon.toutoune@gmail.com> wrote:

Toggle quote (3 lines)
> Well, I guess it is now fixed by
> 94f3831e5bb1e04eeb3a0e7d31a0675208ce6f4c.

Closing.

Let me know if another discrepancy is around.

Cheers,
simon
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 66169@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 66169
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch