ScalaConsultants / reactive-rabbit

Reactive Streams driver for AMQP protocol. Powered by RabbitMQ library.
Apache License 2.0
184 stars 40 forks source link

Separate, non temporary, channel allows full recovery #36

Closed LGLO closed 8 years ago

LGLO commented 8 years ago

Formerly, when channels were opened just for declaring some entity, channel was closed during connection recovery what prevented successful entities recovery.

mkiedys commented 8 years ago

Can you explain what this is doing? Why adminChannel is never closed?

LGLO commented 8 years ago

There is connection with auto-recovery. When connection recovers it tries to recover channels, then entities and then consumers. When you create channel, use it to declare some entity and then close it, then during entity recovery given channel is closed with code 200.

That is why I added one (lazy) channel. If your app does some admin work, then I will have this channel opened. When connection recovers, then entities are recovered.

What do you think about separate trait Admin for all this admin functionality? One could use RabbitConnection or RabbitConnectionWithAdmin?

mkiedys commented 8 years ago

Lech, can you rebase this pull request?

vitorsvieira commented 8 years ago

Hi guys!

Can you guys rebase this?

Please and thank you!

-V

LGLO commented 8 years ago

I'll fix #33, update dependencies and will take care of this tomorrow.