leveldb_proto: Remove data from obsolete clients

If a database is no longer useful then the client name should be added
to obsolete clients list. This list exists to ensure that we do not
have prefix clashes between past, current and future databases. If a
feature forgets to cleanup the database, then previously we incurred
only storage overhead, but with shared database we will incur memory
overhead of loading all the data as well. So, this CL also adds
functionality of automatically cleaning up data from obsolete
databases.

BUG=870813

Change-Id: I5f6039b1e8c6e04ed0a450e30564b68847cc492e
Reviewed-on: https://chromium-review.googlesource.com/c/1388207
Commit-Queue: ssid <ssid@chromium.org>
Reviewed-by: Tommy Nyquist <nyquist@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620933}
13 files changed