2015-01-19 2 views
0

Infinispan 6.x를 사용하고 있으며 몇 가지 XML 구성 파일이 있습니다. 이제 7.x로 마이그레이션하고 싶지만 새 버전이 이전 구성 파일을 구문 분석하려고 할 때 예외가 발생합니다.Infinispan xml 구성을 6.x에서 7.x로 마이그레이션

<?xml version="1.0" encoding="UTF-8"?> 
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd"> 
    <global> 
    <globalJmxStatistics enabled="false" mBeanServerLookup="dz.lab.cache.infinispan.DummyMBeanServer$DummyLoockup" /> 
    </global> 
    <default>  
    <eviction strategy="NONE" /> 
    <expiration lifespan="-1" maxIdle="-1" /> 
    <clustering mode="local"> 
     <hash> 
     <groups enabled="true" /> 
     </hash> 
    </clustering> 
    <transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.JBossStandaloneJTAManagerLookup" transactionMode="TRANSACTIONAL" lockingMode="OPTIMISTIC" /> 
    <invocationBatching enabled="true" /> 
    <locking supportsConcurrentUpdates="true" />  
    </default> 
</infinispan> 

및 전체 스택 트레이스 :

org.infinispan.commons.CacheConfigurationException: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[7,11] 
Message: Unexpected element 'global' encountered 
    at org.infinispan.configuration.parsing.ParseUtils.unexpectedElement(ParseUtils.java:35) 
    at org.infinispan.configuration.parsing.Parser70.readElement(Parser70.java:96) 
    at org.infinispan.configuration.parsing.ParserRegistry.parseElement(ParserRegistry.java:133) 
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:115) 
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:102) 
    at org.infinispan.configuration.parsing.ParserRegistry.parse(ParserRegistry.java:89) 
    ... 30 more 

가 어떻게이 구성을 마이그레이션 할 여기 내 구성 파일은? official user guide에서 힌트를 찾을 수 없습니다.

답변

1

귀하의 구성은 다음과 같아야합니다

<?xml version="1.0" encoding="UTF-8"?> 
<infinispan 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="urn:infinispan:config:7.0 http://www.infinispan.org/schemas/infinispan-config-7.0.xsd" 
     xmlns="urn:infinispan:config:7.0"> 
    <cache-container name="default" default-cache="defaultCache"> 
     <serialization /> 
     <jmx> 
      <property name="enabled">true</property> 
     </jmx> 
     <local-cache name="defaultCache"> 
      ... 
     </local-cache> 
    </cache-container> 
</infinispan> 

모든 트랜잭션, 격리, 강제 퇴거 등의 요소에 대한 스키마를 참조하십시오 - 사람들은 매우 유사합니다.

+0

로컬 캐시 선언 다음에 이것을 캐시 컨테이너에 추가해야합니다. ' – bachr

+0

'locking'의 boolean'supportsConcurrentUpdates'는 쓰레드의 수를 나타내는'concurrency-level'으로 대체되었습니다 !! – bachr

+0

아닙니다. 현재 (단일 키에서) 동시 업데이트가 항상 활성화되어 있습니다 (설정하려고 할 때 경고 메시지를 표시하는 프로그래밍 방식 구성을 확인할 수 있음). 한편, 동시성 수준은 모든 키 *에 대한 예상 동시 업데이트 수 *를 기본 해시 맵에 전달하여 성능을 미세 조정합니다. –

3

업그레이드 가이드는 here입니다. xml schema to 7.0 (또는 7.1)을 업그레이드하고 구성을 다시 만드십시오. global xml 요소의 이름이 이고, 여기에 example입니다.

+0

많은 것들의 이름이 변경된 것처럼 들리지만, 비슷한 문제가있는 ''!! 클러스터링을 위해 – bachr

관련 문제