I was experiencing some glitchy behaviour in High Sierra recently, so I purchased a metal enabled graphics card to upgrade my Mac Pro to Mojave.
Just prior to the upgrade I had some error messages in disk utility that included these lines:
Checking snapshot 1 of 15.
error: inode_val: object (oid 0x3): invalid nchildren (-3)
Snapshot is invalid.
The volume /dev/rdisk1s1 could not be verified completely.
I had tried repairing from the recovery drive, however it wouldn't let me and the trick was to delete all those snapshots in the terminal. It then came up with no issues in disk utility.
Last night I went ahead and upgraded to Mojave, then checked it in disk utility and you guessed it, the errors are back:
"Running First Aid on “Mac OS” (disk1s1)
NOTE: First Aid will temporarily lock the startup volume.
Verifying file system.
Volume could not be unmounted.
Using live mode.
Performing fsck_apfs -n -l -x /dev/rdisk1s1
Checking the container superblock.
Checking the EFI jumpstart record.
Checking the space manager.
Checking the space manager free queue trees.
Checking the object map.
Checking volume.
Checking the APFS volume superblock.
The volume Mac OS was formatted by newfs_apfs (748.1.46) and last modified by apfs_kext (945.260.7).
Checking the object map.
Checking the snapshot metadata tree.
Checking the snapshot metadata.
Checking snapshot 1 of 1.
error: directory valence check: directory (oid 0x3): nchildren (176) does not match drec count (179)
warning: snapshot fsroot tree corruptions are not repaired; they'll go away once the snapshot is deleted
Checking the extent ref tree.
Checking the fsroot tree.
error: directory valence check: directory (oid 0x3): nchildren (203) does not match drec count (206)
Verifying allocated space.
Performing deferred repairs.
error: nchildren of inode object (id 3) does not match expected value
Deferred repairs failed.
The volume /dev/rdisk1s1 could not be verified completely.
File system check exit code is 8.
Restoring the original state found as mounted.
Operation successful."
I can delete the snapshots in the terminal, but each time they are created the error returns and I am then unable to fix it in recovery mode either.
Other than a clean install, which would hopefully fix this, is there any way to stop these snapshot issues? I've not yet done enough work in Mojave to establish whether it will behave any better, but this is clearly wrong.
Just prior to the upgrade I had some error messages in disk utility that included these lines:
Checking snapshot 1 of 15.
error: inode_val: object (oid 0x3): invalid nchildren (-3)
Snapshot is invalid.
The volume /dev/rdisk1s1 could not be verified completely.
I had tried repairing from the recovery drive, however it wouldn't let me and the trick was to delete all those snapshots in the terminal. It then came up with no issues in disk utility.
Last night I went ahead and upgraded to Mojave, then checked it in disk utility and you guessed it, the errors are back:
"Running First Aid on “Mac OS” (disk1s1)
NOTE: First Aid will temporarily lock the startup volume.
Verifying file system.
Volume could not be unmounted.
Using live mode.
Performing fsck_apfs -n -l -x /dev/rdisk1s1
Checking the container superblock.
Checking the EFI jumpstart record.
Checking the space manager.
Checking the space manager free queue trees.
Checking the object map.
Checking volume.
Checking the APFS volume superblock.
The volume Mac OS was formatted by newfs_apfs (748.1.46) and last modified by apfs_kext (945.260.7).
Checking the object map.
Checking the snapshot metadata tree.
Checking the snapshot metadata.
Checking snapshot 1 of 1.
error: directory valence check: directory (oid 0x3): nchildren (176) does not match drec count (179)
warning: snapshot fsroot tree corruptions are not repaired; they'll go away once the snapshot is deleted
Checking the extent ref tree.
Checking the fsroot tree.
error: directory valence check: directory (oid 0x3): nchildren (203) does not match drec count (206)
Verifying allocated space.
Performing deferred repairs.
error: nchildren of inode object (id 3) does not match expected value
Deferred repairs failed.
The volume /dev/rdisk1s1 could not be verified completely.
File system check exit code is 8.
Restoring the original state found as mounted.
Operation successful."
I can delete the snapshots in the terminal, but each time they are created the error returns and I am then unable to fix it in recovery mode either.
Other than a clean install, which would hopefully fix this, is there any way to stop these snapshot issues? I've not yet done enough work in Mojave to establish whether it will behave any better, but this is clearly wrong.