Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BZ-1403018 Backport ISPN-4706 To EAP 6.4.x #4739

Merged
merged 1 commit into from Jan 10, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -172,22 +172,19 @@ public void start() {

@Stop(priority = 13) // Stop after global marshaller
public void stop() {
started = false;
writers.clear();
readers.clear();
started = false;
log.trace("Externalizer reader and writer maps have been cleared and constant object table was stopped");
}

@Override
public Writer getObjectWriter(Object o) throws IOException {
Class<?> clazz = o.getClass();
Writer writer = writers.get(clazz);
if (writer == null) {
if (Thread.currentThread().isInterrupted())
throw new IOException(new InterruptedException(String.format(
"Cache manager is shutting down, so type write externalizer for type=%s cannot be resolved. Interruption being pushed up.",
clazz.getName())));
if (!started) {
throw log.externalizerTableStopped(clazz.getName());
}
Writer writer = writers.get(clazz);
return writer;
}

Expand Down
3 changes: 3 additions & 0 deletions core/src/main/java/org/infinispan/util/logging/Log.java
Expand Up @@ -853,5 +853,8 @@ void asyncStoreShutdownTimeoutTooHigh(long configuredAsyncStopTimeout,

@Message(value = "Unable to broadcast invalidation messages", id = 231)
RuntimeException unableToBroadcastInvalidation(@Cause Throwable e);

@Message(value="Cache manager is shutting down, so type write externalizer for type=%s cannot be resolved", id = 239)
IOException externalizerTableStopped(String className);
}