When use_send_queues=true, and we try to add a message to a full queue, we get an exception because BlockingQueue.add() is used. Instead, the sender should block, we should use BlockingQueue.put() and handle the InterruptedException when the sender is stopped.