Do I manually need to save the managedObjectContext for NSFetchedResultsController if I change some attribute?
You are correct. You need to manually save the context to the store. NSFetchedResultsController grabs data from the context, but does not save data to the store.