rajsoni [http://community.jboss.org/people/rajsoni] created the discussion

"Jboss 1.2.4 Cache not replicated..."

To view the discussion, visit: http://community.jboss.org/message/549375#549375

--------------------------------------------------------------
Hi,

Am trying to use JbossCache with java 1.4.2_13.That's the java version our 
application is currently using so based on the compatibility matrix specified 
in the link below,we tried using the Jboss cache 1.2.4 SP2 version:
JDK compatibility:
 http://community.jboss.org/wiki/jbosscache 
http://community.jboss.org/wiki/jbosscache

I need to be able to run the cache as standalone Java programs and any other 
node that joins the cluster should be able to read the data put in the cache by 
any node.I had got that working with the latest version of Jboss cache.However 
with 1.2.4 version I see that the node2 is not able to get the data put in the 
cache by node1.

Would really appreciate any help for this.From the logs I see that the 
clustering is working fine and node2 joins the cluster first created just with 
node1.The message communication is happening between the nodes as well

Here's how my replicationconfig xml file and the code for the nodes looks like:

<?xml version="1.0" encoding="UTF-8"?>
 <!-- ===================================================================== -->
 <!--                                                                       -->
 <!--  Sample TreeCache Service Configuration                               -->
 <!--                                                                       -->
 <!-- ===================================================================== -->
 <server>
     <classpath codebase="./lib" archives="jboss-cache.jar, jgroups.jar"/>
     <!-- ==================================================================== 
-->
     <!-- Defines TreeCache configuration                                      
-->
     <!-- ==================================================================== 
-->
     <mbean code="org.jboss.cache.TreeCache"
            name="jboss.cache:service=TreeCache">
         <depends>jboss:service=Naming</depends>
         <depends>jboss:service=TransactionManager</depends>
         <!--
         Configure the TransactionManager
     -->
         <attribute 
name="TransactionManagerLookupClass">org.jboss.cache.DummyTransactionManagerLookup</attribute>
         <!--<attribute 
name="TransactionManagerLookupClass">org.jboss.cache.GenericTransactionManagerLookup</attribute>-->
         <!--
             Isolation level : SERIALIZABLE
             REPEATABLE_READ (default)
             READ_COMMITTED
             READ_UNCOMMITTED
             NONE
         -->
         <!--<attribute name="IsolationLevel">REPEATABLE_READ</attribute>-->
         <attribute name="IsolationLevel">NONE</attribute>
         <!--
             Valid modes are LOCAL, REPL_ASYNC and REPL_SYNC
         -->
         <attribute name="CacheMode">REPL_ASYNC</attribute>
         <!--
         Just used for async repl: use a replication queue
         -->
         <attribute name="UseReplQueue">false</attribute>
         <!--
             Replication interval for replication queue (in ms)
         -->
         <attribute name="ReplQueueInterval">0</attribute>
         <!--
             Max number of elements which trigger replication
         -->
         <attribute name="ReplQueueMaxElements">0</attribute>
         <!-- Name of cluster. Needs to be the same for all clusters, in order
              to find each other
         -->
         <attribute name="ClusterName">insurancecluster</attribute>
         <!-- JGroups protocol stack properties. Can also be a URL,
              e.g. file:/home/bela/default.xml
            <attribute name="ClusterProperties"></attribute>
         -->
         <attribute name="ClusterConfig">
             <config>
                 <!-- UDP: if you have a multihomed machine,
                 set the bind_addr attribute to the appropriate NIC IP address 
-->
                 <!-- UDP: On Windows machines, because of the media sense 
feature
                  being broken with multicast (even after disabling media sense)
                  set the loopback attribute to true -->
                 <UDP mcast_addr="228.1.2.3" mcast_port="48866"
                      ip_ttl="64" ip_mcast="true"
                      mcast_send_buf_size="150000" mcast_recv_buf_size="80000"
                      ucast_send_buf_size="150000" ucast_recv_buf_size="80000"
                      loopback="false"
                      bind_addr="10.9.10.164"/>
                 <PING timeout="10000" num_initial_members="3"
                       up_thread="false" down_thread="false"/>
                 <!--<PING -->
                       <!--timeout="10000" -->
                       <!--num_initial_members="3"-->
                       <!--up_thread="false" -->
                       <!--down_thread="false"-->
                 <!--/>-->
                 <MERGE2 min_interval="10000" max_interval="20000"/>
                 <!-- NOTE: this was commented off in the example config file 
-->
                 <!--<FD shun="true" up_thread="true" down_thread="true" />-->
                 <FD
                     shun="false"
                     up_thread="true"
                     down_thread="true"
                 />
                 <FD_SOCK/>
                 <VERIFY_SUSPECT timeout="1500"
                                 up_thread="false" down_thread="false"/>
                 <pbcast.NAKACK gc_lag="50" 
retransmit_timeout="600,1200,2400,4800"
                                max_xmit_size="8192" up_thread="false" 
down_thread="false"/>
                 <UNICAST timeout="600,1200,2400" window_size="100" 
min_threshold="10"
                          down_thread="false"/>
                 <pbcast.STABLE desired_avg_gossip="20000"
                                up_thread="false" down_thread="false"/>
                 <FRAG frag_size="8192"
                       down_thread="false" up_thread="false"/>
                 <!--<pbcast.GMS join_timeout="5000" 
join_retry_timeout="2000"-->
                             <!--shun="true" print_local_addr="true"/>-->
                 <pbcast.GMS
                         join_timeout="5000"
                         join_retry_timeout="2000"
                         shun="false"
                         print_local_addr="true"
                     disable_initial_coord="false"
             />
                 <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
             </config>
         </attribute>
         <!--
         Whether or not to fetch state on joining a cluster
         'true' (default)
        -->
         <attribute name="FetchStateOnStartup">true</attribute>
         <attribute name="FetchInMemoryState">true</attribute>
         <attribute name="StateRetrievalTimeout">60000</attribute>
         <!--
             The max amount of time (in milliseconds) we wait until the
             initial state (ie. the contents of the cache) are retrieved from
             existing members in a clustered environment
         -->
        <attribute name="InitialStateRetrievalTimeout">5000</attribute>
         <!--
             Number of milliseconds to wait until all responses for a
             synchronous call have been received.
         -->
         <attribute name="SyncReplTimeout">20000</attribute>
         <!-- Max number of milliseconds to wait for a lock acquisition -->
         <attribute name="LockAcquisitionTimeout">15000</attribute>
        <!-- Name of the eviction policy class. -->
        <attribute name="EvictionPolicyClass"></attribute>
        <!--
                   Indicate whether to use marshalling or not. Set this to true 
if you are running under a scoped
                   class loader, e.g., inside an application server. Default is 
"false".
                -->
         <attribute name="UseMarshalling">false</attribute>
    </mbean>
    <!--  Uncomment to get a graphical view of the TreeCache MBean above -->
       <!--<mbean code="org.jboss.cache.TreeCacheView" 
name="jboss.cache:service=TreeCacheView">-->
          <!--<depends>jboss.cache:service=TreeCache</depends>-->
          <!--<attribute 
name="CacheService">jboss.cache:service=TreeCache</attribute>-->
       <!--</mbean>-->
</server>

Code Node1 :

         Fqn insuranceFqn = Fqn.fromString("/com/themunicenter/insurance");
         cache = new TreeCache();
         PropertyConfigurator config = new PropertyConfigurator();
         config.configure(cache, 
"/usr/local/tmc/replication-configuration.xml");
         cache.createService();
         cache.startService();
         HashMap map = new HashMap();
         map.put("abc", "ValueToBeShown");
         cache.put(insuranceFqn, map);

Code Node 2:

         cache = new TreeCache();
         PropertyConfigurator config = new PropertyConfigurator();
         config.configure(cache, 
"/usr/local/tmc/MuniCenter/properties/replication-configuration.xml");
         cache.createService();
         cache.startService();
         Fqn insuranceFqn = Fqn.fromString("/com/themunicenter/insurance");
         String testData = (String) cache.get(insuranceFqn,"abc");
         System.out.println("THE CACHE NOW IS"+testData);

The cache shows as NULL when node2 code runs:

Log from Server is attached here(showing the communication is happening fine 
between the nodes):
I say server here,since the progams put and pick messages in Jboss cache based 
on inflow of a JMS message on weblogic JMS queue.

Will really appreciate any pointers...thanks for taking time to look into this 
issue!!

The last few lines in server log shows:
2010-06-23 14:12:56,207 -  WARN (STATE_TRANSFER.java:283:[UpHandler 
(STATE_TRANSFER)]) - state received from 10.9.10.164:44127 is null, will return 
null state to application

2010-06-23 14:12:56,207 -  INFO (TreeCache.java:2632:[main]) - *state could not 
be retrieved (must be first member in group)*
2010-06-23 14:12:56,207 -  INFO (TreeCache.java:4010:[Thread-10]) - new cache 
is null (may be first member in cluster)
2010-06-23 14:12:56,207 -  INFO (TreeCache.java:1281:[main]) - Cache is 
started!!
2010-06-23 14:12:56,208 - DEBUG (PessimisticLockInterceptor.java:217:[main]) - 
failed to find or create child com of node /
2010-06-23 14:12:56,208 - DEBUG (TreeCache.java:2716:[main]) - 
_get("/com/themunicenter/insurance", 010824FU9, "true")

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

Reply to this message by going to Community
[http://community.jboss.org/message/549375#549375]

Start a new discussion in JBoss Cache at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2052]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to