mapDB is not storing certain item values following SD card switch

I made a copy of my SD card in preparation for migrating to OH4 (I’m currently on 3.3.0) and I put the copy into my RPi to test it. What I’ve noticed is that mapDB is not storing the values of certain items when they change. This is my mapDB file:

Strategies {
  everyMinute	: "0 * * * * ?"
  everyDay    : "0 0 0 * * ?"

  // if no strategy is specified for an Item entry below, the default will be used
  default = everyChange, restoreOnStartup
}

/*
 * Each line in this section defines for which Item(s) which strategy(ies) should be applied.
 * You can list single items, use "*" for all items or "groupitem*" for all members of a group
 * Item (excl. the group Item itself).
 */
Items {

  // persist the items in these groups on every change and restore them from the db at startup
  gAllDates*: strategy = everyChange, restoreOnStartup
  gRestoreOnReboot*: strategy = everyChange, restoreOnStartup
}

Everything was working fine with the original SD card. As examples of items that are not updating, I have a switch, Awair_CalibrationInProgress, and a datetime, FibaroFloodSensor_KitchenFloor_Temperature_LastUpdate, and although the values are changing (as seen in the events log, and because I manually altered the state of the switch multiple times), no entry appears in the mapDB log indicating that the new value is being stored (store called for...). And so, when the system restarts, an old value is restored for the item.

Both items are members of the gRestoreOnReboot group, and other datetime and switch items are having their values stored correctly.

Any idea what’s going on?

Incidentally, I’m not using zram.

Edit: I made two SD card copies, so I tried the other one. Same behaviour. So it’s not some weird glitch on the card.
Edit of edit: It took two restarts, but mapDB is in fact behaving itself on the second SD card. So it was something about the other card.