async API - CKQuery не применяет дескрипторы сортировки
Я обнаружил, что асинхронная функция CKQuery не применяет SortDescriptors к результатам. Они возвращаются в произвольном порядке. Правильно ли это применяется?
func fetchNoteCloudKit() async throws {
//setup CloudKit settings
let container = CKContainer(identifier: "myContainerName")
let recordType = "Records"
let sortedBy = [NSSortDescriptor(key: "FieldA", ascending: true),NSSortDescriptor(key: "FieldB", ascending: true)]
let sort1 = NSSortDescriptor(key: "FieldA", ascending: true)
let sort2 = NSSortDescriptor(key: "FieldB", ascending: true)
let thisPred = NSPredicate(value: true)
let query = CKQuery(recordType: recordType, predicate: notePred)
//query.sortDescriptors = sortedBy //NOT SORTING RIGHT FOR SOME REASON
query.sortDescriptors = [sort1, sort2] //still not sorting
let result = try await container.privateCloudDatabase.records(matching: query)
for rec in result.0 {
print("RECORD: \(try String(describing: rec.value.get()["FieldA"]))")
}
}
Как указано, я пробовал использовать оба дескриптора сортировки вместе и по отдельности, похоже, это не имеет никакого значения.