Re:Re: Developer Question

Discussion created by ca.portal.admin on Jan 6, 2010
Not true.
In the batch environment, if the next physical page has not been
allocated o your address space and you attempt to move bytes from it,
you will get an ddressability error, which is an S0C4. That is why it is
recommended that our sort key variable is at least 256 bytes, even if
the key itself is only . By defining 256, you avoid the S0C4 when the
key falls at the end of the hysical page since the additional storage
will force the next page to be llocated to your address space.
You are correct with respect to CV mode, however, fetch protection only
ecomes an issue if you are running CV in, I believe it is called, secure
ode. In this mode, CV will set all pages in the storage pool to have
fetch rotection turned on. Then, as a task is dispatched, the task's
pages have he fetch protection attribute turned off as the storage key
is changed to ser mode. In normal storage protect mode, CV only changes
the key of the age, not the fetch attribute.
In any case, the warning in the COBOL manual is for exactly what I
stated reviously, and as the warning implies, is more probable when the
sort key ield is defined in a file's record buffer than when it occurs
in a rogram's working storage area. It can also be an issue when the
sort key ield is in the linkage section as well. In that case, a wise
precaution is o move the sort key from the linkage section variable into
a 256 byte orking-storage section prior to using it in a DML verb.