code: private Map<String, Integer> getShardNumbers(String tableName, Set<String> targObjIDs) {
          TableDefinition tableDef = m_tableDef.getAppDef().getTableDef(tableName);
          FieldDefinition shardField = tableDef.getShardingField();
          Map<String, String> shardFieldMap =
             SpiderService.instance().getObjectScalar(tableDef, targObjIDs, shardField.getName());
          Map<String, Integer> shardNoMap = new HashMap<>();
          for (String objID : shardFieldMap.keySet()) {
              Date shardingFieldDate = Utils.dateFromString(shardFieldMap.get(objID));
              int shardNo = tableDef.computeShardNumber(shardingFieldDate);
              shardNoMap.put(objID, shardNo);
          }
          return shardNoMap;
      }
docs: has no value for its sharding-field, leave the map empty for that object ID.