seems a bug fix. may happen when thread conflict