Dieter Cailliau | 20 Aug 16:03 2014
Picon

[jgroups-users] -Djgroups.mping.ip_ttl not applied in 3.4.3

Since my move from AS 7.2.0 (with jgroups 3.2.7) to wildfly 8.1 (with
jgroups 3.4.3), i'm unable to configure the ttl for mping via
-Djgroups.mping.ip_ttl=10.

With wireshark I see that the ttl is always set to 2 in wildfly 8.1.

It is set to my value-of-choice in AS 7.2.0.

I'm testing on a ubuntu machine with java 7:

java -version
java version "1.7.0_55"
OpenJDK Runtime Environment (IcedTea 2.4.7) (7u55-2.4.7-1ubuntu1~0.12.10.1)
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
Bela Ban | 19 Aug 11:56 2014
Picon

[jgroups-users] Converted the docs from Docbook --> AsciiDoc

FYI: I converted the tutorial [1] and manual [2] from DocBook to 
AsciiDoc. It is much nicer and therefore more enticing to write 
documentation in AsciiDoc than in DocBook, and the generated HTML looks 
really nice as well. I used AsciiDoctor to do this.

I also dropped the PDF generation, which IMO is not needed as everyone's 
online all the time anyway nowadays.

Note that GitHub supports AsciiDoc natively, so [3] renders directly in 
the browser. 'GitHub Pages' (github.io) doesn't yet support AsciiDoc, 
but once they do, I might move the docs to github.io ... this might 
ultimately lead to more contributions (e.g. typo fixes, changing 
incorrect docs etc) as changes can be made directly on the web page 
(with appropriate permission), similar to a wiki, and then a git pull 
would update the local docu. Very nice, although I have to figure out 
how to handle the part of the docs that we generate from the code (e.g. 
the protocol list).

[1] http://www.jgroups.org/tutorial/index.html

[2] http://www.jgroups.org/manual/index.html

[3] https://github.com/belaban/JGroups/blob/master/doc/manual/api.adoc

--

-- 
Bela Ban, JGroups lead (http://www.jgroups.org)

------------------------------------------------------------------------------
pooja khambhayata | 18 Aug 20:16 2014
Picon

[jgroups-users] In a large cluster of 60 nodes, split happens and Merge is not successful

Hello,

We have a Jgroups 3.3.1.Final deployed on 60 nodes.

If we start servers in groups the jgroups view comes up fine.
But when we bring up all of them together or reboot on some servers happens,

I see following problems.

1. I see n TCP connections but the jgroups view shows much less than n. I believed that
no of connections in TCP channel has to always reflect the jgroups view.

2. I see Multiple co-ordinators in the system. One co-ordinator say node A does detect this case and tries to send Mergeview to other co-ordinator say node B who is supposed to take lead in merging. But such message is dropped on the floor by second co-ordinator node B printing "No physical address found for nodeA" thus never processing any Merge views.

Only way to recover such system is to stop appl on all nodes and then start one and start others in few sets.

3. In a case of Multiple co-ordinators, if I restart the linux node containing one of the co-ordinator , other members in its group still show the rebooted node as co-ordinator.

Attachment (tcp_pers.xml): text/xml, 3517 bytes
------------------------------------------------------------------------------
_______________________________________________
javagroups-users mailing list
javagroups-users <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javagroups-users
Bela Ban | 11 Aug 14:19 2014
Picon

[jgroups-users] JGroups 3.4.5 released

More info here: https://issues.jboss.org/browse/JGRP/fixforversion/12324918
--

-- 
Bela Ban, JGroups lead (http://www.jgroups.org)

------------------------------------------------------------------------------
ibrahim | 24 Jul 22:15 2014
Picon

[jgroups-users] Cann't build a cluster using JGroup


I would build a cluster consist of three Lunix machines by using the
JGroups. The code is running fine, but each machine works independently and
apparently there is no clustering.

However, when I run the code in single machine as standalone and I create 3
instances, it works fine and forms a cluster. So I believe the problem is
not from the code.

The following is the java code "SimpleChat":

package com.github.dustinbarnes;
import org.jgroups.JChannel;
import org.jgroups.Message;
import org.jgroups.ReceiverAdapter;
import org.jgroups.View;
import org.jgroups.util.Util;

import java.util.List;
import java.util.LinkedList;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class SimpleChat extends ReceiverAdapter {
    JChannel channel;
    String user_name=System.getProperty("user.name", "n/a");
    final List<String> state=new LinkedList<String>();

    public void viewAccepted(View new_view) {
        System.out.println("** view: " + new_view);
    }

    public void receive(Message msg) {
        String line=msg.getSrc() + ": " + msg.getObject();
        System.out.println(line);
        synchronized(state) {
            state.add(line);
        }
    }

    public byte[] getState() {
        synchronized(state) {
            try {
                return Util.objectToByteBuffer(state);
            }
            catch(Exception e) {
                e.printStackTrace();
                return null;
            }
        }
    }

    public void setState(byte[] new_state) {
        try {
            List<String>
list=(List<String>)Util.objectFromByteBuffer(new_state);
            synchronized(state) {
                state.clear();
                state.addAll(list);
            }
            System.out.println("received state (" + list.size() + " messages
in chat history):");
            for(String str: list) {
                System.out.println(str);
            }
        }
        catch(Exception e) {
            e.printStackTrace();
        }
    }

    private void start() throws Exception {
        channel = new
JChannel(SimpleChat.class.getClassLoader().getResourceAsStream("tcp.xml"));
        channel.setReceiver(this);
        channel.connect("ChatRoom");
       // System.setProperty("java.net.preferIPv4Stack","true");
       channel.getState(null, 10000);
        eventLoop();
        channel.close();
    }

    private void eventLoop() {
        BufferedReader in=new BufferedReader(new
InputStreamReader(System.in));
        while(true) {
            try {
                System.out.print("> "); System.out.flush();
                String line=in.readLine().toLowerCase();
                if(line.startsWith("quit") || line.startsWith("exit")) {
                    break;
                }
                line="[" + user_name + "] " + line;
                Message msg=new Message(null, null, line);
                channel.send(msg);
            }
            catch(Exception e) {
            }
        }
    }

    public static void main(String[] args) throws Exception {
        new SimpleChat().start();
    }
}

The following is tcp.xml:

<config xmlns="urn:org:jgroups"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:org:jgroups file:schema/JGroups-2.8.xsd">
    <TCP loopback="true"
         recv_buf_size="20000000"
         send_buf_size="640000"
         discard_incompatible_packets="true"
         max_bundle_size="64000"
         max_bundle_timeout="30"
         enable_bundling="true"
         use_send_queues="false"
         sock_conn_timeout="300"

         thread_pool.enabled="true"
         thread_pool.min_threads="1"
         thread_pool.max_threads="10"
         thread_pool.keep_alive_time="5000"
         thread_pool.queue_enabled="false"
         thread_pool.queue_max_size="100"
         thread_pool.rejection_policy="run"

         oob_thread_pool.enabled="true"
         oob_thread_pool.min_threads="1"
         oob_thread_pool.max_threads="8"
         oob_thread_pool.keep_alive_time="5000"
         oob_thread_pool.queue_enabled="false"
         oob_thread_pool.queue_max_size="100"
         oob_thread_pool.rejection_policy="run"/>

    <FILE_PING location="/home/pg/p13/a6915654/"/>
    <MERGE2 max_interval="30000"
              min_interval="10000"/>
    <FD_SOCK/>
    <FD timeout="10000" max_tries="5" />
    <VERIFY_SUSPECT timeout="1500" />
    <BARRIER />
    <pbcast.NAKACK
                   use_mcast_xmit="false"
                   retransmit_timeout="300,600,1200,2400,4800"
                   discard_delivered_msgs="true"/>
    <UNICAST timeout="300,600,1200" />
    <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
                   max_bytes="400000"/>
    <pbcast.GMS print_local_addr="true" join_timeout="3000"

                view_bundling="true"/>
    <FC max_credits="2000000"
        min_threshold="0.10"/>
    <FRAG2 frag_size="60000" />
    <pbcast.STATE_TRANSFER/>
    <pbcast.FLUSH timeout="0"/>
</config>

Any idea?

--
View this message in context: http://jgroups.1086181.n5.nabble.com/Cann-t-build-a-cluster-using-JGroup-tp10316.html
Sent from the JGroups - General mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
Mark Bobick, CTO | 21 Jul 19:05 2014

[jgroups-users] link to 3.0.0 release notes is broken...

I am trying to get jgroups 3.0.0 release notes.  This link: https://github.com/belaban/JGroups/blob/master/doc/ReleaseNotes-3.0.0.txt  is 404.  Perhaps my error, but I do not see release notes in the binary or sources jars.  Please advise alternative link.

 

Regards,

 

-mark bobick            LinkedIn

 

CTO, Correlation Concepts

www.correlationconcepts.com

2880 David Walker Dr. #407

Eustis, Florida  32726

702.882.5664

 

"We will find a way, or we will make one." - Hannibal

 

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
javagroups-users mailing list
javagroups-users <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javagroups-users
ravi.gawai | 17 Jul 20:18 2014
Picon

[jgroups-users] Jgroups UDP retranmission increasing over period of time and eating heap space

Hi,
    I am using Jgroups-3.1.0.Final along with ehcache-jgroupsreplication-1.7 
and below is UDP configuration: (Only two nodes in cluster)

<?xml version="1.0" encoding="UTF-8"?>
<config>
<UDP mcast_addr="230.10.10.10" mcast_port="44552" ucast_recv_buf_size="20M"
ucast_send_buf_size="640K"
mcast_recv_buf_size="25M"
mcast_send_buf_size="640K"
loopback="true"
discard_incompatible_packets="true"
max_bundle_size="64K"
max_bundle_timeout="30"
enable_diagnostics="true"/>
<PING timeout="2000"/>
<MERGE2/>
<FD_SOCK/>
<FD_ALL/>
<VERIFY_SUSPECT timeout="2000" />
<pbcast.NAKACK2 max_rebroadcast_timeout="5000"
print_stability_history_on_failed_xmit="true"/>
<UNICAST2 timeout="800,1600,3200,6400"/>
<FRAG2 frag_size="60000"/>
<pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
max_bytes="1000000"/>
<pbcast.GMS print_local_addr="true" view_bundling="true"
max_bundling_time="300"/>
</config>

1) I did not had <FD_ALL> in earlier configuration and servers use to crash
because of out of memory as retranmission Messages object taking all the
heap memory (3g).

2) Then I added <FD_ALL> with above configuration:
Over the period of time (12-18 hours) UDP message retransmission increases
then they removes each other from grouping. debug logs showed below message
before they removed each other.

[2014-07-17 09:23:25,361] [OOB-2,EH_CACHE,server-node2-43310] WARN 
org.jgroups.protocols.UDP:1328  server-node2-43310: no physical address for
server-node1-45461, dropping message on server-node2. 

Questions: 
1) Can anybody tell me if above configuration is okay?
2) For initial 3 hours everything is normal with UDP transmission but then
retransmission increases(and heap size grows with Jgroups Message objects),
Is it related to our network  settings which is blocking UDP traffic over
period of time or need to correct some Jgroups UDP config?

--
View this message in context: http://jgroups.1086181.n5.nabble.com/Jgroups-UDP-retranmission-increasing-over-period-of-time-and-eating-heap-space-tp10294.html
Sent from the JGroups - General mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
Ingo Rockel | 15 Jul 15:58 2014

[jgroups-users] Suddenly a node blocks

Hi,

we have 12 node cluster running jgroups for sending messages and for 
syncing EHCaches data. The cluster is running is fine most of the time, 
but sometimes one nodes become unresponsive and has to be restarted. 
After the restart of the node, everything is fine again until the next 
unresponsive node.

Our monitoring requests some thread dumps before restarting the node, 
and I see a lot (thousands) these:

"BlockingWorker-105547-[35002691]" daemon prio=10 tid=0x00007f66f31ad000 
nid=0x77ae waiting on condition [0x00007f66ce38c000]
    java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000004b787df80> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
	at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2176)
	at org.jgroups.util.CreditMap.decrement(CreditMap.java:157)
	at org.jgroups.protocols.MFC.handleDownMessage(MFC.java:104)
	at org.jgroups.protocols.FlowControl.down(FlowControl.java:325)
	at org.jgroups.protocols.FRAG2.down(FRAG2.java:143)
	at org.jgroups.protocols.RSVP.down(RSVP.java:142)
	at 
org.jgroups.protocols.pbcast.STATE_TRANSFER.down(STATE_TRANSFER.java:237)
	at org.jgroups.stack.ProtocolStack.down(ProtocolStack.java:1022)
	at org.jgroups.JChannel.down(JChannel.java:767)
	at org.jgroups.JChannel.send(JChannel.java:432)

we had this problem massively after updating to jgroups 3.3.4.Final 
which still is the version we use. And Bela suggested to remove 
everything long running from the receiver threads, which I did and got 
rid of this issue massively happening.

But still it is happening from time to time. And there isn't anything 
time consuming left in the receiver threads. In fact, the receiver 
threads just take the message and put them into a 
ThreadPoolExecutorService which does all the processing.

Any ideas what I can do to narrow down this?

Thanks in advance,

	Ingo

-- 
Software Architect

Blue Lion mobile GmbH
Tel. +49 (0) 221 788 797 14
Fax. +49 (0) 221 788 797 19
Mob. +49 (0) 176 24 87 30 89

ingo.rockel <at> bluelionmobile.com
 >>> qeep: Hefferwolf

www.bluelionmobile.com
www.qeep.net

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
tdumidu | 14 Jul 10:08 2014
Picon

[jgroups-users] Communicate between two cluster

Hi,

I have two clusters. They are "user" cluster and "server" cluster. I know
according to the normal procedure it can broadcast between members in the
same cluster. But i would like to know how a member in "user" cluster sends
a broadcast to "server" cluster. Highly appreciate if somebody can provide
me a prompt answer.

Thank you.

Best Regards,
Dumidu.

--
View this message in context: http://jgroups.1086181.n5.nabble.com/Communicate-between-two-cluster-tp10282.html
Sent from the JGroups - General mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck&#174;
Code Sight&#153; - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
Jual Mahal | 12 Jul 05:33 2014
Picon

[jgroups-users] Lightweight payload for running JGroups TCP session in a bandwidth-limited custom Ethernet network

Hi, guys.

I have created a few Windows and Android apps that make use of JGroups 3.4.3.final. But, I need to create communication sessions between them under a bandwidth-limited custom network. 

I say custom because this network is using a modified TDMA waveform with Ethernet-frame based data slot that only has an effective bandwidth between 70-90 kbps and it is able to auto split and merge. 

Hence, JGroups is suitable for this kind of split-merge network. Only that I need a better JGroups configuration setup that can support many TCP clients without losing time when merging or tying to decide a coordinator.

The following setup is just testing between two clients...but I would like to achieve this with more than 10 clients with losing much time with merge (quick merge) under 70-90 kbps bandwidth condition

<config xmlns="urn:org:jgroups"
        xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/JGroups-3.3.xsd">
    <TCP bind_port="7800"
         loopback="false"
         recv_buf_size="${tcp.recv_buf_size:5M}"
         send_buf_size="${tcp.send_buf_size:640K}"
         max_bundle_size="64K"
         max_bundle_timeout="30"
         use_send_queues="true"
         sock_conn_timeout="300"

         timer_type="new3"
         timer.min_threads="4"
         timer.max_threads="10"
         timer.keep_alive_time="3000"
         timer.queue_max_size="500"
         
         thread_pool.enabled="true"
         thread_pool.min_threads="1"
         thread_pool.max_threads="10"
         thread_pool.keep_alive_time="5000"
         thread_pool.queue_enabled="false"
         thread_pool.queue_max_size="100"
         thread_pool.rejection_policy="discard"

         oob_thread_pool.enabled="true"
         oob_thread_pool.min_threads="1"
         oob_thread_pool.max_threads="8"
         oob_thread_pool.keep_alive_time="5000"
         oob_thread_pool.queue_enabled="false"
         oob_thread_pool.queue_max_size="100"
         oob_thread_pool.rejection_policy="discard"/>
                         
    <TCPPING timeout="3000"
             initial_hosts="192.168.0.200[7800],192.168.0.200[7801],192.168.0.201[7800],192.168.0.201[7801]"
             port_range="1"
             num_initial_members="4"/>
    <MERGE2  min_interval="10000"
             max_interval="30000"/>
    <FD_SOCK/>
    <FD timeout="3000" max_tries="3" />
    <VERIFY_SUSPECT timeout="1500"  />
    <BARRIER />
    <pbcast.NAKACK2 use_mcast_xmit="false"
                   discard_delivered_msgs="true"/>
    <UNICAST3 />
    <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
                   max_bytes="4M"/>
    <pbcast.GMS print_local_addr="true" join_timeout="3000"

                view_bundling="true"/>
    <MFC max_credits="2M"
         min_threshold="0.4"/>
    <FRAG2 frag_size="60K"  />
    <!--RSVP resend_interval="2000" timeout="10000"/-->
    <pbcast.STATE_TRANSFER/>
------------------------------------------------------------------------------
_______________________________________________
javagroups-users mailing list
javagroups-users <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javagroups-users
Mark Lewis | 11 Jul 18:42 2014
Picon

[jgroups-users] Android support - How to Run the Demo Program

I'm trying to run the Jgroups demo 'Draw' program from a simple Android 
App wrapper.

Please provide some instructions to run a sample Jgroups in Android.
I get the error:
     I  get the FATAL EXCEPTION: java.lang.NoClassDefFoundError: 
org.jgroups.demos.Draw

Here is what I tried:

 From a Windows command prompt, I run 2 instances of demos.Draw running 
on windows, which will interact with the Android instance:
    java -cp ./jgroups-3.4.4.Final.jar -Djava.net.preferIPv4Stack=true 
org.jgroups.demos.Draw

In the Android  ADT, Creat a new Android Application Project 'jgroupDraw'
In Package Explorer, in the 'jGroupDraw' project, make a folder 'libs'
 From outside eclipse, download jgroups-3.4.4.Final.jar, and copy into 
the 'libs' folder
Inside eclipse, do 'F5' or right-click 'Refresh'
In Package Explorer, open 'libs', and see the jgroups jar file
Right-click the jar file, do Build-Path, Add to Build-Path
In the main layout, add a button 'Draw'
Edit the main activity source file:

At the end of the 'import' lines, add a line:
         'import org.jgroups.demos.Draw;'

Just after  the 'public class ....' line, add the line:

     Button drawButton;

At the end of the 'onCreate()' method, add the lines:

         drawButton = (Button) findViewById(R.id.button1);

         drawButton.setOnClickListener(
                 new OnClickListener() {
                      <at> Override
                     public void onClick(View arg0) {
                         org.jgroups.demos.Draw.main(null);   // <-- You 
will notice that this auto-completes for you as you type
                     }
                 }
         );

 From Eclipse, run this jgroupsDraw app, and touch the 'Draw' button.

Can someone provide help with this?

------------------------------------------------------------------------------

Gmane