Search code examples
iosxcodecore-datavfs

Coredata VFS flags - strange log


Since my latest update of Xcode, I get repeatedly the following log in my Coredata based app:

[logging] flag(s) 0x00000020 are reserved for VFS use and do not affect behaviour when passed to sqlite3_open_v2  

Is this simply log noise or is it in any way relevant to me?

Update:
This happens under Xcode 13.2.1 on an iPhone with iOS 15.4. It does not happen on a Simulator with iOS 15.2.


Solution

  • I'm pretty sure this is something you can ignore, that will probably be fixed when iOS 15.4 is out of beta.

    According to the SQLite file-open flag documentation,

    • Flag value 0x00000020 is SQLITE_OPEN_AUTOPROXY, for what that's worth
    • This flag is one of several flags that "...have historically been ignored by sqlite3_open_v2()", however...
    • "...future versions of SQLite might change so that an error is raised if any of the disallowed bits are passed into sqlite3_open_v2()"

    What this seems to say is that the flag has no effect and hasn't had one for a while, so it doesn't matter if Core Data is using it internally. The message probably means that iOS 15.4 has a newer version of SQLite which has started to print warnings about it but hasn't started causing errors yet.

    I'd expect this to be fixed when 15.4 is released, and in the meantime I encourage you to file a bug with Apple just in case.