5 ms·
Interestingly, the changelogs are silent about a fairly major change to the filesystem when going from 10.3.x to 10.3.3. It seems like APFS was originally inten
by 0x0 9y ago
Interestingly, the changelogs are silent about a fairly major change to the filesystem when going from 10.3.x to 10.3.3. It seems like APFS was originally intended to use a different unicode normalization setup than HFS, but it turned out to be very problematic. After iOS 10.3.0 silently converted all iOS devices from HFS to APFS (!) (and not only was this not specified in the user-visible changelogs, earlier iOS 10.x.x releases did the same dry-run conversion without notice - only stopping short of committing the final type flip - which may explain why iOS OTA upgrades have been somewhat slow to execute - https://www.macobserver.com/analysis/apple-dry-run-apfs-prior-ios-10-3/ https://www.macobserver.com/analysis/apple-dry-run-apfs-prio... ), iOS 10.3.3 adds runtime normalization to the file system. It's unclear what kind of performance hit this has (but I seem to remember reading something about how samba on UNIX taking a hit on file opens in order to support clients specifying incorrect casing, which sounds similar). Apparently an unspecified later version of iOS will perform yet another conversion, from APFS-normalization-preserving to APFS-native-normalization.
More details: https://mjtsai.com/blog/2017/06/27/apfs-native-normalization/ https://mjtsai.com/blog/2017/06/27/apfs-native-normalization...
By the way, if you ever rsync between macOS and Linux you may have noticed (or not) how this unicode normalization messes up filenames and cause duplicates and stale copies when roundtripping, see https://serverfault.com/questions/397420/converting-utf-8-nfd-filenames-to-utf-8-nfc-in-either-rsync-or-afpd https://serverfault.com/questions/397420/converting-utf-8-nf...
..
Also, unrelated, it seems this version of iOS fixes the Broadpwn wifi chip vulnerability (which perhaps could also continue on to compromise the main OS kernel via a DMA attack after compromising the wifi chip) ( http://boosterok.com/blog/broadpwn2/ http://boosterok.com/blog/broadpwn2/ , https://nvd.nist.gov/vuln/detail/CVE-2017-9417 https://nvd.nist.gov/vuln/detail/CVE-2017-9417 )
- timcederman 9y ago> After iOS 10.3.0 silently converted all iOS devices from HFS to APFS (!) (and not only was this not specified in the user-visible changelogs Are you suggesting Apple didn't disclose APFS was coming to 10.3? There was plenty of media coverage ahead of time (e.g. https://9to5mac.com/2017/03/21/what-is-apples-upcoming-apfs-apple-file-system-and-what-it-means-to-you/ https://9to5mac.com/2017/03/21/what-is-apples-upcoming-apfs-...), and it's specifically mentioned in the 10.3 release notes.
- urda 9y agoIt was absolutely disclosed all over, so I'm not sure if this is simply the commentor being wrong (most likely) or a weak jab at Apple. https://developer.apple.com/library/content/releasenotes/General/RN-iOSSDK-10.3/index.html https://developer.apple.com/library/content/releasenotes/Gen...
- sixstringtheory 9y agoThose release notes are intended for their developer audience, not the general end user base. Parent was pointing out that the actual release notes Apple shows you on the device you're about to upgrade did not mention APFS.
- reaperducer 9y agoThe general audience doesn't even know that its phone has a file system, let alone care whether it's HFS, HPFS, APFS, or CP/M. You're complaining that Apple didn't disclose something that only developers care about to the masses.
- 0x0 9y agoThen at least we can agree that a fairly major operation such as converting the entire disk between file systems in a "minor" update wasn't disclosed to the masses, and I think that fact (and that it worked out quite well, apparently, besides the normalization shenanigans) is interesting it its own right.
- otterley 9y agoI think it's important to distinguish a major change from an impactful one. The APFS change is major, but not necessarily impactful in any meaningful sense to users. Apple's not the kind of company that's going to emphasize non-impactful changes to its customer base.
- 9y ago
- noja 9y ago> By the way, if you ever rsync between macOS and Linux... Syncthing handles this with automatic normalization: https://docs.syncthing.net/advanced/folder-autonormalize.html https://docs.syncthing.net/advanced/folder-autonormalize.htm...
- vvhn 9y ago>from APFS-normalization-preserving to APFS-native-normalization. The developer documentation at [1] seems to suggest that "native" normalization is normalization preserving as well and that native normalization is based on storing the hash of the normalized name instead of storing the normalized name itself. " and preserves both case and normalization of the filename on disk in all variants. " and " APFS preserves the normalization of the filename and uses hashes of the normalized form of the filename to provide normalization insensitivity, whereas HFS+ stores the normalized form of the filename on disk to provide normalization insensitivity. " edit - Even the linked blog post says the same thing " macOS 10.13 will also support case-sensitive APFS, which will use native normalization. This is new in the developer beta. The filenames are still stored in the same way as prior APFS (not normalized like with HFS+), but APFS now uses normalization-insensitive hashes ... " >how this unicode normalization messes up filenames and cause duplicates and stale copies when roundtripping Being normalization preserving should fix that, right ? 1 https://developer.apple.com/library/content/documentation/FileManagement/Conceptual/APFS_Guide/FAQ/FAQ.html https://developer.apple.com/library/content/documentation/Fi...
- acranox 9y agoI wonder if the change to the filesystem is why my phones performance feels so sucky the last few months. I have an iPhone 6. it starting hanging for several seconds at various times. It didn't used to suck this much.
- Eric_WVGG 9y agoMost reports say it's faster, the experience on my iPhone SE has certainly been just fine. I would consider backing up, wiping, and restoring from backup perhaps.