Buggy code:
public abstract class CacheAdd extends AbstractAddStepHandler { private static final Logger log = Logger . getLogger ( CacheAdd . class . getPackage ( ) . getName ( ) ) ; private static final String DEFAULTS = "infinispan-defaults.xml" ; private static volatile Map < CacheMode , Configuration > defaults = null ; public static synchronized Configuration getDefaultConfiguration ( CacheMode cacheMode ) { } private static ConfigurationBuilderHolder load ( String resource ) { } private static URL find ( String resource , ClassLoader ... loaders ) { } final CacheMode mode ; CacheAdd ( CacheMode mode ) { } @ Override protected void populateModel ( ModelNode operation , ModelNode model ) throws OperationFailedException { } @ Override protected void performRuntime ( OperationContext context , ModelNode operation , ModelNode model , ServiceVerificationHandler verificationHandler , List < ServiceController < ? > > newControllers ) throws OperationFailedException { } protected void installRuntimeServices ( OperationContext context , ModelNode operation , ModelNode containerModel , ModelNode cacheModel , ServiceVerificationHandler verificationHandler , List < ServiceController < ? > > newControllers ) throws OperationFailedException { } protected void removeRuntimeServices ( OperationContext context , ModelNode operation , ModelNode model ) throws OperationFailedException { } protected PathAddress getCacheAddressFromOperation ( ModelNode operation ) { } protected PathAddress getCacheContainerAddressFromOperation ( ModelNode operation ) { } protected ServiceController < Configuration > installCacheConfigurationService ( ServiceTarget target , String containerName , String cacheName , String defaultCache , ConfigurationBuilder builder , InjectedValue < EmbeddedCacheManager > containerInjection , List < CacheAdd . Dependency < ? > > dependencies , ServiceVerificationHandler verificationHandler ) { } protected ServiceController < Cache < Object , Object > > installCacheService ( ServiceTarget target , String containerName , String cacheName , String defaultCache , ServiceController . Mode initialMode , ConfigurationBuilder builder , InjectedValue < EmbeddedCacheManager > containerInjection , ServiceVerificationHandler verificationHandler ) { } protected ServiceController < ManagedReferenceFactory > installJndiService ( ServiceTarget target , String containerName , String cacheName , String jndiNameString , ServiceVerificationHandler verificationHandler ) { } private < T > void addDependency ( ServiceBuilder < ? > builder , CacheAdd . Dependency < T > dependency ) { } void populate ( ModelNode fromModel , ModelNode toModel ) throws OperationFailedException { } void processModelNode ( OperationContext context , String containerName , ModelNode cache , ConfigurationBuilder builder , List < CacheAdd . Dependency < ? > > dependencies ) throws OperationFailedException { final Indexing indexing = Indexing . valueOf ( INDEXING . resolveModelAttribute ( context , cache ) . asString ( ) ) ; final boolean batching = BATCHING . resolveModelAttribute ( context , cache ) . asBoolean ( ) ; builder . clustering ( ) . cacheMode ( this . mode ) ; builder . indexing ( ) . enabled ( indexing . isEnabled ( ) ) . indexLocalOnly ( indexing . isLocalOnly ( ) ) ; if ( ( cache . hasDefined ( LOCKING ) ) && ( cache . get ( LOCKING , LOCKING_NAME ) . isDefined ( ) ) ) { ModelNode locking = cache . get ( LOCKING , LOCKING_NAME ) ; final IsolationLevel isolationLevel = IsolationLevel . valueOf ( ISOLATION . resolveModelAttribute ( context , locking ) . asString ( ) ) ; <START_BUG> final boolean striping = SHARED . resolveModelAttribute ( context , locking ) . asBoolean ( ) ; <END_BUG> final long acquireTimeout = ACQUIRE_TIMEOUT . resolveModelAttribute ( context , locking ) . asLong ( ) ; final int concurrencyLevel = CONCURRENCY_LEVEL . resolveModelAttribute ( context , locking ) . asInt ( ) ; builder . locking ( ) . isolationLevel ( isolationLevel ) . useLockStriping ( striping ) . lockAcquisitionTimeout ( acquireTimeout ) . concurrencyLevel ( concurrencyLevel ) ; } TransactionMode txMode = TransactionMode . NONE ; LockingMode lockingMode = LockingMode . OPTIMISTIC ; if ( ( cache . hasDefined ( TRANSACTION ) ) && ( cache . get ( TRANSACTION , TRANSACTION_NAME ) . isDefined ( ) ) ) { ModelNode transaction = cache . get ( TRANSACTION , TRANSACTION_NAME ) ; final long stopTimeout = STOP_TIMEOUT . resolveModelAttribute ( context , transaction ) . asLong ( ) ; txMode = TransactionMode . valueOf ( MODE . resolveModelAttribute ( context , transaction ) . asString ( ) ) ; lockingMode = LockingMode . valueOf ( CommonAttributes . LOCKING . resolveModelAttribute ( context , transaction ) . asString ( ) ) ; builder . transaction ( ) . cacheStopTimeout ( stopTimeout ) ; } builder . transaction ( ) . transactionMode ( txMode . getMode ( ) ) . lockingMode ( lockingMode ) . useSynchronization ( ( ! ( txMode . isXAEnabled ( ) ) ) ) . recovery ( ) . enabled ( txMode . isRecoveryEnabled ( ) ) ; if ( txMode . isRecoveryEnabled ( ) ) { builder . transaction ( ) . syncCommitPhase ( true ) . syncRollbackPhase ( true ) ; } if ( batching ) { builder . transaction ( ) . transactionMode ( TRANSACTIONAL ) . invocationBatching ( ) . enable ( ) ; } else { builder . transaction ( ) . invocationBatching ( ) . disable ( ) ; } if ( ( cache . hasDefined ( EVICTION ) ) && ( cache . get ( EVICTION , EVICTION_NAME ) . isDefined ( ) ) ) { ModelNode eviction = cache . get ( EVICTION , EVICTION_NAME ) ; final EvictionStrategy strategy = EvictionStrategy . valueOf ( EVICTION_STRATEGY . resolveModelAttribute ( context , eviction ) . asString ( ) ) ; builder . eviction ( ) . strategy ( strategy ) ; if ( strategy . isEnabled ( ) ) { final int maxEntries = MAX_ENTRIES . resolveModelAttribute ( context , eviction ) . asInt ( ) ; builder . eviction ( ) . maxEntries ( maxEntries ) ; } } if ( ( cache . hasDefined ( EXPIRATION ) ) && ( cache . get ( EXPIRATION , EXPIRATION_NAME ) . isDefined ( ) ) ) { ModelNode expiration = cache . get ( EXPIRATION , EXPIRATION_NAME ) ;

Fix:
final boolean striping = STRIPING . resolveModelAttribute ( context , locking ) . asBoolean ( ) ;