prefs: don't cache fallback when not persisting

When persistence was disabled (for whatever reason), fallback values
were written to the cache if there was no existing value cached.

There is no benefit in doing this. Database lookups will not happen
without persistence being enabled, and there was potential for the
fallback values being incorrectly written to the cache.