@Override
    public String[] getGroupNames() {
      if (cache != null) {
        try {
          return this.cache.get(getShortName());
        } catch (ExecutionException e) {
          return new String[0];
        }
      }
      return ugi.getGroupNames();
    }
Cache value of this instance's {@link #toString()} value. Computing this value is expensive.
Assumes the UGI is never updated. See HBASE-27708.
hbase-common/src/main/java/org/apache/hadoop/hbase/security/User.java