@Override
        public Object run() throws Exception {
          Result res = null;
          Table localTable = null;
          try {
            int mod = ((int) rowKeyBase % userNames.length);
            if (userVsTable.get(userNames[mod]) == null) {
              localTable = connection.getTable(tableName);
              userVsTable.put(userNames[mod], localTable);
              res = localTable.get(get);
            } else {
              localTable = userVsTable.get(userNames[mod]);
              res = localTable.get(get);
            }
          } catch (IOException ie) {
            LOG.warn("Failed to get the row for key = [" + Bytes.toString(get.getRow())
              + "], column family = [" + Bytes.toString(cf) + "]", ie);
          }
          return res;
        }
Maps user with Table instance. Because the table instance has to be created per user inorder to
work in that user's context
hbase-diagnostics/src/main/java/org/apache/hadoop/hbase/util/MultiThreadedUpdaterWithACL.java