General

The General options let you customize drag and drop and memory warning options.

This page discusses:

Drag and Drop

Enable Drag and Drop for Cut, Copy, Paste Use
Lets you drag objects in tabs (for copying, pasting or cutting purpose only).

Note: This option does not apply to section configuration.

By default, this option is selected.

Memory Warning

Trigger memory warning at ... % of memory use
This option helps you to save your data before a crash occurs due to excessive memory use.

A warning pop up when the process memory use exceeds a certain percentage of the address space usage or when the remaining free memory fragmentation reach a certain threshold. The following message warns you that because the amount of remaining memory is becoming low, you should save your data and exit the session:

Warning: Memory limitation is exceeded Recommendation: please try to save your data and re-start the session

Important: This warning does not involve RAM memory use or paging space use. It does not depend on the computer resources, only on the process address space.

Check this option and set the percentage of address space indicating when to trigger the warning. This will set the limit value for address space use and fragmentation.

The thresholds may be changed but it is not advisable, except for expert users.

Once the warning is generated, the warning in itself should not crash or freeze your session.

Limitations:

  • This check involves a small performance hit, so it is made generally at the end of interactions. This means that in particular scenarios where the memory consumption increases very fast (passes from low consumption to very high consumption in only one interaction), the warning may come too late. In other terms, this warning does not protect absolutely all scenarios, only a high percentage of them. This limitation is inherent in the specification and will never be suppressed.
  • On UNIX, the fragmentation of the remaining free memory is useless as the memory manager addresses this aspect well. Furthermore, it cannot be calculated. So the performance cost of the checking is not an issue on UNIX platforms.
  • On UNIX, the warning popup will only be generated once, the first time the threshold is passed. If you free enough memory to come under the threshold and then exceed the threshold later, the warning will not be generated a second time because the system has no way of knowing the threshold was exceeded again.
  • This option activates the warning for both the memory space usage and for the remaining memory space fragmentation. However, only the limit value on memory space usage may be specified by the user or administrator. The fragmentation threshold is not customizable. However, it is activated.

This option is cleared.

Note: On 64 bits, the address space size is huge. With the current existing hardware (physical resource), the threshold of warning generation cannot be obtained. Therefore this warning will not be triggered on 64-bit platforms on currently available computers. However, the mechanism is kept for the future in case computer hardware evolves over in the next year.

Additional Information Added to Session and Abend Traces

When the memory warning mechanism is activated, additional information is added to the Session_Information_File and in abend traces to help in investigating certain memory crashes.

By logging this information, added information allows the segregation of scenarios involving crashes which occur due to full memory consumption. So it will now be possible to distinguish between:

  • crashes due to the fact that the application crashed after the warning popped-up, but before the user had any chance to save data and exit
  • crashes due to lack of memory without any warning: this may occur in some scenarios where, for example, a huge amount of memory is consumed in one single interaction
  • crashes due to the fact that the user was warned and continued the session until there were no more memory.

As perceived by the end user, application behavior does not change.

However, if the memory warning mechanism is activated, and if a warning is generated during the session, extra information is logged in the SessionInformationFile indicating that a warning was generated.

Later, if the application crashes, the same information is logged in the AbendTrace associated with the crash.

Here is a sample of the type of information added (with the value set to 1% simply for the purpose of illustration):

[MEMORY WARNINGS]

Time=16.48.24:Process has reached 12.09% of memory usage which is over the critical limit of 1.00%. Size of process : 246.04 Mo( 257986560 ) Physical memory : 1023.00 Mo( 1072693248 ) Avail physical mem : 578.47 Mo( 606572544 ) Paging disks : 3072 Mo( 3221225472 ) Total page space : 2462.61 Mo( 2582233088 ) Avail page space : 2119.59 Mo( 2222551040 ) Avail address Space: 1801.84 Mo( 1889366016 ) Memory allocatable : 1801.8398 Mo( 1889366016 ) Memory load : 43 % Stack size : 1.00 Mo( 1048576 ) Stack used : 0.03 Mo( 28672 ) A Warning CATSysMemoryWng_132001 has been emitted. User is informed. Warning: Memory limitation is exceeded. Recommendation : please try to save your data and re-start the session.

The information contains:

  • the time of the memory warning generation
  • some information on memory usage, address space usage and paging space usage at the time of warning generation
  • the kind of warning generated (here: CATSysMemoryWng_132001)
  • the NLS warning which was in the panel.