Author: sdumitriu
Date: 2007-12-14 14:08:02 +0100 (Fri, 14 Dec 2007)
New Revision: 6376
Modified:
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
Log:
[performance] Revert saveOrUpdate changes, as the way it is currently done is
actually slower.
Modified:
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
===================================================================
---
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
2007-12-14 00:05:05 UTC (rev 6375)
+++
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
2007-12-14 13:08:02 UTC (rev 6376)
@@ -273,7 +273,15 @@
}
}
- session.saveOrUpdate(doc);
+ // Verify if the document already exists
+ Query query = session.createQuery("select xwikidoc.id from
XWikiDocument as xwikidoc where xwikidoc.id = :id");
+ query.setLong("id", doc.getId());
+ if (query.uniqueResult()==null)
+ session.save(doc);
+ else
+ session.update(doc);
+ // TODO: this is slower!! How can it be improved?
+// session.saveOrUpdate(doc);
// Remove properties planned for removal
if (doc.getObjectsToRemove().size()>0) {
@@ -1479,6 +1487,7 @@
Session session = getSession(context);
// need to delete existing links before saving the page's one
+ // TODO: is there any faster way to do this?
deleteLinks(doc.getId(), context, bTransaction);
// necessary to blank links from doc
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications