Crash when accessing Core Data because file couldn't be opened

We have a crash regarding to Core Data access that was not reproducible in our side but the crash count keeps increasing with the last stack trace is assertionFailure from Apple internal SDK.

The last stack trace before the assertionFailure by system is our code initializing CoreData in DataContainer.init(name:bundle:inMemory:) where we will try to access CoreData and the error message we found from our 3rd party crash reporter is something like this DataStore/DataContainer.swift:30: Fatal error: Unresolved error Error Domain=NSCocoaErrorDomain Code=256 "The file “Content.sqlite” couldn’t be opened. UserInfo={NSFilePath=/var/mobile/Containers/Data/Application/9DBF262C-851A-486B-90CC-4397A8896525/Library/Application Support/Content.sqlite, NSSQLiteErrorDomain=13}, ["NSSQLiteErrorDomain": 13, "NSFilePath": /var/mobile/Containers/Data/Application/9DBF262C-851A-486B-90CC-4397A8896525/Library/Application Support/Content.sqlite]

That sqlite file is supposed to be file used by Core Data (since we have no other code that access it) and we are quite confused on why sometimes the CoreData cannot be accessed with that kind of error message. So far, we still have no idea to reproduce it and what do to resolve it.

I have submitted the report with bug number: FB14433998

I attached an example of the crash report here too. Please gave us insight on why it happened and how we can prevent it from happening again.

Answered by edysudarto in 799047022

If anyone ever come across this thread and having the same issue, we got a response from Apple DTS in our bug report saying that this is memory shortage issue. Hope it helps.

NSSQLiteErrorDomain=13 is error number 13 from sqlite3.h which is SQLITE_FULL. The device is out of disk space.

Accepted Answer

If anyone ever come across this thread and having the same issue, we got a response from Apple DTS in our bug report saying that this is memory shortage issue. Hope it helps.

NSSQLiteErrorDomain=13 is error number 13 from sqlite3.h which is SQLITE_FULL. The device is out of disk space.

Crash when accessing Core Data because file couldn't be opened
 
 
Q