Compare fails and event log reports the following errors:
"Process launched: sp_desvr (for verpd) [pid = 13829]
Notice: Opened Compare session log file /apps/quest/sp01/var/2998/log/verpd_desvr-13829- [sp_desvr(deq)/13829]
Notice: Oracle env - verpd:/apps/oracle/u001/product/9.2.0/verpd [sp_desvr(pdb)/13829]
Child process completed
Error: Unable to allocate 9640000 bytes (de_select_alloc_for_column_data,L1141) [sp_desvr(deq)/13829]
Error: Unable to allocate 9640000 bytes (de_select_alloc_for_column_data,L1141) [sp_desvr(deq)/13829]
Internal error: Error 1 in de_batch_setup, see verpd_desvr-13829-*.log [sp_desvr(deq)/13829]
Process exited sp_desvr (for verpd) [pid = 13829] - exit(0)"
*******************************************************************************************************
Error allocating 272 bytes for key_data in de_key_alloc_node
000: Error 1 calling de_key_alloc_node in de_key_add
000: Error 1 calling de_key_add in de_compare_client1 (2146)
This indicates a resource issue.
The SP_DEQ_BATCHSIZE parameter controls the batch size that SharePlex uses for the compare/repair function when the compare config or compare table command is issued. Reducing the size of the SP_DEQ_BATCHSIZE parameter on the source will reduce the memory requirements for compare and will allow it to run successfully.
Try reducing it from the default 10000 to 5000 as mentioned below and run the compare again.
On the source set the parameter via sp_ctrl:
sp_ctrl>list param all compare (check the setting for this parameter)
sp_ctrl> set param SP_DEQ_BATCHSIZE 5000
sp_ctrl> compare table......
To revert the parameter back to the original value:
sp_ctrl> set param sp_deq_batchsize 10000
For more Details about SP_DEQ_BATCHSIZE Parameter please refer the Shareplex Reference Guide.
If you are using Oracle 10G another work around would be to increase UNDO tablespace instead of decreasing SP_DEQ_BATCHSIZE.