<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2" properties="2.1">
  <hashTree>
    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Concurrent Valuation Test Plan" enabled="true">
      <stringProp name="TestPlan.comments">Execute a series of concurrent valuations</stringProp>
      <boolProp name="TestPlan.functional_mode">false</boolProp>
      <boolProp name="TestPlan.serialize_threadgroups">true</boolProp>
      <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
        <collectionProp name="Arguments.arguments">
          <elementProp name="CalculateFees" elementType="Argument">
            <stringProp name="Argument.name">CalculateFees</stringProp>
            <stringProp name="Argument.value">1</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="CalculatePerformanceDetails" elementType="Argument">
            <stringProp name="Argument.name">CalculatePerformanceDetails</stringProp>
            <stringProp name="Argument.value">1</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="DriverURL" elementType="Argument">
            <stringProp name="Argument.name">DriverURL</stringProp>
            <stringProp name="Argument.value">jdbc:jtds:sqlserver:</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="DatabasePort" elementType="Argument">
            <stringProp name="Argument.name">DatabasePort</stringProp>
            <stringProp name="Argument.value">1433</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="UseMiddleTierValuationEngine" elementType="Argument">
            <stringProp name="Argument.name">UseMiddleTierValuationEngine</stringProp>
            <stringProp name="Argument.value">0</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="MiddleTierRequestTimeout" elementType="Argument">
            <stringProp name="Argument.name">MiddleTierRequestTimeout</stringProp>
            <stringProp name="Argument.value">500000</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="PricePropagationMode" elementType="Argument">
            <stringProp name="Argument.name">PricePropagationMode</stringProp>
            <stringProp name="Argument.value">2</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
        </collectionProp>
      </elementProp>
      <stringProp name="TestPlan.user_define_classpath"></stringProp>
    </TestPlan>
    <hashTree>
      <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI PCO config" enabled="true">
        <collectionProp name="Arguments.arguments">
          <elementProp name="PCOQuality" elementType="Argument">
            <stringProp name="Argument.name">PCOQuality</stringProp>
            <stringProp name="Argument.value">5</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="ValueDate" elementType="Argument">
            <stringProp name="Argument.name">ValueDate</stringProp>
            <stringProp name="Argument.value">2011-07-21</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="ReportingDate" elementType="Argument">
            <stringProp name="Argument.name">ReportingDate</stringProp>
            <stringProp name="Argument.value">2011-07-21 12:30:08.337</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
        </collectionProp>
      </Arguments>
      <hashTree/>
      <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI 440 SSD GAIA Config" enabled="true">
        <collectionProp name="Arguments.arguments">
          <elementProp name="Database" elementType="Argument">
            <stringProp name="Argument.name">Database</stringProp>
            <stringProp name="Argument.value">HSPAD_MI_440_SSD</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="DatabaseHost" elementType="Argument">
            <stringProp name="Argument.name">DatabaseHost</stringProp>
            <stringProp name="Argument.value">GAIA</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="DatabaseUser" elementType="Argument">
            <stringProp name="Argument.name">DatabaseUser</stringProp>
            <stringProp name="Argument.value">sa</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="DatabasePassword" elementType="Argument">
            <stringProp name="Argument.name">DatabasePassword</stringProp>
            <stringProp name="Argument.value">sa2008</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
        </collectionProp>
      </Arguments>
      <hashTree/>
      <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI PCO Pfo List" enabled="true">
        <collectionProp name="Arguments.arguments">
          <elementProp name="Pfo_1" elementType="Argument">
            <stringProp name="Argument.name">Pfo_1</stringProp>
            <stringProp name="Argument.value">1548</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="Pfo_2" elementType="Argument">
            <stringProp name="Argument.name">Pfo_2</stringProp>
            <stringProp name="Argument.value">1611</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
          <elementProp name="Pfo_3" elementType="Argument">
            <stringProp name="Argument.name">Pfo_3</stringProp>
            <stringProp name="Argument.value">1613</stringProp>
            <stringProp name="Argument.metadata">=</stringProp>
          </elementProp>
        </collectionProp>
        <stringProp name="TestPlan.comments">CutOff Nr 11249,  2011-07-2 / 2011-07-21 12:30:08.337 / DailyNAV Estimate / Within Price Cut-Off</stringProp>
      </Arguments>
      <hashTree/>
      <JDBCDataSource guiclass="TestBeanGUI" testclass="JDBCDataSource" testname="JDBC Connection Configuration" enabled="true">
        <boolProp name="autocommit">false</boolProp>
        <stringProp name="checkQuery"></stringProp>
        <stringProp name="connectionAge">5000</stringProp>
        <stringProp name="dataSource"></stringProp>
        <stringProp name="dbUrl">${DriverURL}//${DatabaseHost}:${DatabasePort}/${Database}</stringProp>
        <stringProp name="driver">net.sourceforge.jtds.jdbc.Driver</stringProp>
        <boolProp name="keepAlive">true</boolProp>
        <stringProp name="password">${DatabasePassword}</stringProp>
        <stringProp name="poolMax">25</stringProp>
        <stringProp name="timeout">10000</stringProp>
        <stringProp name="trimInterval">60000</stringProp>
        <stringProp name="username">${DatabaseUser}</stringProp>
        <stringProp name="transactionIsolation">4096</stringProp>
        <stringProp name="TestPlan.comments">Connect to local HSPAD_Demo_CO and set its isolation mode to SNAPSHOT (4096) and disable auto commit.</stringProp>
      </JDBCDataSource>
      <hashTree/>
      <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="3 Users" enabled="true">
        <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
        <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
          <boolProp name="LoopController.continue_forever">false</boolProp>
          <stringProp name="LoopController.loops">3</stringProp>
        </elementProp>
        <stringProp name="ThreadGroup.num_threads">3</stringProp>
        <stringProp name="ThreadGroup.ramp_time">0</stringProp>
        <longProp name="ThreadGroup.start_time">1316530469000</longProp>
        <longProp name="ThreadGroup.end_time">1316530469000</longProp>
        <boolProp name="ThreadGroup.scheduler">false</boolProp>
        <stringProp name="ThreadGroup.duration"></stringProp>
        <stringProp name="ThreadGroup.delay"></stringProp>
      </ThreadGroup>
      <hashTree>
        <ModuleController guiclass="ModuleControllerGui" testclass="ModuleController" testname="PCO Valuation" enabled="true">
          <collectionProp name="ModuleController.node_path">
            <stringProp name="-1227702913">WorkBench</stringProp>
            <stringProp name="1465685679">Concurrent Valuation Test Plan</stringProp>
            <stringProp name="1372988285">PCO Valuation</stringProp>
          </collectionProp>
        </ModuleController>
        <hashTree/>
      </hashTree>
      <SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="setUp Thread Group" enabled="true">
        <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
        <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
          <boolProp name="LoopController.continue_forever">false</boolProp>
          <stringProp name="LoopController.loops">1</stringProp>
        </elementProp>
        <stringProp name="ThreadGroup.num_threads">1</stringProp>
        <stringProp name="ThreadGroup.ramp_time">1</stringProp>
        <longProp name="ThreadGroup.start_time">1320821253000</longProp>
        <longProp name="ThreadGroup.end_time">1320821253000</longProp>
        <boolProp name="ThreadGroup.scheduler">false</boolProp>
        <stringProp name="ThreadGroup.duration"></stringProp>
        <stringProp name="ThreadGroup.delay"></stringProp>
      </SetupThreadGroup>
      <hashTree>
        <TestAction guiclass="TestActionGui" testclass="TestAction" testname="Setup Middle Tier usage" enabled="true">
          <intProp name="ActionProcessor.action">1</intProp>
          <intProp name="ActionProcessor.target">0</intProp>
          <stringProp name="ActionProcessor.duration"></stringProp>
        </TestAction>
        <hashTree>
          <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Set UseMiddleTierValuationEngine and Timeout" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="query">UPDATE T_SettingGlobal SET UseMiddleTierValuationEngine=?, MiddleTierRequestTimeout=?</stringProp>
            <stringProp name="queryArguments">${UseMiddleTierValuationEngine}, ${MiddleTierRequestTimeout}</stringProp>
            <stringProp name="queryArgumentsTypes">BIT, INTEGER</stringProp>
            <stringProp name="queryType">Prepared Update Statement</stringProp>
            <stringProp name="resultVariable"></stringProp>
            <stringProp name="variableNames"></stringProp>
          </JDBCPreProcessor>
          <hashTree/>
          <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Commit" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="queryType">Commit</stringProp>
            <stringProp name="query"></stringProp>
            <stringProp name="queryArguments"></stringProp>
            <stringProp name="queryArgumentsTypes"></stringProp>
            <stringProp name="variableNames"></stringProp>
            <stringProp name="resultVariable"></stringProp>
          </JDBCPreProcessor>
          <hashTree/>
        </hashTree>
        <TestAction guiclass="TestActionGui" testclass="TestAction" testname="Clear caches" enabled="true">
          <intProp name="ActionProcessor.action">1</intProp>
          <intProp name="ActionProcessor.target">0</intProp>
          <stringProp name="ActionProcessor.duration">0</stringProp>
        </TestAction>
        <hashTree>
          <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Clear Buffers" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="queryType">Update Statement</stringProp>
            <stringProp name="query">DBCC DROPCLEANBUFFERS</stringProp>
            <stringProp name="queryArguments"></stringProp>
            <stringProp name="queryArgumentsTypes"></stringProp>
            <stringProp name="variableNames"></stringProp>
            <stringProp name="resultVariable"></stringProp>
          </JDBCPreProcessor>
          <hashTree/>
          <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Clear Proc Cache" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="queryType">Update Statement</stringProp>
            <stringProp name="query">DBCC FREEPROCCACHE</stringProp>
            <stringProp name="queryArguments"></stringProp>
            <stringProp name="queryArgumentsTypes"></stringProp>
            <stringProp name="variableNames"></stringProp>
            <stringProp name="resultVariable"></stringProp>
          </JDBCPreProcessor>
          <hashTree/>
        </hashTree>
      </hashTree>
      <TestFragmentController guiclass="TestFragmentControllerGui" testclass="TestFragmentController" testname="PCO Valuation" enabled="true"/>
      <hashTree>
        <TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="Calculate PCO Transaction" enabled="true">
          <boolProp name="TransactionController.parent">true</boolProp>
        </TransactionController>
        <hashTree>
          <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Begin Tran" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="queryType">Update Statement</stringProp>
            <stringProp name="query">BEGIN TRAN COMMIT TRAN</stringProp>
            <stringProp name="queryArguments"></stringProp>
            <stringProp name="queryArgumentsTypes"></stringProp>
            <stringProp name="variableNames"></stringProp>
            <stringProp name="resultVariable"></stringProp>
            <boolProp name="collectDiagnostics">false</boolProp>
          </JDBCSampler>
          <hashTree/>
          <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Calculate Price cut off" enabled="true">
            <stringProp name="dataSource"></stringProp>
            <stringProp name="queryType">Callable Statement</stringProp>
            <stringProp name="query">PfoVal_Recalculate ?, ?, 1</stringProp>
            <stringProp name="queryArguments">${Pfo_1}, ${PfoValInstance}</stringProp>
            <stringProp name="queryArgumentsTypes">INTEGER, INTEGER</stringProp>
            <stringProp name="variableNames"></stringProp>
            <stringProp name="resultVariable"></stringProp>
            <boolProp name="collectDiagnostics">true</boolProp>
          </JDBCSampler>
          <hashTree>
            <BSFPreProcessor guiclass="TestBeanGUI" testclass="BSFPreProcessor" testname="Prepare Portfolio List for Price Cut-Off" enabled="true">
              <stringProp name="scriptLanguage">groovy</stringProp>
              <stringProp name="parameters"></stringProp>
              <stringProp name="filename"></stringProp>
              <stringProp name="script">import groovy.sql.Sql
import org.apache.jmeter.protocol.jdbc.config.DataSourceElement
try {
    // build Pfo List
    println(&quot;Building Portfolio List&quot;)
    def pfoList = &quot;&lt;PfoList&gt;&quot;
    def pfoNr = 1
    def pfo = vars.get(&quot;Pfo_&quot; + pfoNr)
    while(pfo != null) {
        println(&quot;Pfo: $pfo&quot;);
        pfoList = pfoList + &quot;&lt;Pfo ID=&apos;$pfo&apos; EmptyValuation=&apos;true&apos; PropagatePrice=&apos;true&apos;/&gt;&quot;
        pfoNr++
        pfo = vars.get(&quot;Pfo_&quot; + pfoNr)
    }
    pfoList = pfoList + &quot;&lt;/PfoList&gt;&quot;
    vars.put(&quot;PfoListXML&quot;, pfoList)
} catch (Exception e) {
    println(e.toString());
}</stringProp>
            </BSFPreProcessor>
            <hashTree/>
            <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Create Price Cut-Off" enabled="true">
              <stringProp name="dataSource"></stringProp>
              <stringProp name="query">CreatePriceCutOff ?, ?, ?, ?, ?, ?, ?, ?</stringProp>
              <stringProp name="queryArguments">${__threadNum},${ValueDate},${PCOQuality},${ReportingDate},]NULL[,${PCO},${PfoListXML},${PricePropagationMode}</stringProp>
              <stringProp name="queryArgumentsTypes">VARCHAR, DATE, INTEGER,TIMESTAMP,INTEGER,OUT INTEGER,CLOB,INTEGER</stringProp>
              <stringProp name="queryType">Callable Statement</stringProp>
              <stringProp name="resultVariable"></stringProp>
              <stringProp name="variableNames"></stringProp>
            </JDBCPreProcessor>
            <hashTree/>
            <JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Get Portfolio Valuation Instance from Price Cut-Off" enabled="true">
              <stringProp name="dataSource"></stringProp>
              <stringProp name="queryType">Prepared Select Statement</stringProp>
              <stringProp name="query">select Nr from PfoValInstance where Pfo=? AND PriceCutOff=?</stringProp>
              <stringProp name="queryArguments">${Pfo_1},${PCO}</stringProp>
              <stringProp name="queryArgumentsTypes">INTEGER,INTEGER</stringProp>
              <stringProp name="variableNames">PfoValInstance</stringProp>
              <stringProp name="resultVariable"></stringProp>
            </JDBCPreProcessor>
            <hashTree/>
            <JDBCPostProcessor guiclass="TestBeanGUI" testclass="JDBCPostProcessor" testname="JDBC PostProcessor" enabled="true">
              <stringProp name="dataSource"></stringProp>
              <stringProp name="query">DeletePriceCutOff ?</stringProp>
              <stringProp name="queryArguments">${PCO}</stringProp>
              <stringProp name="queryArgumentsTypes">INTEGER</stringProp>
              <stringProp name="queryType">Callable Statement</stringProp>
              <stringProp name="resultVariable"></stringProp>
              <stringProp name="variableNames"></stringProp>
            </JDBCPostProcessor>
            <hashTree/>
          </hashTree>
          <IfController guiclass="IfControllerPanel" testclass="IfController" testname="If Controller" enabled="true">
            <stringProp name="IfController.condition">${JMeterThread.last_sample_ok}</stringProp>
            <boolProp name="IfController.evaluateAll">false</boolProp>
          </IfController>
          <hashTree>
            <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Commit" enabled="true">
              <stringProp name="dataSource"></stringProp>
              <stringProp name="queryType">Commit</stringProp>
              <stringProp name="query"></stringProp>
              <stringProp name="queryArguments"></stringProp>
              <stringProp name="queryArgumentsTypes"></stringProp>
              <stringProp name="variableNames"></stringProp>
              <stringProp name="resultVariable"></stringProp>
              <stringProp name="TestPlan.comments">Commit the transaction of the valuation</stringProp>
              <boolProp name="collectDiagnostics">false</boolProp>
            </JDBCSampler>
            <hashTree/>
          </hashTree>
          <IfController guiclass="IfControllerPanel" testclass="IfController" testname="If Controller" enabled="true">
            <stringProp name="IfController.condition">${JMeterThread.last_sample_ok}==false</stringProp>
            <boolProp name="IfController.evaluateAll">false</boolProp>
          </IfController>
          <hashTree>
            <JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Rollback" enabled="true">
              <stringProp name="dataSource"></stringProp>
              <stringProp name="queryType">Rollback</stringProp>
              <stringProp name="query"></stringProp>
              <stringProp name="queryArguments"></stringProp>
              <stringProp name="queryArgumentsTypes"></stringProp>
              <stringProp name="variableNames"></stringProp>
              <stringProp name="resultVariable"></stringProp>
              <boolProp name="collectDiagnostics">false</boolProp>
            </JDBCSampler>
            <hashTree/>
          </hashTree>
        </hashTree>
      </hashTree>
      <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" enabled="true">
        <boolProp name="ResultCollector.error_logging">false</boolProp>
        <objProp>
          <name>saveConfig</name>
          <value class="SampleSaveConfiguration">
            <time>true</time>
            <latency>false</latency>
            <timestamp>true</timestamp>
            <success>false</success>
            <label>true</label>
            <code>false</code>
            <message>false</message>
            <threadName>true</threadName>
            <dataType>false</dataType>
            <encoding>false</encoding>
            <assertions>false</assertions>
            <subresults>false</subresults>
            <responseData>false</responseData>
            <samplerData>false</samplerData>
            <xml>true</xml>
            <fieldNames>false</fieldNames>
            <responseHeaders>false</responseHeaders>
            <requestHeaders>false</requestHeaders>
            <responseDataOnError>false</responseDataOnError>
            <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
            <assertionsResultsToSave>0</assertionsResultsToSave>
          </value>
        </objProp>
        <stringProp name="filename"></stringProp>
      </ResultCollector>
      <hashTree/>
      <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
        <boolProp name="ResultCollector.error_logging">false</boolProp>
        <objProp>
          <name>saveConfig</name>
          <value class="SampleSaveConfiguration">
            <time>true</time>
            <latency>true</latency>
            <timestamp>true</timestamp>
            <success>true</success>
            <label>true</label>
            <code>true</code>
            <message>true</message>
            <threadName>true</threadName>
            <dataType>true</dataType>
            <encoding>false</encoding>
            <assertions>true</assertions>
            <subresults>true</subresults>
            <responseData>false</responseData>
            <samplerData>false</samplerData>
            <xml>true</xml>
            <fieldNames>false</fieldNames>
            <responseHeaders>false</responseHeaders>
            <requestHeaders>false</requestHeaders>
            <responseDataOnError>false</responseDataOnError>
            <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
            <assertionsResultsToSave>0</assertionsResultsToSave>
            <bytes>true</bytes>
          </value>
        </objProp>
        <stringProp name="filename"></stringProp>
      </ResultCollector>
      <hashTree/>
      <ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" enabled="true">
        <boolProp name="ResultCollector.error_logging">false</boolProp>
        <objProp>
          <name>saveConfig</name>
          <value class="SampleSaveConfiguration">
            <time>true</time>
            <latency>true</latency>
            <timestamp>true</timestamp>
            <success>true</success>
            <label>true</label>
            <code>true</code>
            <message>true</message>
            <threadName>true</threadName>
            <dataType>true</dataType>
            <encoding>false</encoding>
            <assertions>true</assertions>
            <subresults>true</subresults>
            <responseData>false</responseData>
            <samplerData>false</samplerData>
            <xml>true</xml>
            <fieldNames>false</fieldNames>
            <responseHeaders>false</responseHeaders>
            <requestHeaders>false</requestHeaders>
            <responseDataOnError>false</responseDataOnError>
            <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
            <assertionsResultsToSave>0</assertionsResultsToSave>
            <bytes>true</bytes>
          </value>
        </objProp>
        <stringProp name="filename"></stringProp>
      </ResultCollector>
      <hashTree/>
    </hashTree>
  </hashTree>
</jmeterTestPlan>
