fix locator cache

We check a cache to see if we've written a locator to cassandra yet, but
aren't using the same key that we use to update the cache as we use to
check the cache. This causes us to write the locator to cassandra every
time.

By checking the cache for the string representation of the locator we
avoid writing locators to cassandra every time we see that metric.
If this is just for testing in one place, I think it is better to not have the method, and then use Mockito to access the cache and invalidate it in the test.

Another (less desirable in this case IMO) is to clearly indicate the method shouldn't be sued by regular code by calling it `invalidateLocatorCacheUnsafe()` or something like that.