Changestore error: Version mismatch

I upgraded from my distribution provided pre-1.0 version of pijul to a cargo install of v1.0.0-alpha.48 recently.

Today, when attempting to get the latest pijul sources (so that I can use the new identity/author stuffs), I got the following error:

jakimfett@system:~/run/pijul$ RUST_LOG="pijul=debug,libpijul::apply=debug,libpijul::output=debug" pijul clone https://nest.pijul.com/pijul/pijul

(...snip long seemingly irrelevant bits...)

[2021-09-26T03:19:07Z DEBUG pijul::remote::http] response Response { url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("nest.pijul.com")), port: None, path: "/pijul/pijul/.pijul", query: Some("change=OMTQVGUEGSDJLMQULVJBZUZGHVH5YUABMELWPTD6CQ66P7OACYMAC"), fragment: None }, status: 200, headers: {"date": "Sun, 26 Sep 2021 03:19:07 GMT", "content-length": "1733", "connection": "keep-alive", "strict-transport-security": "max-age=0; includeSubDomains; preload", "cache-control": "public, max-age=14400", "cf-cache-status": "HIT", "age": "272", "last-modified": "Sun, 26 Sep 2021 03:14:35 GMT", "accept-ranges": "bytes", "expect-ct": "max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\"", "report-to": "{\"endpoints\":[{\"url\":\"https:\/\/a.nel.cloudflare.com\/report\/v3?s=2HCWXTejIcclUGtrhYVdd83d2qytKx1YXj4c5hSutxSvO4i0rJ47039kGv11084MMO4qcYIE1YYXsWVgidMeLO7F3HfvAEqAD0VucMyzkOglKWtWqlQPl5laFzmKv4fzNA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}", "nel": "{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}", "server": "cloudflare", "cf-ray": "694959529e5af581-SEA", "alt-svc":Downloading changes [==============================================>   ] 574/616                                                                                                                                                              
           Applying [======================================>           ] 473/616                                                                                                                                                              
[2021-09-26T03:19:08Z DEBUG pijul::remote] applied
[2021-09-26T03:19:08Z DEBUG pijul::remote] to_apply: SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:19:08Z DEBUG pijul::remote] waiting for SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:19:08Z DEBUG pijul::remote] recv SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:19:08Z INFO  pijul::remote] Applying SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:19:08Z DEBUG pijul::remote] apply
[2021-09-26T03:19:08Z DEBUG pijul::remote::http] sent
[2021-09-26T03:19:08Z DEBUG pijul::remote::http] downloading RZ2FSIQ2ZOTTORLX432W7GWOTHQQ544ARFYI7NPNXSCWIK2RO4LAC
[2021-09-26T03:19:08Z DEBUG pijul::remote::http] waiting for process 14
[2021-09-26T03:19:08Z DEBUG pijul::remote::http] sending XF3FRWJ6MFZAMR2NFEBICRCG42QEPSKSWJSBOJYLA3LX2UYJ5FMQC
[2021-09-26T03:19:08Z DEBUG pijul::progress] borrow_mut
[2021-09-26T03:19:08Z DEBUG pijul::progress] restart
[2021-09-26T03:19:08Z DEBUG pijul::remote::http] err for XF3FRWJ6MFZAMR2NFEBICRCG42QEPSKSWJSBOJYLA3LX2UYJ5FMQC
Error: Changestore error: Version mismatch

Subsequent attempts seem to fail at different places in the download/patch process…

(...again snip...)

[2021-09-26T03:37:10Z DEBUG libpijul::apply] Deleting V(ChangeId(SXEYMYF7P4RZM)[1090972:1091001]) V(ChangeId(XSEODPNEN2Y2S)[676:678]) ChangeId(AAAAAAAAAAAAA) PSEUDO | PARENT
[2021-09-26T03:37:10Z INFO  libpijul::apply] repairing missing contexts
[2021-09-26T03:37:10Z DEBUG libpijul::apply] repairing missing context for V(ChangeId(QJXNUQFJOAPQS)[0:62247])
[2021-09-26T03:37:10Z INFO  libpijul::apply] done applying change
[2021-09-26T03:37:10Z DEBUG pijul::remote] applied
[2021-09-26T03:37:10Z DEBUG pijul::remote] to_apply: SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:37:10Z DEBUG pijul::remote] waiting for SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:37:10Z DEBUG pijul::remote] recv SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:37:10Z INFO  pijul::remote] Applying SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC
[2021-09-26T03:37:10Z DEBUG pijul::remote] apply
[2021-09-26T03:37:10Z DEBUG libpijul::apply] apply_change "SBSM3VZVFD2A5MD5P3XEUH4LFONYABZCKRNAGIHGTSZOG2QS5SYAC"
[2021-09-26T03:37:10Z DEBUG pijul::remote::http] sent
[2021-09-26T03:37:10Z DEBUG pijul::remote::http] downloading RZ2FSIQ2ZOTTORLX432W7GWOTHQQ544ARFYI7NPNXSCWIK2RO4LAC
[2021-09-26T03:37:10Z DEBUG pijul::remote::http] waiting for process 14
[2021-09-26T03:37:10Z DEBUG pijul::remote::http] sending XF3FRWJ6MFZAMR2NFEBICRCG42QEPSKSWJSBOJYLA3LX2UYJ5FMQC
[2021-09-26T03:37:10Z DEBUG pijul::progress] borrow_mut
[2021-09-26T03:37:10Z DEBUG pijul::progress] restart
[2021-09-26T03:37:10Z DEBUG pijul::remote::http] err for XF3FRWJ6MFZAMR2NFEBICRCG42QEPSKSWJSBOJYLA3LX2UYJ5FMQC
Error: Changestore error: Version mismatch

…but they all fail with that final statement of “Version mismatch”.
Any ideas what could cause this behavior?


I saw the clone issues and interpreting errors as relevant but neither gave me a path forward in fixing the issue myself.

Have attempted to find the ‘beta’ channel in cargo, but either it’s not a thing (yet?) or my cargo-fu is weak, quite possibly the latter.

Hi! I can’t reproduce, unfortunately. It seems to always choke on XF3FR…, which seems to be the oldest patch in the history of Pijul with the new format. Maybe upgrading to the latest Pijul from crates.io could fix it?
cargo install --version "~1.0.0-alpha" pijul