public static IllegalStateException newIllegalContextPoppingException(
            RequestContext currentCtx, RequestContext contextInStorage) {
        requireNonNull(currentCtx, "currentCtx");
        requireNonNull(contextInStorage, "contextInStorage");
        final IllegalStateException ex = new IllegalStateException(
                "The currentCtx " + currentCtx + " is not the same as the context in the storage: " +
                contextInStorage + ". This means the callback was called from " +
                "unexpected thread or forgetting to close previous context.");
        if (REPORTED_THREADS.add(Thread.currentThread())) {
            logger.warn("An error occurred while popping a context", ex);
        }
        return ex;
    }
Returns an {@link IllegalStateException} which is raised when popping a context from
the unexpected thread or forgetting to close the previous context.
core/src/main/java/com/linecorp/armeria/internal/common/RequestContextUtil.java