diff --git a/resilience4j-bulkhead/src/main/java/io/github/resilience4j/bulkhead/internal/FixedThreadPoolBulkhead.java b/resilience4j-bulkhead/src/main/java/io/github/resilience4j/bulkhead/internal/FixedThreadPoolBulkhead.java
index <HASH>..<HASH> 100644
--- a/resilience4j-bulkhead/src/main/java/io/github/resilience4j/bulkhead/internal/FixedThreadPoolBulkhead.java
+++ b/resilience4j-bulkhead/src/main/java/io/github/resilience4j/bulkhead/internal/FixedThreadPoolBulkhead.java
@@ -142,10 +142,9 @@ public class FixedThreadPoolBulkhead implements ThreadPoolBulkhead {
                 try {
                     publishBulkheadEvent(() -> new BulkheadOnCallPermittedEvent(name));
                     return callable.call();
-                } catch (Exception e) {
-                    if(e instanceof CompletionException){
-                        throw (CompletionException)e;
-                    }
+                } catch (CompletionException e) {
+                    throw e;
+                } catch (Exception e){
                     throw new CompletionException(e);
                 }
             }), executorService).whenComplete((result, throwable) -> {
Fixed FixedThreadPoolBulkhead: A CompletionException should not be wrapped inside of another CompletionException.