FUNMAXT parameter

From m204wiki
Revision as of 18:35, 11 November 2014 by JAL (talk | contribs)
Jump to navigation Jump to search

Default Fast/Unload request timeout (seconds)

Summary

Default value
0
Parameter type
System
Where set
System manager resettable
Related products
Fast/Unload User Language Interface
Introduced
Sirius Mods 6.7

Description

This is a numeric parameter (with valid values from 0 to 36000) that indicates the maximum amount of time, in seconds, a Fast/Unload User Language Interface request is to be given to complete. The timer starts from the initiation of the request, either via $Funload, or via the FastUnload and FastUnloadTask methods in the RecordSet class. The default value of FUNMAXT, 0, means that there will be no time limit placed on Fast/Unload User Language Interface requests.

The purpose of FUNMAXT is to prevent user requests being “hung up” indefinitely while queuing for busy Fast/Unload tasks or for unintentionally long-running requests.

FUNMAXT can be overridden for specific requests by using either of these:

  • The MaxTime named parameter on the FastUnload and FastUnloadTask methods in the RecordSet class

    * Make sure request completes in one minute %rc = %recset:funload(%inList, %outList, %reportList, 'NEBUFF=10', maxtime=60)

  • The sixth parameter on $Funload:

    * Make sure request completes in one minute %rc = $funload('LABEL', %inList, %outList, %reportList, 'NEBUFF=10', 60)

A reasonable strategy would be to set FUNMAXT to a fairly low value, then selectively set it higher for requests that need more time. Of course, it can be very difficult to ensure that short-running requests complete quickly, if the Online also has long-running requests that might tie up all the Fast/Unload tasks. The odds are better if there are more Fast/Unload tasks (FUNTSKN bigger), but even with more tasks, these potential problems remain:

  • If there are enough long running requests, all tasks might be tied up, anyway.
  • Some of the Fast/Unload tasks might have trouble getting dispatched because there are more of them than CPUs to run them.