Consultor Eletrônico



Kbase 15430: V8 Performance Issues caused by V7 Bleed-Thru Resolution
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   5/10/1998
V8 Performance Issues caused by V7 Bleed-Thru Resolution

INTRODUCTION
============
This knowledgebase entry discusses the performance issue (slow
painting of frames with many objects) you may encounter when
when migrating from Version 7 to Version 8. It also discusses two
solutions: PROGRESS' resolution to this issue with a new attribute and
a workaround you may implement.

PERFORMANCE ISSUE
=================
PROGRESS Version 7 contains three-d bleed through issues which have
been resolved in Version 8. The bleed through issues in Version 7
caused objects to be seen bleeding through an overlapping object. The
resolution involves checking for the possibility of overlapping
three-d objects and this takes extra time. Depending on the number
of objects in a frame, this extra time to paint the frame could be
quite noticeable.

RESOLUTION
==========
PROGRESS has added to the Version 8 re-release, 8.0A02, a frame level
attribute, called CAREFUL-PAINT which will control whether the
checking for overlapping three-d objects is used or not. This
attribute will default to TRUE which is the correct Version 8
behavior of checking for overlapping three-d objects, thus
eliminating the bleed through problems. A startup attribute called
CarefulPaint has also been added to the Startup section of the
PROGRESS.INI file to allow you to set the default of CAREFUL-PAINT
for frames that do not define the attribute explicitly. CarefulPaint
will not be included in the PROGRESS.INI Progress ships with the V8
product. You will need to add it to the PROGRESS.INI file in order
to change its default. This startup setting will allow you to set the
default of CAREFUL-PAINT to FALSE (to retain V7 behavior) which will
allow for easier migration from V7 to V8 if you have frames with many
objects.

The application developer can utilize this attribute in one of the
following manners:

1) If you have migrated from V7 to V8 and are seeing slower
performance on a frame, you can change the CAREFUL-PAINT attribute
to FALSE for that particular frame. This will keep the default for
the application TRUE, which will ensure proper painting of all other
frames, default V8 behavior.

2) If you have migrated from V7 to V8 and are seeing slower
performance on many frames, you can change the startup setting in the
PROGRESS.INI to FALSE which will make the CAREFUL-PAINT attribute on
all frames FALSE. If you see bleed through on a particular frame,
CAREFUL-PAINT can be set to TRUE which will add the checking for
overlapping three-d objects for that particular frame.

NOTE: Making CAREFUL-PAINT on a frame FALSE, either with the
PROGRESS.INI setting or just on a particular frame, could potentially
cause the bleed through problem. This bleed through problem would
then need to be worked around by hiding the underlying objects that
are bleeding through or putting the overlapping objects onto another
frame that is the same size so it won't be visible to the user. Refer
to knowledgebase entry 13508 Widgets Bleeding Through Other Widgets in
7.3A with 3D.

WORK AROUND
===========
There is also a work around for the performance issue which can be
used to avoid removing the V8 behavior of checking for overlapping
three-d objects. Application developers can split frames with many
three-d objects into more than one frame. These frames can still look
like the one original frame by utilizing borderless frames or having
frames own frames. This will cut down much of the extra time needed
to check for overlapping three-d objects and will not allow the V7
bleed through problems.

Progress Software Technical Support Note # 15430