fix bugs with operation queue