Bug 248502 - Running multiple concurrent instances of freebsd-update(8) cause weird errors
Summary: Running multiple concurrent instances of freebsd-update(8) cause weird errors
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 12.1-STABLE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-bugs (Nobody)
Depends on:
Reported: 2020-08-06 16:42 UTC by Moviuro
Modified: 2020-08-06 17:58 UTC (History)
2 users (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Moviuro 2020-08-06 16:42:34 UTC
I tried using freebsd-update(8) at once to update both my system (on /) and my basejail. It did not end well.

  # freebsd-update fetch
  # freebsd-update -b /usr/jails/basejails/12.1_amd64 fetch # at the same time

This will cause lots of weird errors (but it didn't actually break anything, which is a relief):

* Checksum mismatch
* Missing files (patchlist, files.wanted, filelist)
* Patch count errors (was that 21 patches? or 278?)
* etc.

Expected behavior:

* Either fail "another instance of freebsd-update(8) is running in workdir: [...] Remove the lockfile (/path) if you're sure about it."
* Or gracefully handle multiple concurrent freebsd-update(8) by using a specific subdirectory in workdir (e.g. /var/db/freebsd-update/Lw== and L3Vzci9qYWlscy9iYXNlamFpbHMvMTIuMV9hbWQ2NA==, respectively - just a base64 encode of the basedir)