[Spread-users] Spread.pm

Andreas Dembach andreas.dembach at kopernikus.de
Thu Dec 14 07:16:13 EST 2000

"Theo E. Schlossnagle" wrote:

> my($mbox, $pname) = SP_connect( {
>         'spread_name' => 4803,
>         'private_name' => 'user', } );
> $mbox
> || die "Count not connect to local Spread daemon";
> SP_join($mbox, 'CacheExp') || die "Could not join CacheExp: $sperrno";
> Hope this helps!

Yes! Everything works fine now! Except one thing, hm ...:

I want to use Spread to send cache expiry messages to a bunch of machines. These
messages are quite short char strings (actually the object id's).
I'm using SP_multicast like this:

my $rc = SP_multicast($self->{mbox}, SAFE_MESS, @{$self->{joined_groups}}, 0,
"$identifier")  || warn "Cannot multicast to group: $sperrno, $!";

This is ok as far as I do not send more than about 1600 messages in a short time
(about 2-5 secs). After that SP_multicast starts to complain:

"Cannot multicast to group: Illegal Session, Datenübergabe unterbrochen (broken
pipe) at blib/lib/Urbia/Base/Cache.pm line 90."

Seems like there is a buffer running out of memory... But I couldn't find any
hints in the documentation on how much data Spread can buffer in the mailbox.
Or maybe SAFE_MESS is not the right mode for this application?

Any idea?

--- Andreas

More information about the Spread-users mailing list