OK, I found the issue, but since I have written all of this, I will still post it in case others have the same problem.
I have been developing a Mac app and an iPhone app, synchronizing Cored Data databases. Until this weekend everything was working well. Every time something didn't work, I could debug it and figure out the issue. However, it seems like now all of my queries never complete.
Here is one section of code which used to work but now doesn't.
CKRecordID *itemRecordID = [[CKRecordID alloc] initWithRecordName:itemRecord.recordKey];
CKReference *itemRecordTypeReference = [[CKReference alloc] initWithRecordID:itemRecordID action:CKReferenceActionNone];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"itemRecord == %@", itemRecordTypeReference];
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"AttributeValueRecordType" predicate:predicate];
[self.bubingaDatabase performQuery:query inZoneWithID:nil completionHandler:^(NSArray *results, NSError *error) {
if(error) {
}
else{
}
I have appropriate code after the query to handle errors and to process the results.
However, the if(error) line never gets hit. I share this object, CloudManger.h and .m in both the Mac app and the iPhone app, and I swear it was working. Now the queries never return at all. I am stuck