Skip to content
This repository has been archived by the owner on Nov 17, 2020. It is now read-only.

GET /api/queues fails to serialise mirror pids to JSON #184

Closed
michaelklishin opened this issue Apr 20, 2016 · 2 comments
Closed

GET /api/queues fails to serialise mirror pids to JSON #184

michaelklishin opened this issue Apr 20, 2016 · 2 comments
Assignees
Milestone

Comments

@michaelklishin
Copy link
Member

=ERROR REPORT==== 20-Apr-2016::03:25:20 ===
JSON encode error: {bad_term,<0.281.0>}
While encoding: 
[{total_count,1},
 {item_count,1},
 {filtered_count,1},
 {page,1},
 {page_size,100},
 {page_count,1},
 {items,
     [[{memory,12440},
       {messages,0},
       {messages_details,[{rate,0.0}]},
       {messages_ready,0},
       {messages_ready_details,[{rate,0.0}]},
       {messages_unacknowledged,0},
       {messages_unacknowledged_details,[{rate,0.0}]},
       {idle_since,<<"2016-04-20 10:25:17">>},
       {consumer_utilisation,''},
       {policy,<<"ha-all">>},
       {exclusive_consumer_pid,''},
       {exclusive_consumer_tag,''},
       {consumers,0},
       {slave_pids,[<0.281.0>]},
       {synchronised_slave_pids,[<0.281.0>]},
       {recoverable_slaves,[rabbit@ubuntu]},
       {state,running},
       {messages_ram,0},
       {messages_ready_ram,0},
       {messages_unacknowledged_ram,0},
       {messages_persistent,0},
       {message_bytes,0},
       {message_bytes_ready,0},
       {message_bytes_unacknowledged,0},
       {message_bytes_ram,0},
       {message_bytes_persistent,0},
       {head_message_timestamp,''},
       {disk_reads,0},
       {disk_writes,0},
       {backing_queue_status,
           {struct,
               [{mode,default},
                {q1,0},
                {q2,0},
                {delta,[delta,undefined,0,undefined]},
                {q3,0},
                {q4,0},
                {len,0},
                {target_ram_count,infinity},
                {next_seq_id,0},
                {avg_ingress_rate,0.0},
                {avg_egress_rate,0.0},
                {avg_ack_ingress_rate,0.0},
                {avg_ack_egress_rate,0.0},
                {mirror_seen,0},
                {mirror_senders,0}]}},
       {name,<<"ha.q1">>},
       {vhost,<<"/">>},
       {durable,true},
       {auto_delete,false},
       {exclusive,false},
       {owner_pid,none},
       {arguments,{struct,[{<<"ha-mode">>,<<"all">>}]}},
       {pid,<8865.5242.0>}]]}]

Steps to reproduce:

  • Set up a cluster 2 nodes, e.g. one 3.6.2 and one 3.6.1, both having rabbitmq_management enabled
  • Declare a queue, make the queue mirrored with a policy
  • Invoke GET /api/queues on the 3.6.2 node; then compare with 3.6.1
@dcorbacho
Copy link
Contributor

3.6.2 cannot format the output of rabbit_mgmt_db:augment_queues from 3.6.1, as the places where some of the formatting and clean up take place have changed. In 3.6.2, some of those are now done inside rabbit_mgmt_db, instead of rabbit_mgmt_wm_queues.

The changes were done to increase the performance, but never tested the releases compatibility. I'll check how this can be solved.

@michaelklishin
Copy link
Member Author

OK, since #41 includes a completely new implementation, we will announce it as incompatible with earlier 3.6.x releases. It sucks but the gains from #41 are worth it.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants