Merge change 4027 into donut

* changes:
  fix bug 1909589 and 1903635. I think the cause root is that the LruCache is not thread safe. I change it to thread safe and add a test for this.