Saving should be consistent.
If for example a player starts a quest that phases him, the phase is saved.
Then the core crashes and the player has a rollback since he was not saved due to the crash.
This results to the player being phased but not started the quest.
Should save data when the character is otherwise saved as well. To me it seems like best practice and will have least DB queries etc.
Just my personal opinion.