 ///         tableView.endUpdates()
 ///     }
 public protocol FetchedRecordsControllerDelegate : class {
-    /// TODO: document that these are called on mainQueue
+    /// TODO: document that these are called on controller.queue
     func controllerWillChangeRecords<T>(controller: FetchedRecordsController<T>)
     
-    /// TODO: document that these are called on mainQueue
+    /// TODO: document that these are called on controller.queue
     func controller<T>(controller: FetchedRecordsController<T>, didChangeRecord record: T, withEvent event:FetchedRecordsEvent)
     
-    /// TODO: document that these are called on mainQueue
+    /// TODO: document that these are called on controller.queue
     func controllerDidChangeRecords<T>(controller: FetchedRecordsController<T>)
 }
 

            // No changes?
            guard !changes.isEmpty else { return }
            
            dispatch_async(controller.mainQueue) {
                // Invalidated?
                guard let controller = self.controller else { return }
                

        self.source = source
        self.database = database
        self.isSameRecordBuilder = isSameRecordBuilder
        self.queue = queue
    }
    
    /// Executes the controller's fetch request.
