add read cache