Github user zentol commented on a diff in the pull request: https://github.com/apache/flink/pull/5645#discussion_r172508524 --- Diff: flink-core/src/main/java/org/apache/flink/api/java/typeutils/runtime/kryo/KryoSerializer.java --- @@ -502,6 +572,22 @@ private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundE // For testing // -------------------------------------------------------------------------------------------- + private void enterExclusiveThread() { + // we use simple get, check, set here, rather than CAS + // we don't need lock-style correctness, this is only a sanity-check and we thus + // favor speed at the cost of some false negatives in this check + Thread previous = currentThread; + if (previous == null) { + currentThread = Thread.currentThread(); + } else { + throw new IllegalStateException("Serializer already accessed by thread " + previous.getName()); --- End diff -- We can also print the current thread for debugging purposes.
---