There are several beans require TaskExecutor or TaskScheduler without @Qualifier, which means inject wrong executors if we declare some executor bean @Primary. I found the problem by changing taskExecutor in WebSocketMessageBrokerConfigurer#configureClientInboundChannel

@Override
public void configureClientInboundChannel(@NonNull ChannelRegistration registration) {
    registration.interceptors(authInterceptor);
    registration.taskExecutor(myExecutor());
}

Comment From: pivotal-cla

@CodeInDreams Please sign the Contributor License Agreement!

Click here to manually synchronize the status of this Pull Request.

See the FAQ for frequently asked questions.

Comment From: pivotal-cla

@CodeInDreams Thank you for signing the Contributor License Agreement!

Comment From: sbrannen

Hi @CodeInDreams,

Congratulations on submitting your first PR ever on GitHub!

Unfortunately, this is a breaking change. Furthermore, it reverts the intentional changes made in conjunction with #26227.

In light of that, I am closing this PR.

Comment From: CodeInDreams

Hi @CodeInDreams,

Congratulations on submitting your first PR ever on GitHub!

Unfortunately, this is a breaking change. Furthermore, it reverts the intentional changes made in conjunction with #26227.

In light of that, I am closing this PR.

Then we should either use @Qualifier or not to use autowiring. @sbrannen If agree with me, which do you prefer?