Skip to content

bug fix and log optimization

Compare
Choose a tag to compare
@archfish archfish released this 26 Dec 02:43
· 23 commits to master since this release

breaking change:
real_producer was return an producer now passing a block and return yield result.

def real_producer(msg, &block)
  if @producers.size.zero?
    PulsarSdk.logger.warn(__method__){"There is no available producer for topic: 「#{@topic}」, skipping action!"}
    return
  end

  route_index = msg.nil? ? 0 : @router.route(msg.key, @producers.size)

  yield @producers[route_index]
end

use case

producer.real_producer(p_msg) do |producer_|
  producer_.execute(base_cmd, p_msg)
  producer_.receipt
end