[jboss-jira] [JBoss JIRA] Commented: (JGRP-912) Failed to parse the jgroups.xml file

Bela Ban (JIRA) jira-events at lists.jboss.org
Wed Feb 25 02:41:07 EST 2009


    [ https://jira.jboss.org/jira/browse/JGRP-912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12454147#action_12454147 ] 

Bela Ban commented on JGRP-912:
-------------------------------

Looks more like a JBossCache issue...

> Failed to parse the jgroups.xml file
> ------------------------------------
>
>                 Key: JGRP-912
>                 URL: https://jira.jboss.org/jira/browse/JGRP-912
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 2.6.8
>         Environment: jdk 6, jboss cache 3.0.2 GA, jgroup 2.6.8, wind0ws XP
>            Reporter: sridhar reddy
>            Assignee: Vladimir Blagojevic
>         Attachments: GridJbossCacheManager.java, jboss-cache.xml, jgroups.xml
>
>
> I have the following jboss cache xml as below
> [code]
> <?xml version="1.0" encoding="UTF-8"?>
> <jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns="urn:jboss:jbosscache-core:config:3.0">
> <locking isolationLevel="READ_COMMITTED"
> lockParentForChildInsertRemove="false" lockAcquisitionTimeout="20000"
> nodeLockingScheme="mvcc" writeSkewCheck="false"
> concurrencyLevel="500" />
> <transaction
> transactionManagerLookupClass="org.jboss.cache.transaction.GenericTransactionManagerLookup"
> syncRollbackPhase="false" syncCommitPhase="false" />
> <eviction wakeUpInterval="500">
> <default algorithmClass="org.jboss.cache.eviction.LRUAlgorithm"
> eventQueueSize="200000">
> <property name="maxNodes" value="5000" />
> <property name="timeToLive" value="1000" />
> </default>
> <region name="/org/jboss/data1">
> <property name="timeToLive" value="2000" />
> </region>
> <region name="/org/jboss/data2"
> algorithmClass="org.jboss.cache.eviction.FIFOAlgorithm"
> eventQueueSize="100000">
> <property name="maxNodes" value="3000" />
> <property name="minTimeToLive" value="4000" />
> </region>
> </eviction>
> <clustering mode="replication" >
> <jgroupsConfig configFile="C:/workspace/GridJBCache3/src/config/jgroups.xml" />
> </clustering>
> <loaders passivation="false" shared="false">
> <preload>
> <node fqn="/" />
> </preload>
> <loader class="org.jboss.cache.loader.JDBCCacheLoader"
> async="true" fetchPersistentState="true" ignoreModifications="true"
> purgeOnStartup="true">
> <properties>
> cache.jdbc.table.name=jbosscache
> cache.jdbc.table.create=true
> cache.jdbc.table.drop=false
> cache.jdbc.table.primarykey=jbosscache_pk
> cache.jdbc.fqn.column=fqn
> cache.jdbc.fqn.type=varchar(255)
> cache.jdbc.node.column=node
> cache.jdbc.node.type=bytea
> cache.jdbc.parent.column=parent
> cache.jdbc.driver=org.postgresql.Driver
> cache.jdbc.url=jdbc:postgresql://localhost:5432/facts7
> cache.jdbc.user=f7tms
> cache.jdbc.password=f7tms
> </properties>
> </loader>
> </loaders>
> </jbosscache>
> [/code]
> and jgroups.xml file as below
> [code]
> <config>
> <UDP mcast_addr="${jgroups.udp.mcast_addr:228.10.10.10}"
> mcast_port="${jgroups.udp.mcast_port:45588}" tos="8"
> ucast_recv_buf_size="20000000" ucast_send_buf_size="640000"
> mcast_recv_buf_size="25000000" mcast_send_buf_size="640000"
> loopback="false" discard_incompatible_packets="true"
> max_bundle_size="64000" max_bundle_timeout="30"
> use_incoming_packet_handler="true" ip_ttl="${jgroups.udp.ip_ttl:2}"
> enable_bundling="true" enable_diagnostics="true"
> thread_naming_pattern="cl" use_concurrent_stack="true"
> thread_pool.enabled="true" thread_pool.min_threads="2"
> thread_pool.max_threads="8" thread_pool.keep_alive_time="5000"
> thread_pool.queue_enabled="true" thread_pool.queue_max_size="1000"
> 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="Run" />
> <PING timeout="2000" num_initial_members="3" />
> <MERGE2 max_interval="30000" min_interval="10000" />
> <FD_SOCK />
> <FD timeout="10000" max_tries="5" shun="true" />
> <VERIFY_SUSPECT timeout="1500" />
> <BARRIER />
> <pbcast.NAKACK use_stats_for_retransmission="false"
> exponential_backoff="150" use_mcast_xmit="true" gc_lag="0"
> retransmit_timeout="50,300,600,1200" discard_delivered_msgs="true" />
> <UNICAST timeout="300,600,1200" />
> <pbcast.STABLE stability_delay="1000"
> desired_avg_gossip="50000" max_bytes="1000000" />
> <VIEW_SYNC avg_send_interval="60000" />
> <pbcast.GMS print_local_addr="true" join_timeout="3000"
> shun="false" view_bundling="true" />
> <FC max_credits="500000" min_threshold="0.20" />
> <FRAG2 frag_size="60000" />
> -
> <!-- pbcast.STREAMING_STATE_TRANSFER /
> -->
> <pbcast.STATE_TRANSFER />
> -
> <!-- pbcast.FLUSH /
> -->
> </config>
> [/code]
> My code start the cache as
> [code]
> package org.gridgain.examples.jbosscache;
> import java.io.File;
> import org.jboss.cache.Cache;
> import org.jboss.cache.CacheFactory;
> import org.jboss.cache.DefaultCacheFactory;
> import org.jboss.cache.Fqn;
> import org.jboss.cache.Node;
> import org.jboss.cache.config.Configuration;
> import org.jboss.cache.config.parsing.XmlConfigurationParser;
> import org.jgroups.JChannelFactory;
> public final class GridJbossCacheManager {
>     /** Cache configuration path relative to GridGain installation. */
>     public static final String CACHE_CFG_PATH = "C:/workspace/GridJBCache3/src/config/jboss-cache.xml";
>     /** JGroups configuration path relative to GridGain installation. */
>     public static final String JGROUPS_CFG_PATH = "C:/workspace/GridJBCache3/src/config/jgroups.xml";
>     /** JBoss Cache instance. */
>     private Cache<Long, String> cache = null;
>     /** Cache node for caching example data. */
>     private Node<Long, String> cacheRoot = null;
>     /** Singleton instance. */
>     private static GridJbossCacheManager instance = new GridJbossCacheManager();
>     /**
>      * Gets singleton.
>      *
>      * @return Singleton.
>      */
>     public static GridJbossCacheManager getInstance() {
>         return instance;
>     }
>     /**
>      * Ensure singleton.
>      */
>     private GridJbossCacheManager() {
>         // No-op.
>     }
>    
>     public void start() throws GridException {
>         File cacheCfg = new File(CACHE_CFG_PATH);
>         if (cacheCfg == null) {
>             throw new GridException("Failed to find cache configuration file: " + CACHE_CFG_PATH);
>         }
>         File jgroupsCfg = new File(JGROUPS_CFG_PATH);
>         if (jgroupsCfg == null) {
>             throw new GridException("Failed to find jgroups configuration: " + JGROUPS_CFG_PATH);
>         }
>         // Make sure JBoss Cache and GridGain are on the same "wave length".
>         JChannelFactory factory = new JChannelFactory(); //null;
>         try {
>          //factory = new JChannelFactory(jgroupsCfg);
>             factory.setMultiplexerConfig(jgroupsCfg.getCanonicalPath());
>         }
>         catch (Exception e) {
>             throw new GridException("Failed to start Data Manager.", e);
>         }
>         try {
>             XmlConfigurationParser parser = new XmlConfigurationParser();
>             // Start JBoss Cache cache with shared JGroups configuration.
>             Configuration svrCfg = parser.parseFile(cacheCfg.getCanonicalPath());
>             svrCfg.getRuntimeConfig().setMuxChannelFactory(factory);
>             CacheFactory<Long, String> dataFactory = DefaultCacheFactory.getInstance();
>             // Instantiate and start JBoss Cache.
>             cache = dataFactory.createCache(svrCfg);
>             // Cache node for storing example data.
>             cacheRoot = cache.getRoot().addChild(Fqn.fromString("/"));
>         }
>         catch (Exception e) {
>             throw new GridException("Failed to start Data Manager.", e);
>         }
>         System.out.println("JBoss Cache data manager started.");
>     }
>    
> }
> [/code]
> When i ran this program i am getting the following error
> [code]
> Exception in thread "main"
> Exception:
> ----------
> >>> Type: java.lang.Exception
> >>> Message: failed parsing C:\workspace\GridJBCache3\src\config\jgroups.xml
> >>> Stack trace:
> >>> at org.jgroups.JChannelFactory.setMultiplexerConfig(JChannelFactory.java:216)
> >>> at org.jgroups.JChannelFactory.setMultiplexerConfig(JChannelFactory.java:205)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheManager.start(GridJbossCacheManager.java:131)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.loadNode(GridJbossCacheExampleNodeLoader.java:38)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.main(GridJbossCacheExampleNodeLoader.java:58)
> Caused By:
> ----------
> >>> Type: java.io.IOException
> >>> Message: invalid XML configuration: XML protocol stack configuration does not start with a '<config>' element; maybe the XML configuration needs to be converted to the new format ?
> use 'java org.jgroups.conf.XmlConfigurator <old XML file> -new_format' to do so
> >>> Stack trace:
> >>> at org.jgroups.JChannelFactory.parse(JChannelFactory.java:476)
> >>> at org.jgroups.JChannelFactory.parse(JChannelFactory.java:462)
> >>> at org.jgroups.JChannelFactory.setMultiplexerConfig(JChannelFactory.java:213)
> >>> at org.jgroups.JChannelFactory.setMultiplexerConfig(JChannelFactory.java:205)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheManager.start(GridJbossCacheManager.java:131)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.loadNode(GridJbossCacheExampleNodeLoader.java:38)
> >>> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.main(GridJbossCacheExampleNodeLoader.java:58)
> [/code]
> Now i have added the
> [code]
> <protocol_stacks>
> <stack name="udp"
> description="Default: IP multicast based stack, with flow control and message bundling">
> [/code]
> to jgroups.xml. When i ran the program, its giving the following error.
> [code]
> log4j:WARN No appenders could be found for logger (org.jboss.cache.util.FileLookup).
> log4j:WARN Please initialize the log4j system properly.
> Exception in thread "main" org.jboss.cache.CacheException: java.lang.reflect.InvocationTargetException
> at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:148)
> at org.jboss.cache.factories.ComponentRegistry$PrioritizedMethod.invoke(ComponentRegistry.java:1005)
> at org.jboss.cache.factories.ComponentRegistry.internalStart(ComponentRegistry.java:775)
> at org.jboss.cache.factories.ComponentRegistry.start(ComponentRegistry.java:629)
> at org.jboss.cache.invocation.CacheInvocationDelegate.start(CacheInvocationDelegate.java:344)
> at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:121)
> at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:105)
> at org.gridgain.examples.jbosscache.GridJbossCacheManager.start(GridJbossCacheManager.java:148)
> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.loadNode(GridJbossCacheExampleNodeLoader.java:38)
> at org.gridgain.examples.jbosscache.GridJbossCacheExampleNodeLoader.main(GridJbossCacheExampleNodeLoader.java:58)
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:144)
> ... 9 more
> Caused by: org.jboss.cache.CacheException: Failed to create multiplexed channel using stack null
> at org.jboss.cache.RPCManagerImpl.getMultiplexerChannel(RPCManagerImpl.java:353)
> at org.jboss.cache.RPCManagerImpl.initialiseChannelAndRpcDispatcher(RPCManagerImpl.java:267)
> at org.jboss.cache.RPCManagerImpl.start(RPCManagerImpl.java:167)
> ... 14 more
> Caused by: java.lang.IllegalArgumentException: stack name and service ID have to be non null
> at org.jgroups.JChannelFactory.createMultiplexerChannel(JChannelFactory.java:336)
> at org.jgroups.JChannelFactory.createMultiplexerChannel(JChannelFactory.java:328)
> at org.jboss.cache.RPCManagerImpl.getMultiplexerChannel(RPCManagerImpl.java:349)
> ... 16 more
> [/code] 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list