Re: [jgroups-users] How to hijack a JGroups channel inside Infinispan ... (and get away with it !)
Questions/problems related to using JGroups <[email protected]> Wed, 15 Jan 2020 13:28:26 +0100
| Newsgroups | gmane.comp.java.javagroups.general |
|---|---|
| Message-ID | <mailman.26510.1579091328.2125.javagroups-users@lists.sourceforge.net> |
--===============2499838041940106443== Content-Type: multipart/alternative; boundary="0000000000000cc7fd059c2cd932" --0000000000000cc7fd059c2cd932 Content-Type: text/plain; charset="UTF-8" In order to use insertAtTop would I need to subclass ForkChannel then override getFORK? or did you have something else in mind? J On Wed, Jan 15, 2020 at 12:08 PM Questions/problems related to using JGroups <[email protected]> wrote: > OK. So what's a 'rogue JVM'? :-) > > Note that you could use ProtocolStack.insertAtTop() rather than finding > a frag protocol and inserting it on top. > > Cheers, > > On 15.01.20 09:00, Questions/problems related to using JGroups wrote: > > I did reply yesterday but just realised my message was blocked.. "550 > > Blacklisted file extension detected". There must have been a rogue JVM > > because now it seems to be working with the changes you suggested (hope > > this is what you meant > > > https://github.com/johnou/orbit-infinispan/blob/master/src/main/java/com/sulake/proto/jgroups/JGroupsClusterPeer.java#L169 ), > > > regardless I am happy to share the project I put together just in case > > anyone else is interested! https://github.com/johnou/orbit-infinispan > > > > On Tue, Jan 14, 2020 at 6:59 PM Questions/problems related to using > > JGroups <[email protected] > > <mailto:[email protected]>> wrote: > > > > A reproducer with a POM including the right deps would be good, so I > > can > > take a look > > > > On 14.01.20 15:45, Questions/problems related to using JGroups wrote: > > > Not missing any ctors, I am happy with JChannel(InputStream) it > > makes > > > more sense than URL. > > > > > > Infinispan 9.4.16 to 10.1.0.Final. > > > > > > I rewrote the bootstrap as you suggested but the fork channel is > > still > > > logging the same warn message. > > > > > > 2020-01-14T15:43:06,077 WARN [jgroups-5,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:15,416 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:15,446 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:15,466 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:15,491 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:15,512 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:16,081 WARN [jgroups-11,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:26,079 WARN [jgroups-16,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > 2020-01-14T15:43:36,080 WARN [jgroups-17,proxy-service-1-4894] > > > (org.jgroups.protocols.FORK) null: fork-channel for > > id=lead-hijacker not > > > found; discarding message [] > > > > > > I will reserve some time later this afternoon to put together a > > small > > > reproducer. > > > > > > On Tue, Jan 14, 2020 at 1:17 PM Questions/problems related to > using > > > JGroups <[email protected] > > <mailto:[email protected]> > > > <mailto:[email protected] > > <mailto:[email protected]>>> wrote: > > > > > > Why do you create your own base channel? You should fetch the > > existing > > > JChannel from Infinispan and create a ForkChannel over it. > > > Which ctor are you missing? new JChannel(InputStream) still > > exists! > > > Cheers, > > > > > > On 13.01.20 16:37, Questions/problems related to using > > JGroups wrote: > > > > Hey all, > > > > > > > > So I recently upgraded to Infinispan 10.1.0.Final and it > came > > > with a few > > > > surprises with the JGroups update, a few of the > > constructors in > > > JChannel > > > > are no longer available - it was fast to replace this with > > > > org.jgroups.conf.XmlConfigurator , however, the hijacked > > channel > > > on the > > > > other hand seems to be broken / non functional (see logs > > below).. > > > before > > > > digging into the Infinispan Jgroups bootstrap code too far > I > > > thought it > > > > might be worth reaching out here just in case someone has > > already > > > run > > > > into this problem. > > > > > > > > 2020-01-13T16:11:15,444 WARN [jgroups-6,space-service-1] > > > > (org.jgroups.protocols.FORK) space-service-1: fork-channel > for > > > > id=lead-hijacker not found; discarding message [] > > > > 2020-01-13T16:11:15,466 WARN [jgroups-6,space-service-1] > > > > (org.jgroups.protocols.FORK) space-service-1: fork-channel > for > > > > id=lead-hijacker not found; discarding message [] > > > > 2020-01-13T16:11:15,490 WARN [jgroups-6,space-service-1] > > > > (org.jgroups.protocols.FORK) space-service-1: fork-channel > for > > > > id=lead-hijacker not found; discarding message [] > > > > 2020-01-13T16:11:15,512 WARN [jgroups-6,space-service-1] > > > > (org.jgroups.protocols.FORK) space-service-1: fork-channel > for > > > > id=lead-hijacker not found; discarding message [] > > > > 2020-01-13T16:11:15,917 WARN [jgroups-6,space-service-1] > > > > (org.jgroups.protocols.FORK) space-service-1: fork-channel > for > > > > id=lead-hijacker not found; discarding message [] > > > > > > > > Cheers, > > > > > > > > -- > > > > Johno Crawford > > > > > > > > > > > > _______________________________________________ > > > > javagroups-users mailing list > > > > [email protected] > > <mailto:[email protected]> > > > <mailto:[email protected] > > <mailto:[email protected]>> > > > > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > > > > -- > > > Bela Ban | http://www.jgroups.org > > > > > > > > > > > > _______________________________________________ > > > javagroups-users mailing list > > > [email protected] > > <mailto:[email protected]> > > > <mailto:[email protected] > > <mailto:[email protected]>> > > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > > > > > > -- > > > Johno Crawford > > > > > > > > > _______________________________________________ > > > javagroups-users mailing list > > > [email protected] > > <mailto:[email protected]> > > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > -- > > Bela Ban | http://www.jgroups.org > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > [email protected] > > <mailto:[email protected]> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > > -- > > Johno Crawford > > > > > > _______________________________________________ > > javagroups-users mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Johno Crawford --0000000000000cc7fd059c2cd932 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>In order to use insertAtTop would I need to subclass= =C2=A0ForkChannel then override=C2=A0getFORK? or did you have something els= e in mind?</div><div><br></div><div>J</div><br><div class=3D"gmail_quote"><= div dir=3D"ltr" class=3D"gmail_attr">On Wed, Jan 15, 2020 at 12:08 PM Quest= ions/problems related to using JGroups <<a href=3D"mailto:javagroups-use= [email protected]">[email protected]</a>> wr= ote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px= 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">OK. So what= 's a 'rogue JVM'? :-)<br> <br> Note that you could use ProtocolStack.insertAtTop() rather than finding <br= > a frag protocol and inserting it on top.<br> <br> Cheers,<br> <br> On 15.01.20 09:00, Questions/problems related to using JGroups wrote:<br> > I did reply yesterday but just realised my message was blocked.. "= ;550 <br> > Blacklisted file extension detected". There must have been a rogu= e JVM <br> > because now it seems to be working with the changes you suggested (hop= e <br> > this is what you meant <br> > <a href=3D"https://github.com/johnou/orbit-infinispan/blob/master/src/= main/java/com/sulake/proto/jgroups/JGroupsClusterPeer.java#L169" rel=3D"nor= eferrer" target=3D"_blank">https://github.com/johnou/orbit-infinispan/blob/= master/src/main/java/com/sulake/proto/jgroups/JGroupsClusterPeer.java#L169<= /a>=C2=A0), <br> > regardless I am happy to share the project I put together just in case= <br> > anyone else is interested! <a href=3D"https://github.com/johnou/orbit-= infinispan" rel=3D"noreferrer" target=3D"_blank">https://github.com/johnou/= orbit-infinispan</a><br> > <br> > On Tue, Jan 14, 2020 at 6:59 PM Questions/problems related to using <b= r> > JGroups <<a href=3D"mailto:[email protected]" = target=3D"_blank">[email protected]</a> <br> > <mailto:<a href=3D"mailto:[email protected]" t= arget=3D"_blank">[email protected]</a>>> wrote:<= br> > <br> >=C2=A0 =C2=A0 =C2=A0A reproducer with a POM including the right deps wo= uld be good, so I<br> >=C2=A0 =C2=A0 =C2=A0can<br> >=C2=A0 =C2=A0 =C2=A0take a look<br> > <br> >=C2=A0 =C2=A0 =C2=A0On 14.01.20 15:45, Questions/problems related to us= ing JGroups wrote:<br> >=C2=A0 =C2=A0 =C2=A0 > Not missing any ctors, I am happy with JChann= el(InputStream) it<br> >=C2=A0 =C2=A0 =C2=A0makes<br> >=C2=A0 =C2=A0 =C2=A0 > more sense than URL.<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > Infinispan 9.4.16 to=C2=A010.1.0.Final.<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > I rewrote the bootstrap as you suggested but = the fork channel is<br> >=C2=A0 =C2=A0 =C2=A0still<br> >=C2=A0 =C2=A0 =C2=A0 > logging the same warn message.<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:06,077 WARN =C2=A0[jgroups-5= ,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:15,416 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:15,446 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:15,466 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:15,491 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:15,512 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:16,081 WARN =C2=A0[jgroups-1= 1,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:26,079 WARN =C2=A0[jgroups-1= 6,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 > 2020-01-14T15:43:36,080 WARN =C2=A0[jgroups-1= 7,proxy-service-1-4894]<br> >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protocols.FORK) null: fork-chann= el for<br> >=C2=A0 =C2=A0 =C2=A0id=3Dlead-hijacker not<br> >=C2=A0 =C2=A0 =C2=A0 > found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > I will reserve some time later this afternoon= to put together a<br> >=C2=A0 =C2=A0 =C2=A0small<br> >=C2=A0 =C2=A0 =C2=A0 > reproducer.<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > On Tue, Jan 14, 2020 at 1:17 PM Questions/pro= blems related to using<br> >=C2=A0 =C2=A0 =C2=A0 > JGroups <<a href=3D"mailto:javagroups-user= [email protected]" target=3D"_blank">[email protected]= ge.net</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>><br> >=C2=A0 =C2=A0 =C2=A0 > <mailto:<a href=3D"mailto:javagroups-users= @lists.sourceforge.net" target=3D"_blank">[email protected]= e.net</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>>>> wrote:<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0Why do you create your own= base channel? You should fetch the<br> >=C2=A0 =C2=A0 =C2=A0existing<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0JChannel from Infinispan a= nd create a ForkChannel over it.<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0Which ctor are you missing= ? new JChannel(InputStream) still<br> >=C2=A0 =C2=A0 =C2=A0exists!<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0Cheers,<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0On 13.01.20 16:37, Questio= ns/problems related to using<br> >=C2=A0 =C2=A0 =C2=A0JGroups wrote:<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > Hey all,<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > So I recently upgrad= ed to Infinispan 10.1.0.Final and it came<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0with a few<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > surprises with the J= Groups update, a few of the<br> >=C2=A0 =C2=A0 =C2=A0constructors in<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0JChannel<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > are no longer availa= ble - it was fast to replace this with<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > org.jgroups.conf.Xml= Configurator , however, the hijacked<br> >=C2=A0 =C2=A0 =C2=A0channel<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0on the<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > other hand seems to = be broken / non functional (see logs<br> >=C2=A0 =C2=A0 =C2=A0below)..<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0before<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > digging into the Inf= inispan Jgroups bootstrap code too far I<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0thought it<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > might be worth reach= ing out here just in case someone has<br> >=C2=A0 =C2=A0 =C2=A0already<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0run<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > into this problem.<b= r> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > 2020-01-13T16:11:15,= 444 WARN =C2=A0[jgroups-6,space-service-1]<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protoco= ls.FORK) space-service-1: fork-channel for<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > id=3Dlead-hijacker n= ot found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > 2020-01-13T16:11:15,= 466 WARN =C2=A0[jgroups-6,space-service-1]<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protoco= ls.FORK) space-service-1: fork-channel for<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > id=3Dlead-hijacker n= ot found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > 2020-01-13T16:11:15,= 490 WARN =C2=A0[jgroups-6,space-service-1]<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protoco= ls.FORK) space-service-1: fork-channel for<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > id=3Dlead-hijacker n= ot found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > 2020-01-13T16:11:15,= 512 WARN =C2=A0[jgroups-6,space-service-1]<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protoco= ls.FORK) space-service-1: fork-channel for<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > id=3Dlead-hijacker n= ot found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > 2020-01-13T16:11:15,= 917 WARN =C2=A0[jgroups-6,space-service-1]<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > (org.jgroups.protoco= ls.FORK) space-service-1: fork-channel for<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > id=3Dlead-hijacker n= ot found; discarding message []<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > Cheers,<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > --<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > Johno Crawford<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > ____________________= ___________________________<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > javagroups-users mai= ling list<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"mailto:ja= [email protected]" target=3D"_blank">javagroups-users@li= sts.sourceforge.net</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mail= to:[email protected]" target=3D"_blank">javagroups-use= [email protected]</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>>><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"https://l= ists.sourceforge.net/lists/listinfo/javagroups-users" rel=3D"noreferrer" ta= rget=3D"_blank">https://lists.sourceforge.net/lists/listinfo/javagroups-use= rs</a><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0--<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0Bela Ban | <a href=3D"http= ://www.jgroups.org" rel=3D"noreferrer" target=3D"_blank">http://www.jgroups= .org</a><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0__________________________= _____________________<br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0javagroups-users mailing l= ist<br> >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"mailto:[email protected]= ceforge.net" target=3D"_blank">[email protected]</a><b= r> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>><br> >=C2=A0 =C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mail= to:[email protected]" target=3D"_blank">javagroups-use= [email protected]</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>>><br> >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"https://lists.sourceforge.net/list= s/listinfo/javagroups-users" rel=3D"noreferrer" target=3D"_blank">https://l= ists.sourceforge.net/lists/listinfo/javagroups-users</a><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > --<br> >=C2=A0 =C2=A0 =C2=A0 > Johno Crawford<br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 ><br> >=C2=A0 =C2=A0 =C2=A0 > _____________________________________________= __<br> >=C2=A0 =C2=A0 =C2=A0 > javagroups-users mailing list<br> >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"mailto:[email protected]= ceforge.net" target=3D"_blank">[email protected]</a><b= r> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>><br> >=C2=A0 =C2=A0 =C2=A0 > <a href=3D"https://lists.sourceforge.net/list= s/listinfo/javagroups-users" rel=3D"noreferrer" target=3D"_blank">https://l= ists.sourceforge.net/lists/listinfo/javagroups-users</a><br> >=C2=A0 =C2=A0 =C2=A0 ><br> > <br> >=C2=A0 =C2=A0 =C2=A0-- <br> >=C2=A0 =C2=A0 =C2=A0Bela Ban | <a href=3D"http://www.jgroups.org" rel= =3D"noreferrer" target=3D"_blank">http://www.jgroups.org</a><br> > <br> > <br> > <br> >=C2=A0 =C2=A0 =C2=A0_______________________________________________<br> >=C2=A0 =C2=A0 =C2=A0javagroups-users mailing list<br> >=C2=A0 =C2=A0 =C2=A0<a href=3D"mailto:[email protected]= e.net" target=3D"_blank">[email protected]</a><br> >=C2=A0 =C2=A0 =C2=A0<mailto:<a href=3D"mailto:javagroups-users@lists= .sourceforge.net" target=3D"_blank">[email protected]<= /a>><br> >=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.sourceforge.net/lists/list= info/javagroups-users" rel=3D"noreferrer" target=3D"_blank">https://lists.s= ourceforge.net/lists/listinfo/javagroups-users</a><br> > <br> > <br> > <br> > -- <br> > Johno Crawford<br> > <br> > <br> > _______________________________________________<br> > javagroups-users mailing list<br> > <a href=3D"mailto:[email protected]" target=3D"_b= lank">[email protected]</a><br> > <a href=3D"https://lists.sourceforge.net/lists/listinfo/javagroups-use= rs" rel=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/list= s/listinfo/javagroups-users</a><br> > <br> <br> -- <br> Bela Ban | <a href=3D"http://www.jgroups.org" rel=3D"noreferrer" target=3D"= _blank">http://www.jgroups.org</a><br> <br> <br> <br> _______________________________________________<br> javagroups-users mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_blank"= >[email protected]</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/javagroups-users" r= el=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/lis= tinfo/javagroups-users</a><br> </blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"= class=3D"gmail_signature">Johno Crawford</div></div> --0000000000000cc7fd059c2cd932-- --===============2499838041940106443== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============2499838041940106443== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ javagroups-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/javagroups-users --===============2499838041940106443==--