X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fquery%2FExternalReadEntry.java;h=419115165f10f4f46a7fb4083847cbaf3a72905c;hb=refs%2Fchanges%2F22%2F4522%2F1;hp=556d5fc3e12b8d2df0d5e42ea2efb2221a8fb65f;hpb=c00d1429bda8dc27461e1576f4be028b43149758;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/ExternalReadEntry.java b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/ExternalReadEntry.java index 556d5fc3e..419115165 100644 --- a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/ExternalReadEntry.java +++ b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/ExternalReadEntry.java @@ -180,14 +180,16 @@ final public class ExternalReadEntry extends CacheEntryBase try { - ReadGraphImpl queryGraph = graph.withParent(this); + ReadGraphImpl queryGraph = graph.withParent(this, null, true); + queryGraph.asyncBarrier.inc(); - if(!registered) { - id.register(graph, this); + if (!registered) { + id.register(queryGraph, this); registered = true; } - - queryGraph.asyncBarrier.waitBarrier(id, graph); + + queryGraph.asyncBarrier.dec(); + queryGraph.asyncBarrier.waitBarrier(id, queryGraph); } catch (Throwable t) {