From 2ea5d6335d98b0bea990ca4187b2e68ac3276a4b Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Sun, 20 Feb 2011 10:56:39 +0000 Subject: [337152] [Mongo] Create a MongoDBStore https://bugs.eclipse.org/bugs/show_bug.cgi?id=337152 --- .../eclipse/emf/cdo/server/internal/mongodb/Commits.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'plugins/org.eclipse.emf.cdo.server.mongodb/src') diff --git a/plugins/org.eclipse.emf.cdo.server.mongodb/src/org/eclipse/emf/cdo/server/internal/mongodb/Commits.java b/plugins/org.eclipse.emf.cdo.server.mongodb/src/org/eclipse/emf/cdo/server/internal/mongodb/Commits.java index d103fb70ea..d7d79c64a3 100644 --- a/plugins/org.eclipse.emf.cdo.server.mongodb/src/org/eclipse/emf/cdo/server/internal/mongodb/Commits.java +++ b/plugins/org.eclipse.emf.cdo.server.mongodb/src/org/eclipse/emf/cdo/server/internal/mongodb/Commits.java @@ -511,7 +511,9 @@ public class Commits extends Coll query.put(COMMITS_BRANCH, branch.getID()); } - query.put(REVISIONS + "." + REVISIONS_VERSION, -version - 1); + int nextVersion = version + 1; + query.put("$or", new DBObject[] { new BasicDBObject(REVISIONS + "." + REVISIONS_VERSION, nextVersion), + new BasicDBObject(REVISIONS + "." + REVISIONS_VERSION, -nextVersion) }); Long result = new Query(query) { @@ -524,10 +526,13 @@ public class Commits extends Coll if (result != null) { + long revised = result - 1; + // TODO Cache REVISIONS_REVISED - // revision.put(REVISIONS_REVISED, result); - // collection.save(doc); - return result; + revision.put(REVISIONS_REVISED, result); + collection.save(doc); + + return revised; } return CDOBranchPoint.UNSPECIFIED_DATE; -- cgit v1.2.3