rabbitmq / rabbitmq-dotnet-client

RabbitMQ .NET client for .NET Standard 2.0+ and .NET 4.6.2+
https://www.rabbitmq.com/dotnet.html
Other
2.05k stars 575 forks source link

7.0: Stack overflow "ExchangeDeclareAsync" #1444

Closed Jakimar closed 6 months ago

Jakimar commented 6 months ago

Describe the bug

Method ExchangeDeclareAsync in "IChannelExtensions" calling itself instead of underlying method of "ExchangeDeclareAsync" in "IChannel" causing Stack overflow. It's because undelrying method have "passive bool" parameter which does not exist in public one.

Stack overflow.
Repeat 13845 times:

   at RabbitMQ.Client.IChannelExtensions.ExchangeDeclareAsync(RabbitMQ.Client.IChannel, System.String, System.String, Boolean, Boolean, System.Collections.Generic.IDictionary`2<System.String,System.Object>)

Reproduction steps

call ExchangeDeclareAsync

Expected behavior

Method complete succesefully

Additional context

No response

Jakimar commented 6 months ago

I can see it's already fixed in https://github.com/rabbitmq/rabbitmq-dotnet-client/pull/1431, closing issue

lukebakken commented 6 months ago

Please see this upcoming release - packages will be available in the next hour or so: https://github.com/rabbitmq/rabbitmq-dotnet-client/releases/tag/v7.0.0-alpha.2