GT.M V6.2-002A available

7 views
Skip to first unread message

Bhaskar, K.S

unread,
Jun 26, 2015, 6:26:45 PM6/26/15
to Hardhats, Enterprise Web Developer Community, Vi...@googlegroups.com, worldvist...@yahoogroups.com
FIS GT.M V6.2-002A provides the following timely remediation:

$SELECT() works correctly in several scenarios where it previously did not.
  • Effective V6.2-002, compiling nested calls to $SELECT() with both environment variables gtm_boolean and gtm_side_effects undefined or set to zero (0) could occasionally terminate processes with a segmentation violation (SIG-11).
  • Effective V6.2-002, compiling nested calls to $SELECT() with gtm_boolean set to 1 or 2 could cause a GTMASSERT2.
  • Effective V6.2-002, $SELECT() incorrectly maintained $REFERENCE and the naked reference in some cases.
  • Effective V6.0-001, even with gtm_side_effects set to one (1) to specify that the code has side effects, GT.M would evaluate $SELECT() out of order. KILL x WRITE x+$SELECT(1:$INCREMENT(x)) is an example of code with side effects that did not maintain standard order of evaluation even when compiled with gtm_side_effects set to 1.
Although the above cases describe the core of the previous behavior, it is likely that there are cases that overlap the above in ways that are not obvious. When gtm_boolean and gtm_side_effects are undefined (or set to zero), GT.M assumes that the code has no side effects other than $REFERENCE and indirection, and can, and does, rearrange computation to improve performance: the evaluation of operands in expressions, the order in which function call parameters are evaluated, etc. In order to be more consistent with other optimizations, when neither gtm_boolean nor gtm_side_effects are set to non-zero values, GT.M V6.2-002A rearranges computation to evaluate a $SELECT() that appears within a Boolean expression only when its arguments contain a global variable or indirection, where previously it always did. If such a $SELECT() has an argument containing an extrinsic ($$) function call with side effects, results on V6.2-002A may differ from those on previous GT.M releases. Note: as the rearranging can change from release to release, you may encounter unexpected and varying results if you compile application code that has side effects with environment variables that tell GT.M that it has no side effects. Where code contains side-effects, FIS strongly recommends compiling it with gtm_side_effects and gtm_boolean set to 1. (GTM-8376)

If you are using V6.2-002, or considering an upgrade to V6.2-002, please consider an upgrade to V6.2-002A.  Thank you for using GT.M.

Regards
-- Bhaskar

--
GT.M - Rock solid. Lightning fast. Secure. Pick any three.
_____________
The information contained in this message is proprietary and/or confidential. If you are not the intended recipient, please: (i) delete the message and all copies; (ii) do not disclose, distribute or use the message in any manner; and (iii) notify the sender immediately. In addition, please be aware that any message addressed to our domain is subject to archiving and review by persons other than the intended recipient. Thank you.
Reply all
Reply to author
Forward
0 new messages