diff --git a/src/java/com/samskivert/jdbc/depot/FindAllQuery.java b/src/java/com/samskivert/jdbc/depot/FindAllQuery.java index 46d634d..ac45e42 100644 --- a/src/java/com/samskivert/jdbc/depot/FindAllQuery.java +++ b/src/java/com/samskivert/jdbc/depot/FindAllQuery.java @@ -126,16 +126,18 @@ public abstract class FindAllQuery // and execute it try { ResultSet rs = stmt.executeQuery(); - int cnt = 0; + int cnt = 0, dups = 0; while (rs.next()) { T obj = _marsh.createObject(rs); - entities.put(_marsh.getPrimaryKey(obj), obj); - cnt ++; + if (entities.put(_marsh.getPrimaryKey(obj), obj) != null) { + dups++; + } + cnt++; } if (cnt != fetchKeys.size()) { - log.warning("Row count mismatch in second pass " + - "[expectedCount=" + fetchKeys.size() + - ", actualCount=" + cnt + "]"); + log.warning("Row count mismatch in second pass [query=" + stmt + + ", wanted=" + fetchKeys.size() + ", got=" + cnt + + ", dups=" + dups + "]"); } } finally {