CloudKit query only returns 300 records

My CloudKit query returns only 300 records, when I have got around 500. This is my code.


func getCloudKitMoviesData(viewController: UIViewController) {
        let cloudContainer = CKContainer.defaultContainer()
        let publicDatabase = cloudContainer.publicCloudDatabase
        let predicate = NSPredicate(value: true)
        let query = CKQuery(recordType: "Movies", predicate: predicate)
   
        let queryOperation = CKQueryOperation(query: query)
       
        queryOperation.desiredKeys = ["Title", "Rating", "Genre"]
        queryOperation.queuePriority = .VeryHigh
        queryOperation.recordFetchedBlock = {
            (record: CKRecord!) -> Void in
           
            if let movieRecord = record {
               
                movies.append(movieRecord)
            
            }
        }
        queryOperation.queryCompletionBlock = {
            (cursor:CKQueryCursor?, error: NSError?) -> Void in
  
           if cursor != nil {
                let newOperation = CKQueryOperation(cursor: cursor!)
                newOperation.recordFetchedBlock = {
                    (record: CKRecord!) -> Void in
                   
                    if let movieRecord = record {
                       
                        movies.append(movieRecord)
            
                    }
                }
                newOperation.queryCompletionBlock = queryOperation.queryCompletionBlock
                publicDatabase.addOperation(newOperation)
            }
          
        }
      
        publicDatabase.addOperation(queryOperation)
    }

I have a similar problem. Did you ever find a solution?

CloudKit query only returns 300 records
 
 
Q