more bug fix on non blocking