diff --git a/src/main/java/org/caosdb/server/entity/Entity.java b/src/main/java/org/caosdb/server/entity/Entity.java
index 16dbbdd5f399905fc29ab2a8f1629fbcd163b6b6..b27eaa28e5111d783d1d8d3779f36a1938898173 100644
--- a/src/main/java/org/caosdb/server/entity/Entity.java
+++ b/src/main/java/org/caosdb/server/entity/Entity.java
@@ -654,7 +654,7 @@ public abstract class Entity extends AbstractObservable implements EntityInterfa
 
     // Parse ID. Generate error if it isn't an integer.
     if (element.getAttribute("id") != null && !element.getAttributeValue("id").equals("")) {
-      this.getId().setId(element.getAttributeValue("id"));
+      this.setId(element.getAttributeValue("id"));
     }
 
     // Parse NAME.
diff --git a/src/main/java/org/caosdb/server/entity/EntityInterface.java b/src/main/java/org/caosdb/server/entity/EntityInterface.java
index ba77b5c4ac8b5c833d2046dec506655531ff62cb..4a74920e7ac35d9d503de3802fbae10b2a7eaa3f 100644
--- a/src/main/java/org/caosdb/server/entity/EntityInterface.java
+++ b/src/main/java/org/caosdb/server/entity/EntityInterface.java
@@ -194,4 +194,8 @@ public interface EntityInterface
   public abstract boolean isReferenceList();
 
   public abstract SerializeFieldStrategy getSerializeFieldStrategy();
+
+  public default void setId(String id) {
+    getId().setId(id);
+  }
 }
diff --git a/src/main/java/org/caosdb/server/jobs/LazyEntityResolver.java b/src/main/java/org/caosdb/server/jobs/LazyEntityResolver.java
index a85b0ca075ae058afffe8777c8488631b2681bac..9932962a03e5ee448e16a81d83a4b864e73409d2 100644
--- a/src/main/java/org/caosdb/server/jobs/LazyEntityResolver.java
+++ b/src/main/java/org/caosdb/server/jobs/LazyEntityResolver.java
@@ -71,6 +71,8 @@ public class LazyEntityResolver extends EntityWrapper {
   public void resolveAll() {
     resolveParents();
     resolveProperties();
+    // release the transaction for the garbage collector
+    this.transaction = null;
   }
 
   @Override
diff --git a/src/main/java/org/caosdb/server/jobs/core/GenerateEntityId.java b/src/main/java/org/caosdb/server/jobs/core/GenerateEntityId.java
index 4bb23ab4c7399e3660998029927cb7cb860af928..e3b21d9bdf67ad7a1ebe23ea1b77816e72b12de3 100644
--- a/src/main/java/org/caosdb/server/jobs/core/GenerateEntityId.java
+++ b/src/main/java/org/caosdb/server/jobs/core/GenerateEntityId.java
@@ -44,7 +44,7 @@ public class GenerateEntityId extends EntityJob {
         && getTransaction() instanceof WriteTransactionInterface
         && entity.getEntityStatus() == EntityStatus.QUALIFIED) {
       String id = ((WriteTransactionInterface) getTransaction()).generateId();
-      entity.getId().setId(id);
+      entity.setId(id);
     }
   }
 }
diff --git a/src/main/java/org/caosdb/server/query/Query.java b/src/main/java/org/caosdb/server/query/Query.java
index 038e4d1895c3025759a8d259f27bcd246ac4f683..0574cd1e2bffe03e62dd0e225752d19dae57a681 100644
--- a/src/main/java/org/caosdb/server/query/Query.java
+++ b/src/main/java/org/caosdb/server/query/Query.java
@@ -258,7 +258,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
 
     public boolean isInternal() {
       try {
-        return Integer.parseInt(id) < 101;
+        return Integer.parseInt(id) < 100;
       } catch (NumberFormatException e) {
         return false;
       }