Would it be a problem while modifying/deleting a record while prefetching it? Would this causes problem only for the ISN modifications?
The problem is performance. Except in rare cases, any performance gain from Prefetch will be eliminated by Hold Queue processing. (The impact is so negative that, for statement-level multi-fetch, the Natural compiler will ignore the MULTI-FETCH clause in an update loop.)
I think Peformance gain from Prefetch is mainly by reducing the nr. of ADABAS CALLs by bufferings. So lesser the nr. of ADBAS calls(using large nr. of PREFETCH buffers), more performance gain. Isn’t it?
Applying Prefetch to a READ/FIND/HISTOGRAM loop can improve performance dramatically - elapsed times can drop by 50% to 80%. This is a result of reduced inter-region communication (loosely speaking, fewer Adobes calls).
But if you apply Prefetch to an update loop, you will see performance suffer. All the records are placed in the hold queue, and your ET logic will cause uncommitted records to be released from the hold queue and re-held. This overhead will more than compensate for any Prefetch gains.
Only in very rare cases will Prefetch improve performance of an update loop!