Hi all,
it seems to me that sending QMF methods to create a queue over-passes "cluster 
error checking mechanism" (if a sole node detects an error, it preventive 
leaves the cluster).

Having a simple C++ client to create a huge durable queue:

        Connection connection("amqp:tcp:127.0.0.1:5672");
        connection.open();
        Session session = connection.createSession();
        Sender sender = session.createSender("qmf.default.direct/broker");
        Address responseQueue("#reply-queue; {create:always, 
node:{x-declare:{auto-delete:true}}}");
        Receiver receiver = session.createReceiver(responseQueue);

        Message message;
        Variant::Map content;
        Variant::Map OID;
        Variant::Map arguments;
        Variant::Map properties;

        properties["durable"] = "true";
        properties["qpid.file_count"] = "3000";

        arguments["type"] = "queue";
        arguments["name"] = "HugeDurableQueue";
        arguments["properties"] = properties;
        
        OID["_object_name"] = "org.apache.qpid.broker:broker:amqp-broker";
        content["_object_id"] = OID;
        content["_method_name"] = "create";
        content["_arguments"] = arguments;
        
        encode(content, message);
        message.setReplyTo(responseQueue);
        message.setProperty("x-amqp-0-10.app-id", "qmf2");
        message.setProperty("qmf.opcode", "_method_request");
        message.setContentType("amqp/map");

        sender.send(message, true);

and running the client to a clustered pair of brokers creates a durable queue 
with 3000 files in its journal.

However, if one of the brokers (let say node1) has insufficient free disk 
space, qpid on node1 shall shut down due to the "cluster error checking 
mechanism". At least, that I see when I create the queue via qpid-config or 
using proper address string and spout/drain.

But running the above QMF method leaves the cluster in state where node1 has 
not have the queue created while node2 has it created - a substantial cluster 
de-sync.

Did I do something wrong or is it a bug?

Thanks in advance for your answers.


Kind regards,
Pavel



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscr...@qpid.apache.org

Reply via email to