fix cache bugs