Buggy code:
class DataSourceModelNodeUtil { static ModifiableDataSource from ( final OperationContext operationContext , final ModelNode dataSourceNode , final String dsName ) throws OperationFailedException , ValidateException { } static ModifiableXaDataSource xaFrom ( final OperationContext operationContext , final ModelNode dataSourceNode , final String dsName ) throws OperationFailedException , ValidateException { final Map < String , String > xaDataSourceProperty ; xaDataSourceProperty = Collections . emptyMap ( ) ; final String xaDataSourceClass = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . XADATASOURCECLASS , null ) ; final String jndiName = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . JNDINAME , null ) ; final String module = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . DATASOURCE_DRIVER , null ) ; final String newConnectionSql = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . NEW_CONNECTION_SQL , null ) ; final String poolName = dsName ; final String urlDelimiter = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . URL_DELIMITER , null ) ; final String urlSelectorStrategyClassName = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . URL_SELECTOR_STRATEGY_CLASS_NAME , null ) ; final Boolean useJavaContext = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . USE_JAVA_CONTEXT , USE_JAVA_CONTEXT ) ; final Boolean enabled = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . ENABLED , ENABLED ) ; final Integer maxPoolSize = DataSourceModelNodeUtil . getIntIfSetOrGetDefault ( dataSourceNode , MAX_POOL_SIZE , Defaults . MAX_POOL_SIZE ) ; final Integer minPoolSize = DataSourceModelNodeUtil . getIntIfSetOrGetDefault ( dataSourceNode , MIN_POOL_SIZE , Defaults . MIN_POOL_SIZE ) ; final Boolean prefill = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , POOL_PREFILL , PREFILL ) ; final Boolean useStrictMin = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , POOL_USE_STRICT_MIN , USE_STRICT_MIN ) ; final Boolean interleaving = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . INTERLEAVING , INTERLEAVING ) ; final Boolean noTxSeparatePool = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . NOTXSEPARATEPOOL , NO_TX_SEPARATE_POOL ) ; final Boolean padXid = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . PAD_XID , PAD_XID ) ; <START_BUG> final Boolean isSameRmOverride = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . SAME_RM_OVERRIDE , null ) ; <END_BUG> final Boolean wrapXaDataSource = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . WRAP_XA_RESOURCE , WRAP_XA_RESOURCE ) ; final FlushStrategy flushStrategy = ( dataSourceNode . hasDefined ( POOL_FLUSH_STRATEGY . getName ( ) ) ) ? FlushStrategy . forName ( dataSourceNode . get ( POOL_FLUSH_STRATEGY . getName ( ) ) . asString ( ) ) : Defaults . FLUSH_STRATEGY ; final CommonXaPool xaPool = new org . jboss . jca . common . metadata . common . CommonXaPoolImpl ( minPoolSize , maxPoolSize , prefill , useStrictMin , flushStrategy , isSameRmOverride , interleaving , padXid , wrapXaDataSource , noTxSeparatePool ) ; final String username = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . USERNAME , null ) ; final String password = DataSourceModelNodeUtil . getResolvedStringIfSetOrGetDefault ( operationContext , dataSourceNode , Constants . PASSWORD , null ) ; final String securityDomain = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . SECURITY_DOMAIN , null ) ; final Extension reauthPlugin = DataSourceModelNodeUtil . extractExtension ( dataSourceNode , Constants . REAUTHPLUGIN_CLASSNAME , Constants . REAUTHPLUGIN_PROPERTIES ) ; final DsSecurity security = new org . jboss . jca . common . metadata . ds . DsSecurityImpl ( username , password , securityDomain , reauthPlugin ) ; final Boolean sharePreparedStatements = ( dataSourceNode . hasDefined ( Constants . SHAREPREPAREDSTATEMENTS . getName ( ) ) ) ? dataSourceNode . get ( Constants . SHAREPREPAREDSTATEMENTS . getName ( ) ) . asBoolean ( ) : Defaults . SHARE_PREPARED_STATEMENTS ; final Long preparedStatementsCacheSize = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , Constants . PREPAREDSTATEMENTSCACHESIZE , null ) ; final Statement . TrackStatementsEnum trackStatements = ( dataSourceNode . hasDefined ( Constants . TRACKSTATEMENTS . getName ( ) ) ) ? TrackStatementsEnum . valueOf ( dataSourceNode . get ( Constants . TRACKSTATEMENTS . getName ( ) ) . asString ( ) ) : Defaults . TRACK_STATEMENTS ; final Statement statement = new org . jboss . jca . common . metadata . ds . StatementImpl ( sharePreparedStatements , preparedStatementsCacheSize , trackStatements ) ; final Integer allocationRetry = DataSourceModelNodeUtil . getIntIfSetOrGetDefault ( dataSourceNode , Constants . ALLOCATION_RETRY , null ) ; final Long allocationRetryWaitMillis = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , Constants . ALLOCATION_RETRY_WAIT_MILLIS , null ) ; final Long blockingTimeoutMillis = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , BLOCKING_TIMEOUT_WAIT_MILLIS , null ) ; final Long idleTimeoutMinutes = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , IDLETIMEOUTMINUTES , null ) ; final Long queryTimeout = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , Constants . QUERYTIMEOUT , null ) ; final Integer xaResourceTimeout = DataSourceModelNodeUtil . getIntIfSetOrGetDefault ( dataSourceNode , Constants . XA_RESOURCE_TIMEOUT , null ) ; final Long useTryLock = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , Constants . USETRYLOCK , null ) ; final Boolean setTxQuertTimeout = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . SETTXQUERYTIMEOUT , SET_TX_QUERY_TIMEOUT ) ; final TimeOut timeOut = new TimeOutImpl ( blockingTimeoutMillis , idleTimeoutMinutes , allocationRetry , allocationRetryWaitMillis , xaResourceTimeout , setTxQuertTimeout , queryTimeout , useTryLock ) ; final TransactionIsolation transactionIsolation = ( dataSourceNode . hasDefined ( Constants . TRANSACTION_ISOLATION . getName ( ) ) ) ? TransactionIsolation . valueOf ( dataSourceNode . get ( Constants . TRANSACTION_ISOLATION . getName ( ) ) . asString ( ) ) : null ; final String checkValidConnectionSql = DataSourceModelNodeUtil . getStringIfSetOrGetDefault ( dataSourceNode , Constants . CHECKVALIDCONNECTIONSQL , null ) ; final Extension exceptionSorter = DataSourceModelNodeUtil . extractExtension ( dataSourceNode , Constants . EXCEPTIONSORTERCLASSNAME , Constants . EXCEPTIONSORTER_PROPERTIES ) ; final Extension staleConnectionChecker = DataSourceModelNodeUtil . extractExtension ( dataSourceNode , Constants . STALECONNECTIONCHECKERCLASSNAME , Constants . STALECONNECTIONCHECKER_PROPERTIES ) ; final Extension validConnectionChecker = DataSourceModelNodeUtil . extractExtension ( dataSourceNode , Constants . VALIDCONNECTIONCHECKERCLASSNAME , Constants . VALIDCONNECTIONCHECKER_PROPERTIES ) ; Long backgroundValidationMillis = DataSourceModelNodeUtil . getLongIfSetOrGetDefault ( dataSourceNode , BACKGROUNDVALIDATIONMILLIS , null ) ; final Boolean backgroundValidation = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , BACKGROUNDVALIDATION , BACKGROUND_VALIDATION ) ; boolean useFastFail = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , USE_FAST_FAIL , USE_FAST_FAIl ) ; final Boolean validateOnMatch = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . VALIDATEONMATCH , VALIDATE_ON_MATCH ) ;

Fix:
final Boolean isSameRmOverride = DataSourceModelNodeUtil . getBooleanIfSetOrGetDefault ( dataSourceNode , Constants . SAME_RM_OVERRIDE , IS_SAME_RM_OVERRIDE ) ;