From 061b60622f8d59af74d3773f1cfe7884a839bf20 Mon Sep 17 00:00:00 2001
From: Timm Fitschen <t.fitschen@indiscale.com>
Date: Thu, 3 Sep 2020 12:52:08 +0200
Subject: [PATCH] MAINT: update all serialVersionUID

---
 makefile                                        | 17 ++++++++++-------
 .../org/caosdb/datetime/UTCTimeZoneShift.java   |  2 +-
 .../java/org/caosdb/server/CaosDBException.java |  2 +-
 .../org/caosdb/server/ServerProperties.java     |  2 +-
 .../AnonymousAuthenticationToken.java           |  2 +-
 .../OneTimeAuthenticationToken.java             |  2 +-
 .../RealmUsernamePasswordToken.java             |  2 +-
 .../org/caosdb/server/accessControl/Role.java   |  2 +-
 .../SelfValidatingAuthenticationToken.java      |  2 +-
 .../server/accessControl/SessionToken.java      |  2 +-
 .../server/accessControl/UserSources.java       |  2 +-
 .../caosdb/server/database/DatabaseMonitor.java |  4 ++--
 .../MySQL/ConnectionException.java              |  2 +-
 .../exceptions/EntityDoesNotExistException.java |  2 +-
 .../exceptions/EntityWasNotUniqueException.java |  2 +-
 .../database/exceptions/IntegrityException.java |  2 +-
 .../exceptions/RolledBackException.java         |  2 +-
 .../exceptions/TransactionException.java        |  2 +-
 .../database/misc/TransactionBenchmark.java     | 12 ++++++------
 .../server/database/proto/FlatProperty.java     |  2 +-
 .../server/database/proto/ProtoGroup.java       |  2 +-
 .../server/database/proto/ProtoProperty.java    |  2 +-
 .../proto/ProtoTransactionLogMessage.java       |  2 +-
 .../caosdb/server/database/proto/ProtoUser.java |  2 +-
 .../org/caosdb/server/database/proto/Rule.java  |  2 +-
 .../server/database/proto/SparseEntity.java     |  2 +-
 .../database/proto/VersionHistoryItem.java      |  2 +-
 .../server/database/proto/VerySparseEntity.java |  2 +-
 .../java/org/caosdb/server/entity/Message.java  |  2 +-
 .../server/entity/NoSuchRoleException.java      |  2 +-
 .../server/entity/container/Container.java      |  2 +-
 .../entity/container/DeleteContainer.java       |  2 +-
 .../entity/container/EntityByIdContainer.java   |  2 +-
 .../entity/container/InsertContainer.java       |  2 +-
 .../entity/container/ParentContainer.java       |  2 +-
 .../entity/container/PropertyContainer.java     |  2 +-
 .../entity/container/RetrieveContainer.java     |  2 +-
 .../entity/container/TransactionContainer.java  |  2 +-
 .../entity/container/UpdateContainer.java       |  2 +-
 .../entity/container/WritableContainer.java     |  2 +-
 .../server/logging/RequestErrorLogMessage.java  |  2 +-
 .../server/permissions/CaosPermission.java      |  2 +-
 .../server/permissions/EntityPermission.java    |  2 +-
 .../caosdb/server/permissions/Permission.java   |  2 +-
 .../java/org/caosdb/server/query/Query.java     |  4 ++--
 .../resource/AbstractCaosDBServerResource.java  |  2 +-
 .../server/scripting/TimeoutException.java      |  2 +-
 .../server/utils/ConfigurationException.java    |  2 +-
 .../org/caosdb/server/utils/HashException.java  |  2 +-
 .../server/utils/HashNotReadyException.java     |  2 +-
 .../server/utils/HashTimeoutException.java      |  2 +-
 .../utils/fsm/ActionNotAllowedException.java    |  2 +-
 .../fsm/MissingImplementationException.java     |  2 +-
 .../utils/fsm/StateNotReachableException.java   |  2 +-
 .../fsm/TransitionNotAllowedException.java      |  2 +-
 55 files changed, 71 insertions(+), 68 deletions(-)

diff --git a/makefile b/makefile
index 2d412794..5c0e6cdd 100644
--- a/makefile
+++ b/makefile
@@ -40,22 +40,25 @@ runserver: print-version
 run: compile
 	mvn exec:java@run
 
-run-debug: print-version jar
-	java -Xrunjdwp:transport=dt_socket,address=0.0.0.0:$(JPDA_PORT),server=y,suspend=n -Dcaosdb.debug=true -jar target/caosdb-server-$(CAOSDB_SERVER_VERSION)-jar-with-dependencies.jar
+run-debug: jar
+	java -Xrunjdwp:transport=dt_socket,address=0.0.0.0:$(JPDA_PORT),server=y,suspend=n -Dcaosdb.debug=true -jar target/caosdb-server.jar
 
-run-debug-single: print-version
-	java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=$(JMX_PORT) -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Xrunjdwp:transport=dt_socket,address=0.0.0.0:$(JPDA_PORT),server=y,suspend=n -Dcaosdb.debug=true -jar target/caosdb-server-$(CAOSDB_SERVER_VERSION)-jar-with-dependencies.jar
+run-debug-single:
+	java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=$(JMX_PORT) -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Xrunjdwp:transport=dt_socket,address=0.0.0.0:$(JPDA_PORT),server=y,suspend=n -Dcaosdb.debug=true -jar target/caosdb-server.jar
 
-run-single: print-version
-	java -jar target/caosdb-server-$(CAOSDB_SERVER_VERSION)-jar-with-dependencies.jar
+run-single:
+	java -jar target/caosdb-server.jar
 
 formatting:
 	mvn fmt:format
 	autopep8 -ari scripting/
 
 # Compile into a standalone jar file
-jar: easy-units
+jar: print-version easy-units
 	mvn package -DskipTests
+	@pushd target ; \
+		ln -s caosdb-server-$(CAOSDB_SERVER_VERSION)-jar-with-dependencies.jar caosdb-server.jar; \
+		popd
 
 antlr:
 	mvn antlr4:antlr4
diff --git a/src/main/java/org/caosdb/datetime/UTCTimeZoneShift.java b/src/main/java/org/caosdb/datetime/UTCTimeZoneShift.java
index b601e68c..e4b9c3c1 100644
--- a/src/main/java/org/caosdb/datetime/UTCTimeZoneShift.java
+++ b/src/main/java/org/caosdb/datetime/UTCTimeZoneShift.java
@@ -26,7 +26,7 @@ import java.util.Date;
 import java.util.TimeZone;
 
 public class UTCTimeZoneShift extends TimeZone {
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = 6962096078347188058L;
   public static final int POSITIVE = 1;
   public static final int NEGATIVE = -1;
 
diff --git a/src/main/java/org/caosdb/server/CaosDBException.java b/src/main/java/org/caosdb/server/CaosDBException.java
index e01882bf..617dfdff 100644
--- a/src/main/java/org/caosdb/server/CaosDBException.java
+++ b/src/main/java/org/caosdb/server/CaosDBException.java
@@ -24,7 +24,7 @@ package org.caosdb.server;
 
 public class CaosDBException extends RuntimeException {
 
-  private static final long serialVersionUID = 5317733089121727021L;
+  private static final long serialVersionUID = -6679522664294087311L;
 
   public CaosDBException(final String string) {
     super(string);
diff --git a/src/main/java/org/caosdb/server/ServerProperties.java b/src/main/java/org/caosdb/server/ServerProperties.java
index d2f8e14d..dd12add7 100644
--- a/src/main/java/org/caosdb/server/ServerProperties.java
+++ b/src/main/java/org/caosdb/server/ServerProperties.java
@@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
 
 public class ServerProperties extends Properties {
 
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -6178774548807398071L;
   private static Logger logger = LoggerFactory.getLogger(ServerProperties.class.getName());
 
   public static final String KEY_FILE_SYSTEM_ROOT = "FILE_SYSTEM_ROOT";
diff --git a/src/main/java/org/caosdb/server/accessControl/AnonymousAuthenticationToken.java b/src/main/java/org/caosdb/server/accessControl/AnonymousAuthenticationToken.java
index fcbf8c43..97b6f9ee 100644
--- a/src/main/java/org/caosdb/server/accessControl/AnonymousAuthenticationToken.java
+++ b/src/main/java/org/caosdb/server/accessControl/AnonymousAuthenticationToken.java
@@ -26,7 +26,7 @@ import org.apache.shiro.authc.AuthenticationToken;
 
 public class AnonymousAuthenticationToken implements AuthenticationToken {
 
-  private static final long serialVersionUID = 1424325396819592888L;
+  private static final long serialVersionUID = 3573372964529451961L;
   private static final AnonymousAuthenticationToken INSTANCE = new AnonymousAuthenticationToken();
   public static final Principal PRINCIPAL = new Principal("anonymous", "anonymous");
 
diff --git a/src/main/java/org/caosdb/server/accessControl/OneTimeAuthenticationToken.java b/src/main/java/org/caosdb/server/accessControl/OneTimeAuthenticationToken.java
index bde27876..f87dd0da 100644
--- a/src/main/java/org/caosdb/server/accessControl/OneTimeAuthenticationToken.java
+++ b/src/main/java/org/caosdb/server/accessControl/OneTimeAuthenticationToken.java
@@ -98,7 +98,7 @@ public class OneTimeAuthenticationToken extends SelfValidatingAuthenticationToke
         defaultIfNull(replaysTimeout, DEFAULT_REPLAYS_TIMEOUT_MS));
   }
 
-  private static final long serialVersionUID = -1072740888045267613L;
+  private static final long serialVersionUID = 6811668234440927543L;
 
   /**
    * Return consumed.
diff --git a/src/main/java/org/caosdb/server/accessControl/RealmUsernamePasswordToken.java b/src/main/java/org/caosdb/server/accessControl/RealmUsernamePasswordToken.java
index 9455df70..1d934310 100644
--- a/src/main/java/org/caosdb/server/accessControl/RealmUsernamePasswordToken.java
+++ b/src/main/java/org/caosdb/server/accessControl/RealmUsernamePasswordToken.java
@@ -26,7 +26,7 @@ import org.apache.shiro.authc.AuthenticationToken;
 
 public class RealmUsernamePasswordToken implements AuthenticationToken {
 
-  private static final long serialVersionUID = -6314149707379428753L;
+  private static final long serialVersionUID = 1970181902441118122L;
   String realm;
   String username;
   String password;
diff --git a/src/main/java/org/caosdb/server/accessControl/Role.java b/src/main/java/org/caosdb/server/accessControl/Role.java
index e01f344c..1a34b499 100644
--- a/src/main/java/org/caosdb/server/accessControl/Role.java
+++ b/src/main/java/org/caosdb/server/accessControl/Role.java
@@ -27,7 +27,7 @@ import org.jdom2.Element;
 
 public class Role implements Serializable {
 
-  private static final long serialVersionUID = -9212426446735375109L;
+  private static final long serialVersionUID = 8968219504349206982L;
   public String name = null;
   public String description = null;
 
diff --git a/src/main/java/org/caosdb/server/accessControl/SelfValidatingAuthenticationToken.java b/src/main/java/org/caosdb/server/accessControl/SelfValidatingAuthenticationToken.java
index 4291c5f6..1832563f 100644
--- a/src/main/java/org/caosdb/server/accessControl/SelfValidatingAuthenticationToken.java
+++ b/src/main/java/org/caosdb/server/accessControl/SelfValidatingAuthenticationToken.java
@@ -56,7 +56,7 @@ public abstract class SelfValidatingAuthenticationToken extends Principal
     implements AuthenticationToken {
 
   protected static final transient String PEPPER = Utils.getSecureFilename(32);
-  private static final long serialVersionUID = -7212039848895531161L;
+  private static final long serialVersionUID = -7469302791917310460L;
   // date is the token creation time, in ms since 1970
   protected final long date;
   // token validity duration
diff --git a/src/main/java/org/caosdb/server/accessControl/SessionToken.java b/src/main/java/org/caosdb/server/accessControl/SessionToken.java
index 5696af68..760f1195 100644
--- a/src/main/java/org/caosdb/server/accessControl/SessionToken.java
+++ b/src/main/java/org/caosdb/server/accessControl/SessionToken.java
@@ -65,7 +65,7 @@ public class SessionToken extends SelfValidatingAuthenticationToken {
     super(principal, timeout, permissions, roles);
   }
 
-  private static final long serialVersionUID = 5887135104218573761L;
+  private static final long serialVersionUID = 3739602277654194951L;
 
   public static SessionToken parse(final Object[] array) {
     // array[0] is not used here, it was already consumed to determine the type of token.
diff --git a/src/main/java/org/caosdb/server/accessControl/UserSources.java b/src/main/java/org/caosdb/server/accessControl/UserSources.java
index 9e5663ed..8f69c8c5 100644
--- a/src/main/java/org/caosdb/server/accessControl/UserSources.java
+++ b/src/main/java/org/caosdb/server/accessControl/UserSources.java
@@ -74,7 +74,7 @@ public class UserSources extends HashMap<String, UserSource> {
   public static final String KEY_REALMS = "realms";
   public static final String KEY_REALM_CLASS = "class";
 
-  private static final long serialVersionUID = 6782744064206400521L;
+  private static final long serialVersionUID = 256585362760388255L;
   private static final UserSource internalRealm = new InternalUserSource();
 
   private static UserSources instance = new UserSources();
diff --git a/src/main/java/org/caosdb/server/database/DatabaseMonitor.java b/src/main/java/org/caosdb/server/database/DatabaseMonitor.java
index 77e91302..ed98d1d6 100644
--- a/src/main/java/org/caosdb/server/database/DatabaseMonitor.java
+++ b/src/main/java/org/caosdb/server/database/DatabaseMonitor.java
@@ -53,7 +53,7 @@ import org.caosdb.server.utils.Releasable;
  */
 class WeakAccessSemaphore extends Semaphore implements Observable, Releasable {
 
-  private static final long serialVersionUID = 4999687434687029136L;
+  private static final long serialVersionUID = -262226321839837533L;
   private int acquired = 0; // how many thread have weak access
   Semaphore block = new Semaphore(1, true);
 
@@ -154,7 +154,7 @@ class WeakAccessSemaphore extends Semaphore implements Observable, Releasable {
  */
 class StrongAccessLock extends ReentrantLock implements Observable, Releasable {
 
-  private static final long serialVersionUID = 1918369324107546576L;
+  private static final long serialVersionUID = -262226321839837533L;
   private WeakAccessSemaphore wa = null;
   private Thread allocator = null;
   private Thread acquirer = null;
diff --git a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/ConnectionException.java b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/ConnectionException.java
index f8b0da35..83c334ac 100644
--- a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/ConnectionException.java
+++ b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/ConnectionException.java
@@ -23,7 +23,7 @@
 package org.caosdb.server.database.backend.implementation.MySQL;
 
 public class ConnectionException extends Exception {
-  private static final long serialVersionUID = 3581951559636079126L;
+  private static final long serialVersionUID = 6119424337789255870L;
 
   public ConnectionException(final Throwable t) {
     super(t);
diff --git a/src/main/java/org/caosdb/server/database/exceptions/EntityDoesNotExistException.java b/src/main/java/org/caosdb/server/database/exceptions/EntityDoesNotExistException.java
index ab6e6860..f282a355 100644
--- a/src/main/java/org/caosdb/server/database/exceptions/EntityDoesNotExistException.java
+++ b/src/main/java/org/caosdb/server/database/exceptions/EntityDoesNotExistException.java
@@ -28,5 +28,5 @@ public class EntityDoesNotExistException extends TransactionException {
     super((String) null);
   }
 
-  private static final long serialVersionUID = -3514226960430855290L;
+  private static final long serialVersionUID = -6674784560815319076L;
 }
diff --git a/src/main/java/org/caosdb/server/database/exceptions/EntityWasNotUniqueException.java b/src/main/java/org/caosdb/server/database/exceptions/EntityWasNotUniqueException.java
index d4aa56e1..b792cd45 100644
--- a/src/main/java/org/caosdb/server/database/exceptions/EntityWasNotUniqueException.java
+++ b/src/main/java/org/caosdb/server/database/exceptions/EntityWasNotUniqueException.java
@@ -23,7 +23,7 @@
 package org.caosdb.server.database.exceptions;
 
 public class EntityWasNotUniqueException extends TransactionException {
-  private static final long serialVersionUID = -6520827199072001991L;
+  private static final long serialVersionUID = 5181653214330392866L;
 
   public EntityWasNotUniqueException() {
     super((String) null);
diff --git a/src/main/java/org/caosdb/server/database/exceptions/IntegrityException.java b/src/main/java/org/caosdb/server/database/exceptions/IntegrityException.java
index 9bf259a1..440c1e57 100644
--- a/src/main/java/org/caosdb/server/database/exceptions/IntegrityException.java
+++ b/src/main/java/org/caosdb/server/database/exceptions/IntegrityException.java
@@ -32,5 +32,5 @@ public class IntegrityException extends TransactionException {
     super(t);
   }
 
-  private static final long serialVersionUID = 2897982417503972644L;
+  private static final long serialVersionUID = 8589937458368069183L;
 }
diff --git a/src/main/java/org/caosdb/server/database/exceptions/RolledBackException.java b/src/main/java/org/caosdb/server/database/exceptions/RolledBackException.java
index f038da96..c99fcbbd 100644
--- a/src/main/java/org/caosdb/server/database/exceptions/RolledBackException.java
+++ b/src/main/java/org/caosdb/server/database/exceptions/RolledBackException.java
@@ -28,5 +28,5 @@ public class RolledBackException extends TransactionException {
     super(t);
   }
 
-  private static final long serialVersionUID = -5448737641962261951L;
+  private static final long serialVersionUID = 8452626730418231001L;
 }
diff --git a/src/main/java/org/caosdb/server/database/exceptions/TransactionException.java b/src/main/java/org/caosdb/server/database/exceptions/TransactionException.java
index 08b68b1a..ac76fe76 100644
--- a/src/main/java/org/caosdb/server/database/exceptions/TransactionException.java
+++ b/src/main/java/org/caosdb/server/database/exceptions/TransactionException.java
@@ -24,7 +24,7 @@ package org.caosdb.server.database.exceptions;
 
 public class TransactionException extends RuntimeException {
 
-  private static final long serialVersionUID = -8623817359165387081L;
+  private static final long serialVersionUID = -187878233305807610L;
 
   public TransactionException(final String string) {
     super(string);
diff --git a/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java b/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
index e0c524ce..397a1f52 100644
--- a/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
+++ b/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
@@ -41,7 +41,7 @@ import org.caosdb.server.utils.ServerStat;
 import org.jdom2.Element;
 
 class Counter implements Serializable {
-  private static final long serialVersionUID = 8679355597595634790L;
+  private static final long serialVersionUID = -95212746021180579L;
   private int c;
 
   public Counter(int initial) {
@@ -58,7 +58,7 @@ class Counter implements Serializable {
 }
 
 class Timer implements Serializable {
-  private static final long serialVersionUID = 7895352555775799409L;
+  private static final long serialVersionUID = -95212746021180579L;
   private long c;
 
   public Timer(long initial) {
@@ -80,7 +80,7 @@ class Timer implements Serializable {
  * Measurement object knows nothing about other Measurement objects.
  */
 class Measurement implements Serializable {
-  private static final long serialVersionUID = -2429348657382168470L;
+  private static final long serialVersionUID = -95212746021180579L;
   private final Timer timer;
   private final Counter counter;
   private final String name;
@@ -130,7 +130,7 @@ class Measurement implements Serializable {
 
 class RootBenchmark extends TransactionBenchmark implements ServerStat {
 
-  private static final long serialVersionUID = 8070554107783826603L;
+  private static final long serialVersionUID = -95212746021180579L;
   private transient boolean synced = false;
   /**
    * Fetch old data (from before last shutdown) and fill it into this instance.
@@ -208,7 +208,7 @@ class RootBenchmark extends TransactionBenchmark implements ServerStat {
 
 class SubBenchmark extends TransactionBenchmark {
 
-  private static final long serialVersionUID = 323147917189195974L;
+  private static final long serialVersionUID = -95212746021180579L;
   private final String name;
 
   public SubBenchmark(String name) {
@@ -270,7 +270,7 @@ class JdomConverter {
  */
 public abstract class TransactionBenchmark implements Serializable {
 
-  private static final long serialVersionUID = -8916163825450491068L;
+  private static final long serialVersionUID = -95212746021180579L;
   private static final TransactionBenchmark rootService = new RootBenchmark().init();
   public final transient Logger logger = LogManager.getLogger(getClass());
   protected static final transient boolean isActive =
diff --git a/src/main/java/org/caosdb/server/database/proto/FlatProperty.java b/src/main/java/org/caosdb/server/database/proto/FlatProperty.java
index 9728b378..b92d3def 100644
--- a/src/main/java/org/caosdb/server/database/proto/FlatProperty.java
+++ b/src/main/java/org/caosdb/server/database/proto/FlatProperty.java
@@ -26,7 +26,7 @@ import java.io.Serializable;
 
 public class FlatProperty implements Serializable {
 
-  private static final long serialVersionUID = -9154427080823222776L;
+  private static final long serialVersionUID = 6039288034435124195L;
   public Integer id = null;
   public String value = null;
   public String status = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/ProtoGroup.java b/src/main/java/org/caosdb/server/database/proto/ProtoGroup.java
index c8e68118..31d58986 100644
--- a/src/main/java/org/caosdb/server/database/proto/ProtoGroup.java
+++ b/src/main/java/org/caosdb/server/database/proto/ProtoGroup.java
@@ -27,7 +27,7 @@ import java.util.HashSet;
 
 public class ProtoGroup implements Serializable {
 
-  private static final long serialVersionUID = 1659901727564921926L;
+  private static final long serialVersionUID = 7647402460488051845L;
   public String name = null;
   public String description = null;
   public HashSet<String> users = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/ProtoProperty.java b/src/main/java/org/caosdb/server/database/proto/ProtoProperty.java
index c19341c7..44acaa02 100644
--- a/src/main/java/org/caosdb/server/database/proto/ProtoProperty.java
+++ b/src/main/java/org/caosdb/server/database/proto/ProtoProperty.java
@@ -27,7 +27,7 @@ import java.util.List;
 
 public class ProtoProperty implements Serializable {
 
-  private static final long serialVersionUID = 6797170359746385913L;
+  private static final long serialVersionUID = 7731301985162924975L;
   public List<FlatProperty> subProperties = null;
   public FlatProperty property = null;
 }
diff --git a/src/main/java/org/caosdb/server/database/proto/ProtoTransactionLogMessage.java b/src/main/java/org/caosdb/server/database/proto/ProtoTransactionLogMessage.java
index 9ca424e2..dd5cdbeb 100644
--- a/src/main/java/org/caosdb/server/database/proto/ProtoTransactionLogMessage.java
+++ b/src/main/java/org/caosdb/server/database/proto/ProtoTransactionLogMessage.java
@@ -41,7 +41,7 @@ public class ProtoTransactionLogMessage implements Serializable {
 
   public ProtoTransactionLogMessage() {}
 
-  private static final long serialVersionUID = 452072581780180334L;
+  private static final long serialVersionUID = -5856887517281480754L;
   public String transaction = null;
   public String realm;
   public String username = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/ProtoUser.java b/src/main/java/org/caosdb/server/database/proto/ProtoUser.java
index 6cee37e9..cafa32d2 100644
--- a/src/main/java/org/caosdb/server/database/proto/ProtoUser.java
+++ b/src/main/java/org/caosdb/server/database/proto/ProtoUser.java
@@ -30,7 +30,7 @@ public class ProtoUser implements Serializable {
 
   public ProtoUser() {}
 
-  private static final long serialVersionUID = 248172393585577797L;
+  private static final long serialVersionUID = -2704114543883567439L;
 
   public UserStatus status = null;
   public String name = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/Rule.java b/src/main/java/org/caosdb/server/database/proto/Rule.java
index 4b710d23..3d25f766 100644
--- a/src/main/java/org/caosdb/server/database/proto/Rule.java
+++ b/src/main/java/org/caosdb/server/database/proto/Rule.java
@@ -27,7 +27,7 @@ import org.caosdb.server.jobs.core.Mode;
 
 public class Rule implements Serializable {
 
-  private static final long serialVersionUID = 7648532019937680150L;
+  private static final long serialVersionUID = 1122097540596265945L;
 
   public int domain = 0;
   public int entity = 0;
diff --git a/src/main/java/org/caosdb/server/database/proto/SparseEntity.java b/src/main/java/org/caosdb/server/database/proto/SparseEntity.java
index da409f0a..3d5a29c9 100644
--- a/src/main/java/org/caosdb/server/database/proto/SparseEntity.java
+++ b/src/main/java/org/caosdb/server/database/proto/SparseEntity.java
@@ -30,7 +30,7 @@ package org.caosdb.server.database.proto;
  */
 public class SparseEntity extends VerySparseEntity {
 
-  private static final long serialVersionUID = 2603892933659461049L;
+  private static final long serialVersionUID = -560259468853956476L;
 
   public String collection = null;
   public String datatype = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/VersionHistoryItem.java b/src/main/java/org/caosdb/server/database/proto/VersionHistoryItem.java
index be999d99..26109760 100644
--- a/src/main/java/org/caosdb/server/database/proto/VersionHistoryItem.java
+++ b/src/main/java/org/caosdb/server/database/proto/VersionHistoryItem.java
@@ -5,7 +5,7 @@ import java.util.LinkedList;
 
 public class VersionHistoryItem implements Serializable {
 
-  private static final long serialVersionUID = 7855704308135158698L;
+  private static final long serialVersionUID = 6319362462701459355L;
   public String id = null;
   public LinkedList<String> parents = null;
   public Long seconds = null;
diff --git a/src/main/java/org/caosdb/server/database/proto/VerySparseEntity.java b/src/main/java/org/caosdb/server/database/proto/VerySparseEntity.java
index 864cd129..8f32bf52 100644
--- a/src/main/java/org/caosdb/server/database/proto/VerySparseEntity.java
+++ b/src/main/java/org/caosdb/server/database/proto/VerySparseEntity.java
@@ -33,7 +33,7 @@ import java.io.Serializable;
  */
 public class VerySparseEntity implements Serializable {
 
-  private static final long serialVersionUID = -5950583518110327486L;
+  private static final long serialVersionUID = 7370925076064714740L;
 
   public Integer id = null;
   public String name = null;
diff --git a/src/main/java/org/caosdb/server/entity/Message.java b/src/main/java/org/caosdb/server/entity/Message.java
index e79c5b6e..743a2b62 100644
--- a/src/main/java/org/caosdb/server/entity/Message.java
+++ b/src/main/java/org/caosdb/server/entity/Message.java
@@ -32,7 +32,7 @@ public class Message extends Exception implements Comparable<Message>, ToElement
   private final String description;
   private final String body;
 
-  private static final long serialVersionUID = -6527053191344766124L;
+  private static final long serialVersionUID = -3005017964769041935L;
 
   public enum MessageType {
     Warning,
diff --git a/src/main/java/org/caosdb/server/entity/NoSuchRoleException.java b/src/main/java/org/caosdb/server/entity/NoSuchRoleException.java
index ae1d2e0d..31d79a6d 100644
--- a/src/main/java/org/caosdb/server/entity/NoSuchRoleException.java
+++ b/src/main/java/org/caosdb/server/entity/NoSuchRoleException.java
@@ -29,5 +29,5 @@ public class NoSuchRoleException extends IllegalArgumentException {
   }
 
   /** */
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -5647651111944453390L;
 }
diff --git a/src/main/java/org/caosdb/server/entity/container/Container.java b/src/main/java/org/caosdb/server/entity/container/Container.java
index 1f6f14dd..dc38041a 100644
--- a/src/main/java/org/caosdb/server/entity/container/Container.java
+++ b/src/main/java/org/caosdb/server/entity/container/Container.java
@@ -29,7 +29,7 @@ import org.caosdb.server.entity.EntityInterface;
 
 public class Container<T extends EntityInterface> extends ArrayList<T> {
 
-  private static final long serialVersionUID = 8519435849678175750L;
+  private static final long serialVersionUID = 3588262226883926066L;
 
   /**
    * Return the entity with the matching id, if it can be found inside this Container, else null.
diff --git a/src/main/java/org/caosdb/server/entity/container/DeleteContainer.java b/src/main/java/org/caosdb/server/entity/container/DeleteContainer.java
index 0c82642e..b0c2f21f 100644
--- a/src/main/java/org/caosdb/server/entity/container/DeleteContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/DeleteContainer.java
@@ -28,7 +28,7 @@ import org.caosdb.server.entity.DeleteEntity;
 
 public class DeleteContainer extends EntityByIdContainer {
 
-  private static final long serialVersionUID = 4113458285424498764L;
+  private static final long serialVersionUID = -1279198934417710461L;
 
   public DeleteContainer(
       final Subject user,
diff --git a/src/main/java/org/caosdb/server/entity/container/EntityByIdContainer.java b/src/main/java/org/caosdb/server/entity/container/EntityByIdContainer.java
index 31cc6d41..466a9309 100644
--- a/src/main/java/org/caosdb/server/entity/container/EntityByIdContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/EntityByIdContainer.java
@@ -26,7 +26,7 @@ import java.util.HashMap;
 import org.apache.shiro.subject.Subject;
 
 public abstract class EntityByIdContainer extends TransactionContainer {
-  private static final long serialVersionUID = 5826139073962173660L;
+  private static final long serialVersionUID = 7997517210502207523L;
 
   public EntityByIdContainer(
       final Subject user,
diff --git a/src/main/java/org/caosdb/server/entity/container/InsertContainer.java b/src/main/java/org/caosdb/server/entity/container/InsertContainer.java
index b1b54710..99128a8a 100644
--- a/src/main/java/org/caosdb/server/entity/container/InsertContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/InsertContainer.java
@@ -37,7 +37,7 @@ public class InsertContainer extends WritableContainer {
     super(user, timestamp, srid, flags);
   }
 
-  private static final long serialVersionUID = -5264959991145009088L;
+  private static final long serialVersionUID = 8896630069350477274L;
 
   @Override
   public void add(final Element entity) {
diff --git a/src/main/java/org/caosdb/server/entity/container/ParentContainer.java b/src/main/java/org/caosdb/server/entity/container/ParentContainer.java
index 7e43d7e5..90c6078a 100644
--- a/src/main/java/org/caosdb/server/entity/container/ParentContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/ParentContainer.java
@@ -38,7 +38,7 @@ public class ParentContainer extends Container<Parent> {
 
   static ToElementStrategy s = new ParentToElementStrategy();
 
-  private static final long serialVersionUID = 4624224975178041002L;
+  private static final long serialVersionUID = 3334236170549992385L;
 
   private final EntityInterface child;
 
diff --git a/src/main/java/org/caosdb/server/entity/container/PropertyContainer.java b/src/main/java/org/caosdb/server/entity/container/PropertyContainer.java
index 074d231f..f5cce963 100644
--- a/src/main/java/org/caosdb/server/entity/container/PropertyContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/PropertyContainer.java
@@ -43,7 +43,7 @@ public class PropertyContainer extends Container<Property> {
 
   private final ToElementStrategy s;
 
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -8452118156168954326L;
 
   private final EntityInterface domain;
 
diff --git a/src/main/java/org/caosdb/server/entity/container/RetrieveContainer.java b/src/main/java/org/caosdb/server/entity/container/RetrieveContainer.java
index 681aac89..3b847f1a 100644
--- a/src/main/java/org/caosdb/server/entity/container/RetrieveContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/RetrieveContainer.java
@@ -28,7 +28,7 @@ import org.caosdb.server.entity.RetrieveEntity;
 
 public class RetrieveContainer extends EntityByIdContainer {
 
-  private static final long serialVersionUID = 2962487090601702116L;
+  private static final long serialVersionUID = 4816050921531043503L;
 
   public RetrieveContainer(
       final Subject user,
diff --git a/src/main/java/org/caosdb/server/entity/container/TransactionContainer.java b/src/main/java/org/caosdb/server/entity/container/TransactionContainer.java
index 5d7e79b2..18a7837d 100644
--- a/src/main/java/org/caosdb/server/entity/container/TransactionContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/TransactionContainer.java
@@ -94,7 +94,7 @@ public class TransactionContainer extends Container<EntityInterface>
     return this.flags;
   }
 
-  private static final long serialVersionUID = 6344299811547235114L;
+  private static final long serialVersionUID = -6062911849319971397L;
 
   /**
    * @param element
diff --git a/src/main/java/org/caosdb/server/entity/container/UpdateContainer.java b/src/main/java/org/caosdb/server/entity/container/UpdateContainer.java
index 578e422b..1c2a807b 100644
--- a/src/main/java/org/caosdb/server/entity/container/UpdateContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/UpdateContainer.java
@@ -29,7 +29,7 @@ import org.jdom2.Element;
 
 public class UpdateContainer extends WritableContainer {
 
-  private static final long serialVersionUID = -4571405395722707413L;
+  private static final long serialVersionUID = 8489287672264669883L;
 
   public UpdateContainer(
       final Subject user,
diff --git a/src/main/java/org/caosdb/server/entity/container/WritableContainer.java b/src/main/java/org/caosdb/server/entity/container/WritableContainer.java
index 1cebca67..2f914865 100644
--- a/src/main/java/org/caosdb/server/entity/container/WritableContainer.java
+++ b/src/main/java/org/caosdb/server/entity/container/WritableContainer.java
@@ -28,7 +28,7 @@ import org.caosdb.server.entity.FileProperties;
 import org.jdom2.Element;
 
 public abstract class WritableContainer extends TransactionContainer {
-  private static final long serialVersionUID = -4097777313518959519L;
+  private static final long serialVersionUID = 3011242254959617091L;
 
   public WritableContainer(
       final Subject user,
diff --git a/src/main/java/org/caosdb/server/logging/RequestErrorLogMessage.java b/src/main/java/org/caosdb/server/logging/RequestErrorLogMessage.java
index 58217ca1..4f0e57a4 100644
--- a/src/main/java/org/caosdb/server/logging/RequestErrorLogMessage.java
+++ b/src/main/java/org/caosdb/server/logging/RequestErrorLogMessage.java
@@ -37,7 +37,7 @@ import org.restlet.util.Series;
 public class RequestErrorLogMessage implements Serializable {
 
   /** */
-  private static final long serialVersionUID = 4683559833384175003L;
+  private static final long serialVersionUID = 2798857225464412730L;
 
   public String request = null;
   public String response = null;
diff --git a/src/main/java/org/caosdb/server/permissions/CaosPermission.java b/src/main/java/org/caosdb/server/permissions/CaosPermission.java
index 73bc4d78..1b793bb2 100644
--- a/src/main/java/org/caosdb/server/permissions/CaosPermission.java
+++ b/src/main/java/org/caosdb/server/permissions/CaosPermission.java
@@ -45,7 +45,7 @@ public class CaosPermission extends HashSet<PermissionRule> implements Permissio
     return ret;
   }
 
-  private static final long serialVersionUID = -2730907147406500598L;
+  private static final long serialVersionUID = 2136265443788256009L;
 
   @Override
   public boolean implies(final Permission p) {
diff --git a/src/main/java/org/caosdb/server/permissions/EntityPermission.java b/src/main/java/org/caosdb/server/permissions/EntityPermission.java
index 3a17db98..1f84dce3 100644
--- a/src/main/java/org/caosdb/server/permissions/EntityPermission.java
+++ b/src/main/java/org/caosdb/server/permissions/EntityPermission.java
@@ -34,7 +34,7 @@ import org.jdom2.Element;
 
 public class EntityPermission extends Permission {
 
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -8935713878537140286L;
   private static List<EntityPermission> instances = new ArrayList<>();
   private final int bitNumber;
 
diff --git a/src/main/java/org/caosdb/server/permissions/Permission.java b/src/main/java/org/caosdb/server/permissions/Permission.java
index 02c30419..44eee1c6 100644
--- a/src/main/java/org/caosdb/server/permissions/Permission.java
+++ b/src/main/java/org/caosdb/server/permissions/Permission.java
@@ -26,7 +26,7 @@ import org.apache.shiro.authz.permission.WildcardPermission;
 
 public class Permission extends WildcardPermission {
 
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -7471830472441416012L;
 
   public static final org.apache.shiro.authz.Permission EDIT_PRIORITY_ACL =
       new Permission(
diff --git a/src/main/java/org/caosdb/server/query/Query.java b/src/main/java/org/caosdb/server/query/Query.java
index c111a3a9..c3873cf3 100644
--- a/src/main/java/org/caosdb/server/query/Query.java
+++ b/src/main/java/org/caosdb/server/query/Query.java
@@ -153,12 +153,12 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
     }
 
     /** */
-    private static final long serialVersionUID = 8984839198803429114L;
+    private static final long serialVersionUID = -7142620266283649346L;
   }
 
   public static class QueryException extends RuntimeException {
 
-    private static final long serialVersionUID = 1L;
+    private static final long serialVersionUID = -7142620266283649346L;
 
     public QueryException(final String string) {
       super(string);
diff --git a/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java b/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
index 1460eecd..c7ecd4de 100644
--- a/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
+++ b/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
@@ -85,7 +85,7 @@ public abstract class AbstractCaosDBServerResource extends ServerResource {
   }
 
   public static class xmlNotWellFormedException extends Exception {
-    private static final long serialVersionUID = -6836378704013776849L;
+    private static final long serialVersionUID = 1716868119917270990L;
   }
 
   /**
diff --git a/src/main/java/org/caosdb/server/scripting/TimeoutException.java b/src/main/java/org/caosdb/server/scripting/TimeoutException.java
index 3eaa3708..31b9b7e9 100644
--- a/src/main/java/org/caosdb/server/scripting/TimeoutException.java
+++ b/src/main/java/org/caosdb/server/scripting/TimeoutException.java
@@ -28,5 +28,5 @@ public class TimeoutException extends Exception {
     super(string);
   }
 
-  private static final long serialVersionUID = 4871406372815136756L;
+  private static final long serialVersionUID = 3609100971776091914L;
 }
diff --git a/src/main/java/org/caosdb/server/utils/ConfigurationException.java b/src/main/java/org/caosdb/server/utils/ConfigurationException.java
index 3c9e7714..517c1167 100644
--- a/src/main/java/org/caosdb/server/utils/ConfigurationException.java
+++ b/src/main/java/org/caosdb/server/utils/ConfigurationException.java
@@ -24,7 +24,7 @@ package org.caosdb.server.utils;
 
 public class ConfigurationException extends RuntimeException {
 
-  private static final long serialVersionUID = -8445574584694720914L;
+  private static final long serialVersionUID = -8973694831724941007L;
 
   public ConfigurationException(String reason) {
     super(reason);
diff --git a/src/main/java/org/caosdb/server/utils/HashException.java b/src/main/java/org/caosdb/server/utils/HashException.java
index 2140f6d4..46c3ecc6 100644
--- a/src/main/java/org/caosdb/server/utils/HashException.java
+++ b/src/main/java/org/caosdb/server/utils/HashException.java
@@ -27,7 +27,7 @@ import org.caosdb.server.CaosDBException;
 public class HashException extends CaosDBException {
 
   /** */
-  private static final long serialVersionUID = 4842032786089373949L;
+  private static final long serialVersionUID = 5478908505951882613L;
 
   public HashException(final String string) {
     super(string);
diff --git a/src/main/java/org/caosdb/server/utils/HashNotReadyException.java b/src/main/java/org/caosdb/server/utils/HashNotReadyException.java
index c3c7ccfd..7b52a924 100644
--- a/src/main/java/org/caosdb/server/utils/HashNotReadyException.java
+++ b/src/main/java/org/caosdb/server/utils/HashNotReadyException.java
@@ -29,5 +29,5 @@ public class HashNotReadyException extends HashException {
   }
 
   /** */
-  private static final long serialVersionUID = 2389389859670664559L;
+  private static final long serialVersionUID = 7709720557931578533L;
 }
diff --git a/src/main/java/org/caosdb/server/utils/HashTimeoutException.java b/src/main/java/org/caosdb/server/utils/HashTimeoutException.java
index 92e105a2..4733ae53 100644
--- a/src/main/java/org/caosdb/server/utils/HashTimeoutException.java
+++ b/src/main/java/org/caosdb/server/utils/HashTimeoutException.java
@@ -29,5 +29,5 @@ public class HashTimeoutException extends HashException {
   }
 
   /** */
-  private static final long serialVersionUID = 1L;
+  private static final long serialVersionUID = -1616384952193042048L;
 }
diff --git a/src/main/java/org/caosdb/server/utils/fsm/ActionNotAllowedException.java b/src/main/java/org/caosdb/server/utils/fsm/ActionNotAllowedException.java
index 950136aa..ad643a0a 100644
--- a/src/main/java/org/caosdb/server/utils/fsm/ActionNotAllowedException.java
+++ b/src/main/java/org/caosdb/server/utils/fsm/ActionNotAllowedException.java
@@ -30,7 +30,7 @@ public class ActionNotAllowedException extends RuntimeException {
     this.action = action;
   }
 
-  private static final long serialVersionUID = -7723481489788838572L;
+  private static final long serialVersionUID = -4324962066954446942L;
 
   @Override
   public String getMessage() {
diff --git a/src/main/java/org/caosdb/server/utils/fsm/MissingImplementationException.java b/src/main/java/org/caosdb/server/utils/fsm/MissingImplementationException.java
index 5984283d..8282e5dd 100644
--- a/src/main/java/org/caosdb/server/utils/fsm/MissingImplementationException.java
+++ b/src/main/java/org/caosdb/server/utils/fsm/MissingImplementationException.java
@@ -28,5 +28,5 @@ public class MissingImplementationException extends Exception {
     super("The state `" + s.toString() + "` has no implementation.");
   }
 
-  private static final long serialVersionUID = -1844861392151564478L;
+  private static final long serialVersionUID = -1138551658177420875L;
 }
diff --git a/src/main/java/org/caosdb/server/utils/fsm/StateNotReachableException.java b/src/main/java/org/caosdb/server/utils/fsm/StateNotReachableException.java
index db057678..3970f60e 100644
--- a/src/main/java/org/caosdb/server/utils/fsm/StateNotReachableException.java
+++ b/src/main/java/org/caosdb/server/utils/fsm/StateNotReachableException.java
@@ -28,5 +28,5 @@ public class StateNotReachableException extends Exception {
     super("The state `" + s.toString() + "` is not reachable.");
   }
 
-  private static final long serialVersionUID = -162428821672960032L;
+  private static final long serialVersionUID = -1826791324169513493L;
 }
diff --git a/src/main/java/org/caosdb/server/utils/fsm/TransitionNotAllowedException.java b/src/main/java/org/caosdb/server/utils/fsm/TransitionNotAllowedException.java
index 0b831dfb..f0547704 100644
--- a/src/main/java/org/caosdb/server/utils/fsm/TransitionNotAllowedException.java
+++ b/src/main/java/org/caosdb/server/utils/fsm/TransitionNotAllowedException.java
@@ -24,7 +24,7 @@ package org.caosdb.server.utils.fsm;
 
 public class TransitionNotAllowedException extends Exception {
 
-  private static final long serialVersionUID = -7688041374190101361L;
+  private static final long serialVersionUID = -7236981582249457939L;
 
   public TransitionNotAllowedException(final State state, final Transition transition) {
     super(
-- 
GitLab