Bug 31689

GemStone/S

6.7.2.1, 6.7.2, 6.7.1, 6.7, 6.6.5, 6.6.4, 6.6.3.3, 6.6.3.2, 6.6.3, 6.6.2, 6.6.1, 6.6, 6.5.8, 6.5.7.5, 6.5.7, 6.5.6, 6.5.5, 6.5.4, 6.5.2, 6.5.1, 6.5, 6.3.1, 6.3, 6.2.x, 6.2, 6.1.6, 6.1.5, 6.1.x, 6.0.x, 5.1.5.1

All

doesNotUnderstand can corrupt stack

There is a very small timing window during which the running of not connected
set GC during execution of a doesNotUnderstand method can cause stack
corruption.  This is often exhibited as another #rtErrDoesNotUnderstand
error during execution of the doesNotUnderstand method.

In practice this error is extreamly rare, and is only exposed in applications
that make frequent use of doesNotUnderstand and have frequent occurrences of
not connected set GC.

Workaround

Recode application to minimize use of doesNotUnderstand, and/or reduce
the possibility of not connected set GC.  Ways of reducing not connected
set GC include:

1.  If possible, decrease the number of temporary objects generated during
a single transaction.

2.  Increase the size of the gem's temporary object cache via
GEM_TEMPOBJ_CACHE_SIZE.

3.  Increase the settings for GEM_NOT_CONNECTED_THRESHOLD and
GEM_NOT_CONNECTED_DELTA.


                

Last updated: 4/4/05