Hi all, we are in the process of upgrading HBase from 0.92.x to 0.98.6.x and run into this code in the HBase-client: /** * {@inheritDoc} */ @Override public boolean exists(final Get get) throws IOException { get.setCheckExistenceOnly(true); Result r = get(get); assert r.getExists() != null; return r.getExists(); }
We used to use this exists-call as this was way faster in case of a BloomFilter-miss. But maybe that has changed? The code shows that the get-object passed-in is changed. Now I understand that it might not make sense to re-use the get-object after the exists returns true, but I explained the reason for doing so anyway above. Can anyone throw some light on this, please? I was just wondering if it might make sense to add a notice in the API-doc that tell that the passed-in object will be changed during the call. Or maybe add a 'set-back-to-old-value' try-finally-construction. with kind regards, Gerke