both global lock in fragment mgr should only protect the map logic, could not use it to protect cancel method. fragment ctx cancel method should be protected by a lock. query ctx cancel --> pipelinex fragment cancel ---> query ctx cancel will dead lock.