Bud issue.. "Bad inbound message of class Array"

16 views
Skip to first unread message

Oren

unread,
Dec 9, 2011, 5:57:52 PM12/9/11
to programthecloud
This is the second time I've run into this issue and I don't
understand why. I've imported ReliableDelivery into one of my modules
as so:

import ReliableDelivery => :kvs_comm

And when I try to put anything into kvs_comm.pipe_in, I get the
following error:

Bud::Error: bad inbound message of class Array:
["kvs_comm__bed__pipe_chan", ["127.0.0.1:54322", "127.0.0.1:12345", 2,
"foo"]]

I don't know why it's happening, so I tried modifying this file:
https://github.com/bloom-lang/bud/blob/master/lib/bud/server.rb
in my local gem to do a puts of all the conditions within the "unless"
section at the very bottom and I get 'true true false true',
indicating that for some reason,
@bud.tables does not include "kvs_comm__bed__pipe_chan".to_sym . What
would put that into @bud.tables? Why wouldn't it be put there
automatically?
Some insight on this would be much appreciated please. Thanks!!

Oren

Peter Alvaro

unread,
Dec 9, 2011, 6:07:24 PM12/9/11
to program...@googlegroups.com
can you help me reproduce the issue?  the code below throws no errors: what do I need to do to it to reproduce the error you see?

class Ummm
  include Bud
  import ReliableDelivery => :rd
end


u = Ummm.new(:port => 12345)
u.run_bg

u.sync_do{ u.rd__pipe_in <+ [["127.0.0.1:12346", u.ip_port, 1, "foobar"]] }
3.times { u.tick }

Oren

unread,
Dec 9, 2011, 6:24:35 PM12/9/11
to programthecloud
Hmm.. I'm not sure. I imagine it is something else conflicting somehow
causing the problem...

Peter, are you in your office? If it would be convenient for you,
maybe I could stop by in half an hour or so?

Peter Alvaro

unread,
Dec 9, 2011, 7:16:04 PM12/9/11
to program...@googlegroups.com
fraid not: this semester I stay home and watch the baby on fridays.

we can try to debug this over email.

Oren

unread,
Dec 9, 2011, 8:04:07 PM12/9/11
to programthecloud
Thanks Peter -- I've gone ahead and emailed you.

Rising Sun

unread,
Dec 16, 2011, 5:54:02 PM12/16/11
to programthecloud
You've probably already solved the problem but I got this error
before:

Bud::Error: bad inbound message of class Array: ["rd__bed__pipe_chan",
["localhost:12346", "127.0.0.1:47996", 0, "pause"]]I got this error
because
AgreementConfig ---message--> Participant, but AgreementConfig imports
RD whereas Participant includes RD. I made them both import and it
worked.

Reply all
Reply to author
Forward
0 new messages