allow cache lifetime to be set to -1. this means never expire