Instead of doing this here, let's move it into WhereOptimizer.pushKeyExpressionsToScan(), which is kind of one layer down. There are a couple of early exit conditions there that'd need to be handled, but the general case is to add the current tenant id to this list upfront:

      LinkedList<List<KeyRange>> cnf = new LinkedList<List<KeyRange>>();
      if (isTenantSpecificTable(table)) {
            pkPos++;
            cnf.add(KeyRange.getKeyRange(tenantId);
      }