I am doing a BTEQ Import from a file having 400 records. Once the job starts, I checked in the Viewpoint and the Request is showing in DELAYED state. After waiting for nearly 10 minutes, it gets a slot and one record is inserted into the table. But again it is going to DELAYED state. This is happening after each record is inserted.
I want to ask if this is the expected behavior ?
I was wondering, If it gets a slot once, all the 400 records should be inserted ? Please provide your inputs.
This is expected behaviour for a TASM throttle rule if there is a rule in place that applies to you or your work and there is a lof of other work going on. BTEQ IMPORT is not a utility, it is simply a way to submit a series of separate single INSERT statements, each of which has to be parsed and run as a separate request. So if there is a throttle rule, it will apply to each of INSERTs sequentially. If this is something you need to do regularly, then you need to have a conversation with the owners of the TASM throttle rules on your system to see if they can be adjusted to allow this work to operate more freely.
You might try using a high PACK (e.g. PACK 10000) for the import, then it will be a single request.
But if the PACK number is too high you will get an error, so check for Failure 5966 Too many data records packed in one USING row.
Thanks you all for your responses. I understand that the problem here is because of the TASM throttle rule.
About using the PACK option, i have tried this but it did not make a difference. I THINK it was getting over writen by throttle rule, Can someone please confirm if this is possible ?
Using PACK you still get delayed by TASM, but instead of inserting a single row PACK rows are processed, so all 400 should be inserted at once.
You might also talk to your DBA the exclude short work like single row inserts from getting delayed.