您好我目前正在做一个验证工具来比较 Control-M 手动生成的数据(称为“基线”)和 Control-M 通过 Hudson 代理生成的数据(称为“回归”)的数据精度和完整性。
下面是verification-job-sort.xml 中的代码,我让它先在Baseline 和Regression 数据表之间进行排序。
下面这个是基线部分。其中<constructor-arg value=""/>
是我们放置列号的位置。我已经尝试过,0,1,2/etc,但它没有对表中的数据进行排序。
<bean id="baseline_file49_sortingTasklet"
class="com.hsbc.gbm.grt.bart.regression.verification.springbatch.FlatFileSortingTasklet">
<property name="inputFilePath" value="D:\WR_BART\DRR\Baseline\CDM_DRR_MI_IP_MTM.${Baseline}.csv"/>
<property name="tmpDirPath" value="D:\WR_BART\DRR\Baseline\tmp"/>
<property name="outputDirPath" value="D:\WR_BART\DRR\Baseline\tmp"/>
<property name="linesToSkip" value="0"/>
<property name="overwriteIfOutputFileExists" value="true"/>
<property name="partitionSizeInMB" value="384"/>
<property name="comparator">
<bean class="com.hsbc.gbm.grt.bart.regression.verification.file.DelimitedLineComparator">
<constructor-arg value=""/>
<constructor-arg value=","/>
</bean>
</property>
</bean>
然后下面是回归部分。和上面一样,我试过了。
<bean id="regression_file49_sortingTasklet"
class="com.hsbc.gbm.grt.bart.regression.verification.springbatch.FlatFileSortingTasklet">
<property name="inputFilePath" value="D:\WR_BART\DRR\Regression\CDM_DRR_MI_IP_MTM.${Regression}.csv"/>
<property name="tmpDirPath" value="D:\WR_BART\DRR\Regression\tmp"/>
<property name="outputDirPath" value="D:\WR_BART\DRR\Regression\tmp"/>
<property name="linesToSkip" value="0"/>
<property name="overwriteIfOutputFileExists" value="true"/>
<property name="partitionSizeInMB" value="384"/>
<property name="comparator">
<bean class="com.hsbc.gbm.grt.bart.regression.verification.file.DelimitedLineComparator">
<constructor-arg value=""/>
<constructor-arg value=","/>
</bean>
</property>
</bean>
下面的代码来自文件 verification-spec.xml,然后在排序完成后比较基线和回归之间的数据。我试过<property name="lineOrderingPolicy" value="0,1,"/>
在下面添加,<property name="fieldDelimiter" value="," />
但还是不行。
<bean id="file49_bean"
class="com.hsbc.gbm.grt.bart.regression.verification.springbatch.item.file.DualCSVFileVerifier"
parent="outputParentDualCSVFileVerifier">
<property name="referenceResource" value="CDM_DRR_MI_IP_MTM.${Baseline}_sorted.csv"/>
<property name="testResource" value="CDM_DRR_MI_IP_MTM.${Regression}_sorted.csv"/>
<property name="linesToSkip" value="0" />
<property name="fieldDelimiter" value="," />
</bean>
我已经使用 Hudson 运行了验证工具,但文件之间仍然存在差异。我已经手动检查了数据,但它们没有正确排序。验证过程正常,但排序不行。
让我知道如果我错过提及某些事情或您需要知道的事情。