Skip to content

Debian BMv2 repository seems broken #5723

Description

@fruffy

Seeing this message, strange error.

[10](https://github.com/p4lang/p4c/actions/runs/30682694536/job/91337190222?pr=5720#step:3:717)
  Err:47 http://mirror.aardsoft.fi/opensuse/repositories/home%3A/p4lang/xUbuntu_22.04  p4lang-bmv2 1.15.0-9
    File has unexpected size (9398826 != 9398832). Mirror sync in progress? [IP: 95.216.238.135 80]
    Hashes of expected file:
     - SHA256:b5fccd9285011af0f967bc0c180e7d9cc3eae0cb5577894e9a78b948da981cec
     - SHA1:f1a99e27316ddceda7fa5a676c0dcea0b0f2d452 [weak]
     - MD5Sum:8104a4ea635aa7b3ecda55f44bf0a30e [weak]
     - Filesize:9398832 [weak]
  Get:38 http://azure.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libprotoc-dev amd64 3.12.4-1ubuntu7.22.04.6 [999 kB]
  Get:39 http://azure.archive.ubuntu.com/ubuntu jammy-updates/universe amd64 protobuf-compiler amd64 3.12.4-1ubuntu7.22.04.6 [29.2 kB]
  Get:40 http://azure.archive.ubuntu.com/ubuntu jammy-updates/main amd64 python3-protobuf amd64 3.12.4-1ubuntu7.22.04.6 [359 kB]
  Get:41 http://azure.archive.ubuntu.com/ubuntu jammy/universe amd64 protobuf-compiler-grpc amd64 1.30.2-3build6 [185 kB]
  Get:42 http://azure.archive.ubuntu.com/ubuntu jammy/universe amd64 python3-grpcio amd64 1.30.2-3build6 [1281 kB]
  Get:43 http://azure.archive.ubuntu.com/ubuntu jammy/universe amd64 libnanomsg-dev amd64 1.1.5+dfsg-1 [39.9 kB]
  Get:44 http://azure.archive.ubuntu.com/ubuntu jammy/universe amd64 python3-thrift amd64 0.16.0-2 [65.5 kB]
  Get:45 http://azure.archive.ubuntu.com/ubuntu jammy/universe amd64 thrift-compiler amd64 0.16.0-2 [1342 kB]
  E: Failed to fetch http://mirror.aardsoft.fi/opensuse/repositories/home%3A/p4lang/xUbuntu_22.04/amd64/p4lang-bmv2_1.15.0-9_amd64.deb  File has unexpected size (9398826 != 9398832). Mirror sync in progress? [IP: 95.216.238.135 80]
     Hashes of expected file:
      - SHA256:b5fccd9285011af0f967bc0c180e7d9cc3eae0cb5577894e9a78b948da981cec
      - SHA1:f1a99e27316ddceda7fa5a676c0dcea0b0f2d452 [weak]
      - MD5Sum:8104a4ea635aa7b3ecda55f44bf0a30e [weak]
  Fetched 20.9 MB in 4s (5628 kB/s)
      - Filesize:9398832 [weak]
  E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Activity

  1. added
    infrastructureTopics related to code style and build and test infrastructure.
    on Aug 1, 2026
  2. chreekat commented on Aug 1, 2026

    @chreekat
    Contributor

    If the mirror updates aren't atomic -- as the error message itself suggests -- then that might have actually been the problem. There was a "package refresh" today that does an in-place rebuild of the existing packages. https://github.com/chreekat/p4lang-packages/actions/runs/30680178416.

    Let's keep this open -- I'd like to avoid the problem in the future.

  3. chreekat commented on Aug 1, 2026

    @chreekat
    Contributor

    In the meanwhile, you can just rerun the job and it should work.

  4. chreekat commented on Aug 1, 2026

    @chreekat
    Contributor

    Hm looks like it happened at a different time, too, so maybe it isn't transitory. I'll have to look at it on Monday.

  5. chreekat commented on Aug 1, 2026

    @chreekat
    Contributor

    ... Or maybe it was just a long window. I reran the failure I saw, and sure enough, it worked.

  6. fruffy commented on Aug 1, 2026

    @fruffy
    CollaboratorAuthor

    ... Or maybe it was just a long window. I reran the failure I saw, and sure enough, it worked.

    Fingers crossed! Was broken for quite some time. Let's hope its resolved

  7. fruffy commented on Aug 1, 2026

    @fruffy
    CollaboratorAuthor

    Nope, still fails: #5720

  8. jafingerhut commented on Aug 2, 2026

    @jafingerhut
    Contributor

    This kind of thing should only happen when a PR on the https://github.com/p4lang/behaviorial-model repository is merged, true? Or is there some other trigger that we know of that causes this apparently-corrupted image to be written?

  9. chreekat commented on Aug 3, 2026

    @chreekat
    Contributor

    In April, I set up a Package Refresh job. All it does is trigger a rebuild of the existing packages on OBS. This was purely a backstop to prevent expired signatures (the original problem I set out to fix).

    The Package Refresh runs quarterly, and the last one was on August 1. So there is a possible trigger for new packages.

    That doesn't explain why the set of deployed packages would be inconsistent.

    I have a hunch, but it's probably wrong. I'll do some analysis.

  10. chreekat commented on Aug 3, 2026

    @chreekat
    Contributor

    @fruffy I double checked the PR you mentioned, #5720, and it seems like it passed all its CI. Plus, I don't see any more failures in the repo. I also checked the files on the mirror -- now they match the expected digest sums.

    I think this truly was caused by a non-atomic mirror update.

    The root cause is probably that the OBS repository system wasn't designed for in-place updates. (I'd suggest they should still update atomically, though...)

    I'm just about done pushing new packages (complete with new versions) on every tagged release of bmv2 p4c, pi, etc. I may simply retire the "Package Refresh" workflow at that point.

    If one of these packages goes ~4 years without a single change, the deb signatures will still expire. But I think we should just cross that bridge when we get to it.

  11. fruffy commented on Aug 3, 2026

    @fruffy
    CollaboratorAuthor

    I double checked the PR you mentioned, #5720, and it seems like it passed all its CI

    I reran CI three times, in intervals. The fourth attempt succeeded. We should monitor this and check whether it happens again on the next refresh. This time the packages were out of sync for ~2 days

  12. chreekat commented on Aug 3, 2026

    @chreekat
    Contributor

    I found this issue that indicates suse repos may be out of sync for very long stretches of time indeed: systemd/mkosi#4365

    I do wonder if that limits the long-term viability of OBS.

  13. fruffy commented on Aug 3, 2026

    @fruffy
    CollaboratorAuthor

    I found this issue that indicates suse repos may be out of sync for very long stretches of time indeed: systemd/mkosi#4365

    I do wonder if that limits the long-term viability of OBS.

    Thanks for investigating this! Not sure what the takeaway from that thread is. Maybe we can pile on?

  14. chreekat commented on Aug 5, 2026

    @chreekat
    Contributor

    I don't think so -- I suspect they're tightly resource constrained and doing the best they can.

    If it becomes a constant problem for us, we'll just have to build and host the debs somewhere else. Like.. GitHub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

infrastructureTopics related to code style and build and test infrastructure.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions