From 2c51e171781504d84a4cfb0f0929835892578e7e Mon Sep 17 00:00:00 2001 From: Enquier Date: Wed, 17 Apr 2024 14:15:04 -0600 Subject: [PATCH 1/4] fix commit retrieval loop --- .../mms/rdb/repositories/commit/CommitDAOImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java index dc15fa426..df581f316 100644 --- a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java +++ b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java @@ -13,6 +13,7 @@ import org.openmbee.mms.data.dao.BranchDAO; import org.openmbee.mms.data.dao.CommitDAO; import org.openmbee.mms.core.exceptions.InternalErrorException; +import org.openmbee.mms.core.config.Constants; import org.openmbee.mms.data.domains.scoped.Branch; import org.openmbee.mms.data.domains.scoped.Commit; import org.openmbee.mms.rdb.repositories.BaseDAOImpl; @@ -63,7 +64,7 @@ public Optional findById(long id) { String sql = "SELECT * FROM commits WHERE id = ?"; List l = getConn() - .query(sql, new Object[]{id}, new CommitRowMapper()); + .query(sql, new CommitRowMapper(), new Object[]{id}); return l.isEmpty() ? Optional.empty() : Optional.of(l.get(0)); } @@ -72,7 +73,7 @@ public Optional findByCommitId(String commitId) { String sql = "SELECT * FROM commits WHERE commitid = ?"; List l = getConn() - .query(sql, new Object[]{commitId}, new CommitRowMapper()); + .query(sql, new CommitRowMapper(), new Object[]{commitId}); return l.isEmpty() ? Optional.empty() : Optional.of(l.get(0)); } @@ -156,7 +157,7 @@ public List findByRefAndTimestampAndLimit(Branch ref, Instant timestamp, currentRef = ref.getParentRefId(); currentCid = ref.getParentCommit(); - if (currentRef == null) { + if (currentRef == null || currentRef == Constants.MASTER_BRANCH) { break; } Optional parent = branchRepository.findByBranchId(currentRef); From 4c5de3647039e3e3afc40e7324cb23fb24194175 Mon Sep 17 00:00:00 2001 From: Enquier Date: Thu, 18 Apr 2024 16:07:25 -0600 Subject: [PATCH 2/4] add missing set to delete --- .../mms/federatedpersistence/dao/FederatedBranchPersistence.java | 1 + 1 file changed, 1 insertion(+) diff --git a/federatedpersistence/src/main/java/org/openmbee/mms/federatedpersistence/dao/FederatedBranchPersistence.java b/federatedpersistence/src/main/java/org/openmbee/mms/federatedpersistence/dao/FederatedBranchPersistence.java index bfc586066..fa255f525 100644 --- a/federatedpersistence/src/main/java/org/openmbee/mms/federatedpersistence/dao/FederatedBranchPersistence.java +++ b/federatedpersistence/src/main/java/org/openmbee/mms/federatedpersistence/dao/FederatedBranchPersistence.java @@ -60,6 +60,7 @@ public RefJson save(RefJson refJson) { scopedBranch.setTimestamp(Formats.FORMATTER.parse(refJson.getCreated(), Instant::from)); scopedBranch.setParentRefId(refJson.getParentRefId()); scopedBranch.setDocId(refJson.getDocId()); + scopedBranch.setDeleted(Boolean.parseBoolean(refJson.getIsDeleted())); //Setup global Branch object Optional project = projectDAO.findByProjectId(refJson.getProjectId()); From 28fbf1dd158afcf85bd4e56a74d29136fd6235ae Mon Sep 17 00:00:00 2001 From: Enquier Date: Thu, 18 Apr 2024 16:14:27 -0600 Subject: [PATCH 3/4] stronger comparison --- .../org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java index df581f316..9a82b3f07 100644 --- a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java +++ b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java @@ -157,7 +157,7 @@ public List findByRefAndTimestampAndLimit(Branch ref, Instant timestamp, currentRef = ref.getParentRefId(); currentCid = ref.getParentCommit(); - if (currentRef == null || currentRef == Constants.MASTER_BRANCH) { + if (currentRef == null || currentRef.equals(Constants.MASTER_BRANCH)) { break; } Optional parent = branchRepository.findByBranchId(currentRef); From fbfb63430cec04a094fbb25deb6802f89ed2afb1 Mon Sep 17 00:00:00 2001 From: Enquier Date: Tue, 21 May 2024 11:43:26 -0600 Subject: [PATCH 4/4] fix based on discussion in dev tagup --- .../openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java index 9a82b3f07..3b1686fe9 100644 --- a/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java +++ b/rdb/src/main/java/org/openmbee/mms/rdb/repositories/commit/CommitDAOImpl.java @@ -154,10 +154,11 @@ public List findByRefAndTimestampAndLimit(Branch ref, Instant timestamp, List next = findByRefAndLimit(currentRef, currentCid, timestamp, currentLimit); commits.addAll(next); + String oldRef = currentRef; currentRef = ref.getParentRefId(); currentCid = ref.getParentCommit(); - if (currentRef == null || currentRef.equals(Constants.MASTER_BRANCH)) { + if (currentRef == null || (currentRef.equals(Constants.MASTER_BRANCH) && oldRef.equals(Constants.MASTER_BRANCH))) { break; } Optional parent = branchRepository.findByBranchId(currentRef);