javagroups-users Mailing List for JGroups (Page 3)
Brought to you by:
belaban
You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(3) |
Jul
|
Aug
|
Sep
(4) |
Oct
(2) |
Nov
(3) |
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
|
Feb
(4) |
Mar
(1) |
Apr
|
May
(4) |
Jun
(13) |
Jul
(8) |
Aug
(12) |
Sep
(21) |
Oct
(47) |
Nov
(33) |
Dec
(29) |
| 2003 |
Jan
(38) |
Feb
(44) |
Mar
(32) |
Apr
(48) |
May
(30) |
Jun
(24) |
Jul
(70) |
Aug
(89) |
Sep
(58) |
Oct
(25) |
Nov
(42) |
Dec
(53) |
| 2004 |
Jan
(64) |
Feb
(74) |
Mar
(18) |
Apr
(72) |
May
(22) |
Jun
(40) |
Jul
(66) |
Aug
(44) |
Sep
(23) |
Oct
(47) |
Nov
(96) |
Dec
(52) |
| 2005 |
Jan
(35) |
Feb
(74) |
Mar
(52) |
Apr
(43) |
May
(74) |
Jun
(60) |
Jul
(39) |
Aug
(51) |
Sep
(60) |
Oct
(57) |
Nov
(90) |
Dec
(82) |
| 2006 |
Jan
(74) |
Feb
(84) |
Mar
(92) |
Apr
(127) |
May
(139) |
Jun
(58) |
Jul
(47) |
Aug
(42) |
Sep
(68) |
Oct
(86) |
Nov
(76) |
Dec
(73) |
| 2007 |
Jan
(38) |
Feb
(42) |
Mar
(50) |
Apr
(51) |
May
(70) |
Jun
(80) |
Jul
(69) |
Aug
(131) |
Sep
(57) |
Oct
(90) |
Nov
(148) |
Dec
(75) |
| 2008 |
Jan
(125) |
Feb
(136) |
Mar
(92) |
Apr
(94) |
May
(44) |
Jun
(83) |
Jul
(35) |
Aug
(52) |
Sep
(91) |
Oct
(129) |
Nov
(129) |
Dec
(48) |
| 2009 |
Jan
(74) |
Feb
(59) |
Mar
(76) |
Apr
(76) |
May
(56) |
Jun
(117) |
Jul
(83) |
Aug
(62) |
Sep
(61) |
Oct
(129) |
Nov
(97) |
Dec
(84) |
| 2010 |
Jan
(56) |
Feb
(93) |
Mar
(80) |
Apr
(49) |
May
(37) |
Jun
(106) |
Jul
(71) |
Aug
(65) |
Sep
(146) |
Oct
(70) |
Nov
(80) |
Dec
(40) |
| 2011 |
Jan
(98) |
Feb
(83) |
Mar
(132) |
Apr
(58) |
May
(45) |
Jun
(55) |
Jul
(58) |
Aug
(68) |
Sep
(59) |
Oct
(26) |
Nov
(88) |
Dec
(31) |
| 2012 |
Jan
(57) |
Feb
(103) |
Mar
(85) |
Apr
(40) |
May
(44) |
Jun
(54) |
Jul
(25) |
Aug
(24) |
Sep
(10) |
Oct
(25) |
Nov
(61) |
Dec
(25) |
| 2013 |
Jan
(34) |
Feb
(52) |
Mar
(16) |
Apr
(61) |
May
(44) |
Jun
(45) |
Jul
(74) |
Aug
(59) |
Sep
(38) |
Oct
(37) |
Nov
(53) |
Dec
(16) |
| 2014 |
Jan
(14) |
Feb
(46) |
Mar
(38) |
Apr
(13) |
May
(67) |
Jun
(31) |
Jul
(45) |
Aug
(12) |
Sep
(13) |
Oct
(14) |
Nov
(52) |
Dec
(26) |
| 2015 |
Jan
(34) |
Feb
(36) |
Mar
(29) |
Apr
(16) |
May
(14) |
Jun
(41) |
Jul
(22) |
Aug
(28) |
Sep
(26) |
Oct
(42) |
Nov
(54) |
Dec
(85) |
| 2016 |
Jan
(39) |
Feb
(9) |
Mar
(42) |
Apr
(39) |
May
(25) |
Jun
(33) |
Jul
(20) |
Aug
(12) |
Sep
(2) |
Oct
(8) |
Nov
(8) |
Dec
(12) |
| 2017 |
Jan
(5) |
Feb
(29) |
Mar
(16) |
Apr
(5) |
May
(8) |
Jun
(9) |
Jul
(19) |
Aug
(9) |
Sep
(6) |
Oct
(23) |
Nov
(15) |
Dec
(3) |
| 2018 |
Jan
(1) |
Feb
(1) |
Mar
(3) |
Apr
(10) |
May
(14) |
Jun
(16) |
Jul
(1) |
Aug
(8) |
Sep
(1) |
Oct
(26) |
Nov
(12) |
Dec
(6) |
| 2019 |
Jan
(3) |
Feb
(2) |
Mar
(5) |
Apr
(5) |
May
(14) |
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(5) |
Oct
|
Nov
|
Dec
(1) |
| 2020 |
Jan
(20) |
Feb
(3) |
Mar
(6) |
Apr
(15) |
May
(2) |
Jun
|
Jul
(5) |
Aug
(5) |
Sep
(1) |
Oct
|
Nov
(5) |
Dec
|
| 2021 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
(8) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(3) |
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(1) |
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-02 06:47:37
|
I think I've answered this one, haven't I? Increase FD_ALL/STABLE timeouts. Try to batch as much as possible etc On 01.04.20 19:17, Questions/problems related to using JGroups wrote: > Also is there a way to limit packets and/or bandwidth used for udp > transmissions? > > On Wed, Apr 1, 2020 at 12:17 PM Questions/problems related to using > JGroups <jav...@li... > <mailto:jav...@li...>> wrote: > > Thanks! > > What's the differences between FD_ALL, FD_ALL2 and FD_ALL3? It's not > clear from the javadocs > > On Wed, Apr 1, 2020 at 10:01 AM Questions/problems related to using > JGroups <jav...@li... > <mailto:jav...@li...>> wrote: > > > > On 01.04.20 15:53, Questions/problems related to using JGroups > wrote: > > I'm using a slightly modified version of "udp.xml" that > basically > > increases some of the timeouts. I've been wiresharking some > of the > > traffic to get an idea of bandwidth usage and consumption. > > > > a) is there a supported wireshark plugin to help decode the > jgroups > > messages? > > There used to be one (written in C), but because the wire format > kept > changing, we decided it was better to use the actual parsing > code to > implement a PCAP/NG parser. See [1] for details. > > > b) I'm noticing about 3-4 packets send per second to/from 2 > nodes with > > some bursts to 7 packets. Is there a way to tell what these > messages are? > > Yes, use [1] to display the messages. > > I suspect most of the traffic is from a heartbeat protocol > (FD_ALL) or > stability (STABLE) > > > c) regarding (b), is there a way to reduce the chatter? > > Depending on what the messages are, yes, by increasing timeouts > (e.g.) > in FD_ALL. > > > [1] http://belaban.blogspot.com/2019/06/network-sniffing.html > > > > javagroups-users mailing list > > jav...@li... > <mailto:jav...@li...> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > <mailto:jav...@li...> > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > _______________________________________________ > javagroups-users mailing list > jav...@li... > <mailto:jav...@li...> > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-02 06:45:18
|
On 01.04.20 18:16, Questions/problems related to using JGroups wrote: > Thanks! > > What's the differences between FD_ALL, FD_ALL2 and FD_ALL3? It's not > clear from the javadocs Same concept, but with increasing version numbers, the protocols become more efficient. Take a look at [1] for details [1] https://issues.redhat.com/browse/JGRP-2451 -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-01 18:46:49
|
Regarding packet decoding, i followed the guide from the blog but got an exception from jgroups. ArrayIndexOutOfBoundsException -30598 called from conf.ClassConfigurator.create like 129 Message.readHeader(Message 836) Message.readFrom(Message:709) .... Since I'm using a slightly different udp config file, do i need to pass that in as an argument to the ParseMessages's class? On Wed, Apr 1, 2020 at 10:01 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > On 01.04.20 15:53, Questions/problems related to using JGroups wrote: > > I'm using a slightly modified version of "udp.xml" that basically > > increases some of the timeouts. I've been wiresharking some of the > > traffic to get an idea of bandwidth usage and consumption. > > > > a) is there a supported wireshark plugin to help decode the jgroups > > messages? > > There used to be one (written in C), but because the wire format kept > changing, we decided it was better to use the actual parsing code to > implement a PCAP/NG parser. See [1] for details. > > > b) I'm noticing about 3-4 packets send per second to/from 2 nodes with > > some bursts to 7 packets. Is there a way to tell what these messages are? > > Yes, use [1] to display the messages. > > I suspect most of the traffic is from a heartbeat protocol (FD_ALL) or > stability (STABLE) > > > c) regarding (b), is there a way to reduce the chatter? > > Depending on what the messages are, yes, by increasing timeouts (e.g.) > in FD_ALL. > > > [1] http://belaban.blogspot.com/2019/06/network-sniffing.html > > > > javagroups-users mailing list > > jav...@li... > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-01 17:18:24
|
Also is there a way to limit packets and/or bandwidth used for udp transmissions? On Wed, Apr 1, 2020 at 12:17 PM Questions/problems related to using JGroups <jav...@li...> wrote: > Thanks! > > What's the differences between FD_ALL, FD_ALL2 and FD_ALL3? It's not clear > from the javadocs > > On Wed, Apr 1, 2020 at 10:01 AM Questions/problems related to using > JGroups <jav...@li...> wrote: > >> >> >> On 01.04.20 15:53, Questions/problems related to using JGroups wrote: >> > I'm using a slightly modified version of "udp.xml" that basically >> > increases some of the timeouts. I've been wiresharking some of the >> > traffic to get an idea of bandwidth usage and consumption. >> > >> > a) is there a supported wireshark plugin to help decode the jgroups >> > messages? >> >> There used to be one (written in C), but because the wire format kept >> changing, we decided it was better to use the actual parsing code to >> implement a PCAP/NG parser. See [1] for details. >> >> > b) I'm noticing about 3-4 packets send per second to/from 2 nodes with >> > some bursts to 7 packets. Is there a way to tell what these messages >> are? >> >> Yes, use [1] to display the messages. >> >> I suspect most of the traffic is from a heartbeat protocol (FD_ALL) or >> stability (STABLE) >> >> > c) regarding (b), is there a way to reduce the chatter? >> >> Depending on what the messages are, yes, by increasing timeouts (e.g.) >> in FD_ALL. >> >> >> [1] http://belaban.blogspot.com/2019/06/network-sniffing.html >> >> >> > javagroups-users mailing list >> > jav...@li... >> > https://lists.sourceforge.net/lists/listinfo/javagroups-users >> > >> >> -- >> Bela Ban | http://www.jgroups.org >> >> >> >> _______________________________________________ >> javagroups-users mailing list >> jav...@li... >> https://lists.sourceforge.net/lists/listinfo/javagroups-users >> > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-01 16:16:56
|
Thanks! What's the differences between FD_ALL, FD_ALL2 and FD_ALL3? It's not clear from the javadocs On Wed, Apr 1, 2020 at 10:01 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > On 01.04.20 15:53, Questions/problems related to using JGroups wrote: > > I'm using a slightly modified version of "udp.xml" that basically > > increases some of the timeouts. I've been wiresharking some of the > > traffic to get an idea of bandwidth usage and consumption. > > > > a) is there a supported wireshark plugin to help decode the jgroups > > messages? > > There used to be one (written in C), but because the wire format kept > changing, we decided it was better to use the actual parsing code to > implement a PCAP/NG parser. See [1] for details. > > > b) I'm noticing about 3-4 packets send per second to/from 2 nodes with > > some bursts to 7 packets. Is there a way to tell what these messages are? > > Yes, use [1] to display the messages. > > I suspect most of the traffic is from a heartbeat protocol (FD_ALL) or > stability (STABLE) > > > c) regarding (b), is there a way to reduce the chatter? > > Depending on what the messages are, yes, by increasing timeouts (e.g.) > in FD_ALL. > > > [1] http://belaban.blogspot.com/2019/06/network-sniffing.html > > > > javagroups-users mailing list > > jav...@li... > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-01 14:01:35
|
On 01.04.20 15:53, Questions/problems related to using JGroups wrote: > I'm using a slightly modified version of "udp.xml" that basically > increases some of the timeouts. I've been wiresharking some of the > traffic to get an idea of bandwidth usage and consumption. > > a) is there a supported wireshark plugin to help decode the jgroups > messages? There used to be one (written in C), but because the wire format kept changing, we decided it was better to use the actual parsing code to implement a PCAP/NG parser. See [1] for details. > b) I'm noticing about 3-4 packets send per second to/from 2 nodes with > some bursts to 7 packets. Is there a way to tell what these messages are? Yes, use [1] to display the messages. I suspect most of the traffic is from a heartbeat protocol (FD_ALL) or stability (STABLE) > c) regarding (b), is there a way to reduce the chatter? Depending on what the messages are, yes, by increasing timeouts (e.g.) in FD_ALL. [1] http://belaban.blogspot.com/2019/06/network-sniffing.html > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-04-01 13:54:09
|
I'm using a slightly modified version of "udp.xml" that basically increases some of the timeouts. I've been wiresharking some of the traffic to get an idea of bandwidth usage and consumption. a) is there a supported wireshark plugin to help decode the jgroups messages? b) I'm noticing about 3-4 packets send per second to/from 2 nodes with some bursts to 7 packets. Is there a way to tell what these messages are? c) regarding (b), is there a way to reduce the chatter? |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-31 19:00:15
|
On 31.03.20 20:46, Questions/problems related to using JGroups wrote: > Hang on, assuming NAKACK2...I send a unicast message to node P who drops > offline before the message arrives and it never comes back online, You mean P crashes or is killed? > jgroups will continue to retransmit to that node forever? No, retransmission will stop when the new view excluding P has been installed. Note that for NAKACK2, we're using negative acks anyway, so P would ask for retransmission from the sender, so when it dies, retransmission stops. This is different from UNICAST3, where the sender re-sends messages until they're acked. > There's no limits or anything like that? Yes, there is: failure detection timeouts > On Tue, Mar 31, 2020 at 3:30 AM Questions/problems related to using > JGroups <jav...@li... > <mailto:jav...@li...>> wrote: > > > > On 30.03.20 21:42, Questions/problems related to using JGroups wrote: > > Thanks Bela > > > > I would define "delivery failure" as in, JGroups attempted to > deliver a > > message to Node X but never received an ACK or NACK for this > specific > > message. > > This is not possible, as JGroups continues to try to deliver a > message M > to any member P until the message has been delivered, or P died (1) or > got partitioned away (2). > > In (1), in case P is restarted it will acquire the state (in case of a > stateful application). This will include M (if any other member > received > it) and its effect on the state. If M was a unicast message, it won't > get re-delivered. > > In (2), a merge will merge the subgroups into one, including the state. > This doesn't apply to unicast messages such as M, either. > > > In my use case, i want to be notified of this failure to > > deliver so that i can persist the message and reattempt delivery > at a > > later date or when Node X comes back online. > > Something like persistent JMS messages? Doesn't exist in JGroups. It > could be implemented though in a separate protocol: > * The sender of a message persists it in a shared DB > * Every message carries a unique ID, every receiver sends an ACK for > this ID back to the sender > * When an ACK from all receivers (or a given receiver in the unicast > case) has been received, the message will be deleted in the DB > * On restart/merge, the coordinator sends the unacked messages to a > joiner > > > > > On Mon, Mar 30, 2020 at 7:44 AM Questions/problems related to using > > JGroups <jav...@li... > <mailto:jav...@li...> > > <mailto:jav...@li... > <mailto:jav...@li...>>> wrote: > > > > > > > > On 27.03.20 19:22, Questions/problems related to using > JGroups wrote: > > > Is there an easy way I can get notification of delivery > failure of a > > > give message? > > > > What's a delivery failure? At the application level? You > could use > > RpcDispatcher and check RspList for failures (exceptions). Or > use the > > JChannel directly and send back ack messages which are > collected and > > checked by the sender. > > > > > Also related, Is Channel.send a blocking method? > > > > Not per se. However, send() can block in the following cases: > > * The transport is TCP and the send blocks because of a full TCP > > send-window > > * Flow control (MFC/UFC) blocks because the receiver(s) don't > send > > enough credits back > > > > > _______________________________________________ > > > javagroups-users mailing list > > > jav...@li... > <mailto:jav...@li...> > > <mailto:jav...@li... > <mailto:jav...@li...>> > > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > -- > > Bela Ban | http://www.jgroups.org > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > <mailto:jav...@li...> > > <mailto:jav...@li... > <mailto:jav...@li...>> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > <mailto:jav...@li...> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > <mailto:jav...@li...> > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-31 18:46:34
|
Hang on, assuming NAKACK2...I send a unicast message to node P who drops offline before the message arrives and it never comes back online, jgroups will continue to retransmit to that node forever? There's no retransmit limits or anything like that? On Tue, Mar 31, 2020 at 3:30 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > On 30.03.20 21:42, Questions/problems related to using JGroups wrote: > > Thanks Bela > > > > I would define "delivery failure" as in, JGroups attempted to deliver a > > message to Node X but never received an ACK or NACK for this specific > > message. > > This is not possible, as JGroups continues to try to deliver a message M > to any member P until the message has been delivered, or P died (1) or > got partitioned away (2). > > In (1), in case P is restarted it will acquire the state (in case of a > stateful application). This will include M (if any other member received > it) and its effect on the state. If M was a unicast message, it won't > get re-delivered. > > In (2), a merge will merge the subgroups into one, including the state. > This doesn't apply to unicast messages such as M, either. > > > In my use case, i want to be notified of this failure to > > deliver so that i can persist the message and reattempt delivery at a > > later date or when Node X comes back online. > > Something like persistent JMS messages? Doesn't exist in JGroups. It > could be implemented though in a separate protocol: > * The sender of a message persists it in a shared DB > * Every message carries a unique ID, every receiver sends an ACK for > this ID back to the sender > * When an ACK from all receivers (or a given receiver in the unicast > case) has been received, the message will be deleted in the DB > * On restart/merge, the coordinator sends the unacked messages to a joiner > > > > > On Mon, Mar 30, 2020 at 7:44 AM Questions/problems related to using > > JGroups <jav...@li... > > <mailto:jav...@li...>> wrote: > > > > > > > > On 27.03.20 19:22, Questions/problems related to using JGroups wrote: > > > Is there an easy way I can get notification of delivery failure > of a > > > give message? > > > > What's a delivery failure? At the application level? You could use > > RpcDispatcher and check RspList for failures (exceptions). Or use the > > JChannel directly and send back ack messages which are collected and > > checked by the sender. > > > > > Also related, Is Channel.send a blocking method? > > > > Not per se. However, send() can block in the following cases: > > * The transport is TCP and the send blocks because of a full TCP > > send-window > > * Flow control (MFC/UFC) blocks because the receiver(s) don't send > > enough credits back > > > > > _______________________________________________ > > > javagroups-users mailing list > > > jav...@li... > > <mailto:jav...@li...> > > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > -- > > Bela Ban | http://www.jgroups.org > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > > <mailto:jav...@li...> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-31 07:29:51
|
On 30.03.20 21:42, Questions/problems related to using JGroups wrote: > Thanks Bela > > I would define "delivery failure" as in, JGroups attempted to deliver a > message to Node X but never received an ACK or NACK for this specific > message. This is not possible, as JGroups continues to try to deliver a message M to any member P until the message has been delivered, or P died (1) or got partitioned away (2). In (1), in case P is restarted it will acquire the state (in case of a stateful application). This will include M (if any other member received it) and its effect on the state. If M was a unicast message, it won't get re-delivered. In (2), a merge will merge the subgroups into one, including the state. This doesn't apply to unicast messages such as M, either. > In my use case, i want to be notified of this failure to > deliver so that i can persist the message and reattempt delivery at a > later date or when Node X comes back online. Something like persistent JMS messages? Doesn't exist in JGroups. It could be implemented though in a separate protocol: * The sender of a message persists it in a shared DB * Every message carries a unique ID, every receiver sends an ACK for this ID back to the sender * When an ACK from all receivers (or a given receiver in the unicast case) has been received, the message will be deleted in the DB * On restart/merge, the coordinator sends the unacked messages to a joiner > On Mon, Mar 30, 2020 at 7:44 AM Questions/problems related to using > JGroups <jav...@li... > <mailto:jav...@li...>> wrote: > > > > On 27.03.20 19:22, Questions/problems related to using JGroups wrote: > > Is there an easy way I can get notification of delivery failure of a > > give message? > > What's a delivery failure? At the application level? You could use > RpcDispatcher and check RspList for failures (exceptions). Or use the > JChannel directly and send back ack messages which are collected and > checked by the sender. > > > Also related, Is Channel.send a blocking method? > > Not per se. However, send() can block in the following cases: > * The transport is TCP and the send blocks because of a full TCP > send-window > * Flow control (MFC/UFC) blocks because the receiver(s) don't send > enough credits back > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > <mailto:jav...@li...> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > <mailto:jav...@li...> > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-30 19:42:27
|
Thanks Bela I would define "delivery failure" as in, jGroups attempted to deliver a message to Node X but never received an ACK or NACK for this specific message. In my use case, i want to be notified of this failure to deliver so that i can persist the message and reattempt delivery at a later date or when Node X comes back online. On Mon, Mar 30, 2020 at 7:44 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > On 27.03.20 19:22, Questions/problems related to using JGroups wrote: > > Is there an easy way I can get notification of delivery failure of a > > give message? > > What's a delivery failure? At the application level? You could use > RpcDispatcher and check RspList for failures (exceptions). Or use the > JChannel directly and send back ack messages which are collected and > checked by the sender. > > > Also related, Is Channel.send a blocking method? > > Not per se. However, send() can block in the following cases: > * The transport is TCP and the send blocks because of a full TCP > send-window > * Flow control (MFC/UFC) blocks because the receiver(s) don't send > enough credits back > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-30 11:42:39
|
On 27.03.20 19:22, Questions/problems related to using JGroups wrote: > Is there an easy way I can get notification of delivery failure of a > give message? What's a delivery failure? At the application level? You could use RpcDispatcher and check RspList for failures (exceptions). Or use the JChannel directly and send back ack messages which are collected and checked by the sender. > Also related, Is Channel.send a blocking method? Not per se. However, send() can block in the following cases: * The transport is TCP and the send blocks because of a full TCP send-window * Flow control (MFC/UFC) blocks because the receiver(s) don't send enough credits back > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-03-27 18:22:22
|
Is there an easy way I can get notification of delivery failure of a give message? Also related, Is Channel.send a blocking method? |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-02-20 19:37:38
|
On Thu, Feb 20, 2020 at 1:24 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > > We're using JGroups 4.1.8, channel based on TCP stack. Some customers > > want to use our product where nodes are on different architectures (e.g. > > IBM Power 9 and x86). I don't see any reason that wouldn't work since we > > just need TCP to be available on the machines, but I can only do a > > limited amount of testing. > > Perhaps you can use AWS or Google cloud to get hosts with different > architectures for testing? > Yep, but I don't want to test every combination of machines. If I were paid by the hour maybe.... :) > > > So am asking a hopefully dumb question: assuming the same version of > > everything is used on each node, do you know of any limitations to > > mixing up the node types? > > I haven't tried this, but I don't think this should be a problem Cool, thanks! Cheers, Bobby |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-02-20 06:24:11
|
On 19.02.20 19:29, Questions/problems related to using JGroups wrote: > Hi, > > We're using JGroups 4.1.8, channel based on TCP stack. Some customers > want to use our product where nodes are on different architectures (e.g. > IBM Power 9 and x86). I don't see any reason that wouldn't work since we > just need TCP to be available on the machines, but I can only do a > limited amount of testing. Perhaps you can use AWS or Google cloud to get hosts with different architectures for testing? > So am asking a hopefully dumb question: assuming the same version of > everything is used on each node, do you know of any limitations to > mixing up the node types? I haven't tried this, but I don't think this should be a problem > Thanks, > Bobby > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-02-19 18:29:55
|
Hi, We're using JGroups 4.1.8, channel based on TCP stack. Some customers want to use our product where nodes are on different architectures (e.g. IBM Power 9 and x86). I don't see any reason that wouldn't work since we just need TCP to be available on the machines, but I can only do a limited amount of testing. So am asking a hopefully dumb question: assuming the same version of everything is used on each node, do you know of any limitations to mixing up the node types? Thanks, Bobby |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-30 13:11:23
|
Is anyone using ExecutionService [1]? I've never seen any questions about it, so I assume nobody uses it. In that case, I'd like to pull it? Any disagreement? [1] http://www.jgroups.org/manual5/index.html#ExecutionService -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-29 17:08:24
|
> > > On 27.01.20 15:49, Questions/problems related to using JGroups wrote: > > Hi: > > Can someone point me to a porting guide - trying to port code between > > 3.6.14 and 4.0.15. (e.g. things that will break and must be chagned > between 3 and 4?) > > There is not porting guide. I suggest recompile your app against 4.x and > fix the compilation errors - it's as simple as that. > We ran into some issues, but I don't remember the details now *except* our main class, defined with: extends ReceiverAdapter implements RequestHandler ...used to be able to implement receive() (for simpler messages) and handle() (for things that needed to return info). With 4.x none of the receive calls worked any more. It had something to do with us using a MessageDispatcher, but I don't recall the details. We had to pull out receive/cast message and move all those things. The questions I had are in the users archive back around Nov 2017 and have "v3->v4" in the subject if it helps. There was also a change that our objects needed to move to streamable instead of serializable, which wasn't hard, but I don't remember it being obvious. I can go back and try to find all my commits to see if there's anything useful there, but anything I couldn't figure out easily is in the users list already with that string in the subject. Cheers, Bobby |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-29 10:26:07
|
On 27.01.20 15:49, Questions/problems related to using JGroups wrote: > Hi: > Can someone point me to a porting guide - trying to port code between > 3.6.14 and 4.0.15. (e.g. things that will break and must be chagned between 3 and 4?) There is not porting guide. I suggest recompile your app against 4.x and fix the compilation errors - it's as simple as that. > We use the jgroups library in a "deployed" application on the JBoss > EAP7 platform, currently trying to > upgrade between EAP7.1.x and 7.2.X, the JBoss upgrade changes jgroups > between 3.6.14 and 4.0.15. > > Some of the inital issues was are facing include, any > hints/suggestions would be greatly appreciated. > > a) Issue related to: > https://issues.redhat.com/browse/JGRP-1860 > > Bela already provided an inital answer. See [1] below for more details. > > b) org.jgroups.util.UUID is NOT backwards compatibile > See [2] for more details. > > c) Channel deprecated. Can we just change all uses of "Channel" to > "JChannel" and all will be OK? Yes. Note that I'll probably re-activate Channel in 5.0: https://issues.redhat.com/browse/JGRP-2405 > d) org.jgroups.timeoutexception was removed. Can I simply import > java.util.concurrent.timeoutexception in > place of org.jgroups.timeoutexception? Yes. > [1] In jgroups-3.6.14.Final-redhat-1.jar (EAP7.1.4) > org.jgroups.blocks.RpcDispatcher had a static interface defined. > > public static interface Marshaller { > public Buffer objectToBuffer(Object var1) throws Exception; > > public Object objectFromBuffer(byte[] var1, int var2, int var3) > throws Exception; > } > > In 4.0.15 there is now a Interface Marshaller with completely different > methods/parameters. > Any suggestions? objectToBuffer(obj) used to return a byte array (Buffer), now it needs to write obj to an output stream. The reason this was done is that we can eliminate one memory allocation. You could use Util.objectToStream() to implement this but since you know your application, perhaps the (de-)serialization can be optimized. objectFromStream can also used Util.objectFromStream(). > [2] With jgroups jgroups-3.6.14.Final-redhat-1.jar (EAP7.1.4) we > extended org.jgroups.util.UUID to > create our ToddsPayloadUUID and add > String(s) ipAddress, port and hostname (which are used by our application). > > Unfortunately in 4.0.15 org.jgroups.util.UUID is missing some methods we > used, including: > size(), readExternal(), writeExternal(), writeTo(), readFrom() Not true! UUID extends Address implements SizeStreamable extends Streamable. * size() is now serializedSize() * writeTo() and readFrom() are also defined in UUID * readExternal() and writeExternal() have been removed as UUID does not implement Serializable. But why do you need them? Use readFrom() and writeTo(); these are more efficient anyway! -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-28 09:20:01
|
FYI: airhacks.fm/#episode_72 -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-28 09:15:47
|
FYI: [1] http://belaban.blogspot.com/2020/01/first-alpha-of-jgroups-50.html -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-27 14:50:11
|
Hi: Can someone point me to a porting guide - trying to port code between 3.6.14 and 4.0.15. (e.g. things that will break and must be chagned between 3 and 4?) We use the jgroups library in a "deployed" application on the JBoss EAP7 platform, currently trying to upgrade between EAP7.1.x and 7.2.X, the JBoss upgrade changes jgroups between 3.6.14 and 4.0.15. Some of the inital issues was are facing include, any hints/suggestions would be greatly appreciated. a) Issue related to: https://issues.redhat.com/browse/JGRP-1860 Bela already provided an inital answer. See [1] below for more details. b) org.jgroups.util.UUID is NOT backwards compatibile See [2] for more details. c) Channel deprecated. Can we just change all uses of "Channel" to "JChannel" and all will be OK? d) org.jgroups.timeoutexception was removed. Can I simply import java.util.concurrent.timeoutexception in place of org.jgroups.timeoutexception? e) ... tbd Cheers [1] In jgroups-3.6.14.Final-redhat-1.jar (EAP7.1.4) org.jgroups.blocks.RpcDispatcher had a static interface defined. public static interface Marshaller { public Buffer objectToBuffer(Object var1) throws Exception; public Object objectFromBuffer(byte[] var1, int var2, int var3) throws Exception; } In 4.0.15 there is now a Interface Marshaller with completely different methods/parameters. Any suggestions? [2] With jgroups jgroups-3.6.14.Final-redhat-1.jar (EAP7.1.4) we extended org.jgroups.util.UUID to create our ToddsPayloadUUID and add String(s) ipAddress, port and hostname (which are used by our application). Unfortunately in 4.0.15 org.jgroups.util.UUID is missing some methods we used, including: size(), readExternal(), writeExternal(), writeTo(), readFrom() When we create a JChannel, we add the class to the ClassConfigurator with: org.jgroups.conf.ClassConfigurator.add(1025, ToddsPayloadUUID.class); We then call the create/add and AddressGenerator to the channel - code snippet: private static Channel createSamChannel (String aInProps) { ... try { myC = new JChannel(aInProps); createSamChannelLogger.logActivity("Create JChannel with config=" + aInProps); System.out.println("Create JChannel with config=" + aInProps); myC.addAddressGenerator(new AddressGenerator() { // Set Address Generator to SamPayloadUUID and set IpAddress and port to be what is //configured in the jgroup configuration public Address generateAddress() { Map lTcpMap=com.timetra.nms.server.multiserver.core.common.Util.getJGroupElement("TCP"); String ipAddress =(String) lTcpMap.get("bind_addr"); String port = (String) lTcpMap.get("bind_port"); String hostname; try { hostname = InetAddress.getByName(ipAddress).getHostName(); } catch (UnknownHostException e) { hostname = ipAddress; } return (Address)SamPayloadUUID.randomUUID(ipAddress, port, hostname); } }); } |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-21 14:53:11
|
On 21.01.20 15:49, Questions/problems related to using JGroups wrote: > Thanks for this. > > I didn't know about the external_addr field (I need to take some time > off and go through all the jgroups manuals again....). I think that > could solve the problem for us very easily. Keeping my fingers crossed. Note that 5.0.0.Alpha1 will be released very soon, as soon as I have the manual finished... > Will hopefully get a chance to try this soon so we at least have a plan > for the customer asking about it. Let me know whether/how this works, Cheers, > Thanks! > Bobby > > > On Tue, Jan 21, 2020 at 7:21 AM Questions/problems related to using > JGroups <jav...@li... > <mailto:jav...@li...>> wrote: > > > > On 20.01.20 18:55, Questions/problems related to using JGroups wrote: > > Hi, > > > > A customer wants to use our product on OpenStack, which (I assume > you know) > > I know it by name, but I've never used it > > > has private addresses for every node and then a floating IP > > address which can be reached everywhere. So they have nodes "not > on the > > same network, on different cloud providers / zones with incompatible > > addresses scheme." > > > > We're using a tcp stack, jgroups 4.1.8, and TCP#bind_addr has to > be set > > to the local, private, address or else jgroups can't bind to it. But > > then other nodes can't reach that node. Do you have suggestions > about > > how to make this work? > > Yes, you could bind JGroups to the private IP address and set > external_addr to the public IP address. This means JGroups will bind to > bind_addr:bind_port, but expose its address (in the discovery process) > as external_addr:(external_port). Note that if the latter is not > set, it > will be the same value as bind_port (even if it is 0; then the > ephemeral > port will be used). > > In TCPPING.initial_hosts, you'd list the *public* (external_addr) IP > addresses:ports > > > I don't have access to an OpenStack setup like this to test; I > can only > > test in one region, so I don't know if using floating IPs for > > TCPPING#initial_hosts should work or not for the nodes to find each > > other. (If so, that's great, but would mean a lot of work for us > to have > > the nodes carry around a 2nd IP address to pass to each other for > other > > reasons.) > > That should work, and I don't think you need to pass around a second IP > address, as all nodes are only known by their public IPs. > > As an alternative, which works across different cloud regions and cloud > providers, you could use the TUNNEL/GossipRouter combo, see [1] fpr > details. > Cheers, > > [1] > http://belaban.blogspot.com/2019/12/spanning-jgroups-kubernetes-based.html > > > Thanks, > > Bobby > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > <mailto:jav...@li...> > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > <mailto:jav...@li...> > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-21 14:50:42
|
Thanks for this. I didn't know about the external_addr field (I need to take some time off and go through all the jgroups manuals again....). I think that could solve the problem for us very easily. Will hopefully get a chance to try this soon so we at least have a plan for the customer asking about it. Thanks! Bobby On Tue, Jan 21, 2020 at 7:21 AM Questions/problems related to using JGroups <jav...@li...> wrote: > > > On 20.01.20 18:55, Questions/problems related to using JGroups wrote: > > Hi, > > > > A customer wants to use our product on OpenStack, which (I assume you > know) > > I know it by name, but I've never used it > > > has private addresses for every node and then a floating IP > > address which can be reached everywhere. So they have nodes "not on the > > same network, on different cloud providers / zones with incompatible > > addresses scheme." > > > > We're using a tcp stack, jgroups 4.1.8, and TCP#bind_addr has to be set > > to the local, private, address or else jgroups can't bind to it. But > > then other nodes can't reach that node. Do you have suggestions about > > how to make this work? > > Yes, you could bind JGroups to the private IP address and set > external_addr to the public IP address. This means JGroups will bind to > bind_addr:bind_port, but expose its address (in the discovery process) > as external_addr:(external_port). Note that if the latter is not set, it > will be the same value as bind_port (even if it is 0; then the ephemeral > port will be used). > > In TCPPING.initial_hosts, you'd list the *public* (external_addr) IP > addresses:ports > > > I don't have access to an OpenStack setup like this to test; I can only > > test in one region, so I don't know if using floating IPs for > > TCPPING#initial_hosts should work or not for the nodes to find each > > other. (If so, that's great, but would mean a lot of work for us to have > > the nodes carry around a 2nd IP address to pass to each other for other > > reasons.) > > That should work, and I don't think you need to pass around a second IP > address, as all nodes are only known by their public IPs. > > As an alternative, which works across different cloud regions and cloud > providers, you could use the TUNNEL/GossipRouter combo, see [1] fpr > details. > Cheers, > > [1] > http://belaban.blogspot.com/2019/12/spanning-jgroups-kubernetes-based.html > > > Thanks, > > Bobby > > > > > > > > _______________________________________________ > > javagroups-users mailing list > > jav...@li... > > https://lists.sourceforge.net/lists/listinfo/javagroups-users > > > > -- > Bela Ban | http://www.jgroups.org > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > |
|
From: Questions/problems r. to u. J. <jav...@li...> - 2020-01-21 12:20:30
|
On 20.01.20 18:55, Questions/problems related to using JGroups wrote: > Hi, > > A customer wants to use our product on OpenStack, which (I assume you know) I know it by name, but I've never used it > has private addresses for every node and then a floating IP > address which can be reached everywhere. So they have nodes "not on the > same network, on different cloud providers / zones with incompatible > addresses scheme." > > We're using a tcp stack, jgroups 4.1.8, and TCP#bind_addr has to be set > to the local, private, address or else jgroups can't bind to it. But > then other nodes can't reach that node. Do you have suggestions about > how to make this work? Yes, you could bind JGroups to the private IP address and set external_addr to the public IP address. This means JGroups will bind to bind_addr:bind_port, but expose its address (in the discovery process) as external_addr:(external_port). Note that if the latter is not set, it will be the same value as bind_port (even if it is 0; then the ephemeral port will be used). In TCPPING.initial_hosts, you'd list the *public* (external_addr) IP addresses:ports > I don't have access to an OpenStack setup like this to test; I can only > test in one region, so I don't know if using floating IPs for > TCPPING#initial_hosts should work or not for the nodes to find each > other. (If so, that's great, but would mean a lot of work for us to have > the nodes carry around a 2nd IP address to pass to each other for other > reasons.) That should work, and I don't think you need to pass around a second IP address, as all nodes are only known by their public IPs. As an alternative, which works across different cloud regions and cloud providers, you could use the TUNNEL/GossipRouter combo, see [1] fpr details. Cheers, [1] http://belaban.blogspot.com/2019/12/spanning-jgroups-kubernetes-based.html > Thanks, > Bobby > > > > _______________________________________________ > javagroups-users mailing list > jav...@li... > https://lists.sourceforge.net/lists/listinfo/javagroups-users > -- Bela Ban | http://www.jgroups.org |