The save fails because the underlying SQLite library created temporary files on behalf of Core Data. You may have seen a file like this. Usually this file has the suffix “-journal”. When you activate sandboxing your application is only are allowed to read and write to the store file itself and not to the “-journal” file. This explains why the save of the context fails.
Sandboxing is incompatible with the default way of saving Core Data files. Developers filed bugs about this as soon as sandboxing was announced last June, but there has been no change. The workaround is to turn off database journaling, which puts your data at risk in the event of a crash or power failure.