IBM Component Broker Products
Release 2.0 PTF
Readme
Updated 3/23/99
CONTENTS
The Component Broker Release 2.0 PTF should be applied to all Component Broker Release 2.0 installations.
Note: Uninstall of the PTF is not provided. Once the PTF is installed, the entire Component Broker installation must be uninstalled and the Release 2.0 package installed again to revert to the original Release 2.0 package. However, the PTF may be reapplied if necessary.
Additions to the Component Broker Technical Support Website
The Component Broker Technical Support Website has been updated to include additional tools, documentation, and known limitations that were not available when the Release 2.0 product shipped. You can link to Component Broker's support area from IBM customer technical support. Since there are frequent updates to the Component Broker Technical Support site, customers are urged to check there often.
Some of the updates include new tools, updated
versions of the documentation,
and additional known problems and limitations that are not in the Late Breaking News but
have been added to the Knowledge
Base of the Component Broker Technical Support Website. Quickfixes provided after the
shipment of the Release 2.0 PTF are available in the fixes and updates section.
CORRECTED PROBLEMS LISTED BY COMPONENT
Problem Abstract |
PTF Fix Information |
Problem/Platform |
PREREQUISITE INFORMATION | ||
JDK 1.1.6 Fixpack 4 resolves multiple problems | Applying the AIX Developers' Toolkit for Java (JDK) 1.1.6 Fixpack
4 fixpack level IX86441 will resolve the following Component
Broker problems:
1. Object Builder errors when JIT turned on (This also requires the Component Broker R2.0 PTF1; see Object Builder problem when JIT on) 2. Garbage collection problems (see PAA/CICS sample failure) |
59756, 58767 AIX |
Conflicts with multiple copies of setloc1.dll | The problem a) Multiple copies of setloc1.dll
(DCE, GSK) in Component Broker 2.0 conflict with each other resulting in the wrong
setloc1.dll being loaded. Description of the fix A new version of the Global Security Kit (GSK) package contains the fix. As part of the PTF installation, this package will be placed in your cbroker\bin directory. The following steps for uninstalling and installing the GSK package should be taken during the process listed in Install the Component Broker PTF on Windows NT. The proper time to proceed with the GSK steps is noted in item six in the section "Install the Component Broker PTF on Windows NT." Uninstall the existing Global Security Kit (GSK) 1. Stop the Component Broker service. 2. Search your system to find out where GSK was originally installed. It may be in
\Program Files\IBM\GSK, or some other location. You can find this information by invoking
regedit to look for GSK.
3. Uninstall the existing version of GSK by running the following command: 4. Verify the completeness of uninstallation. Change directories to where you installed GSK previously and make sure all GSK files and subdirectories are removed. If they are not, remove them manually. Install the new GSK from the PTF 1. Create a directory into which the self-extracting GSK package will be expanded. Copy GSKRF301.exe from the cbroker\bin directory to the directory you just created. 2. Change to the directory you created in step 1.Run the self_extracting GSK package. This will result in several files being extracted into this directory. GSKRF301 ./ /D 3. Run the set up program that was extracted in step 2 as follows: 4. Follow the instructions and answer questions appropriately. Be sure to install GSK into the same directory it was installed in before you uninstalled the previous version. Component Broker is configured to expect GSK in the same location. 5. Verify the installation by running the following command from the GSK\bin directory:
6. Restart the CBConnector service via the Start->Control Panel->Services panel. 7. Use the SM EUI to resume the hosts that this fix was applied to. The resume action will re-start all application services, the name server, and the orb daemon. Notes and Considerations The new version of GSK must be installed on the same drive:directory where the original version of GSK was installed. The setup program for GSK will ask you where you want to install GSK. |
56983, qf56273
Windows NT |
Configuration tool hangs with JDK 1.1.7B | If JDK 1.1.7B was used, the Component Broker 2.0 Configuration Tool would hang whenever a reconfiguration was performed. This is because the Java method used to copy contents of files in ascii mode has a different behavior in JDK 1.1.7B. The ascii copy call was changed to a binary copy of files to fix this problem. | 58042 Windows NT |
TOOLKIT |
DDL IBOIMExtLocal statements wrong for S/390 |
In the OS/390 Systems Management DDL generated by Object
Builder, the keyCreateFunctionName and primaryKeyClass parameters were incorrect in the
UUID case. They are now: keyCreateFunctionName = "IBOIM390ExtLocal_IUUIDPrimaryKeyImpl_Create"; primaryKeyClass = "IBOIM390ExtLocal::IUUIDPrimaryKey"; |
57553 S/390 |
OB hangs when generating DOImpl | A problem has been fixed in which Object Builder hangs when generating the DOImpl (Generate All). | 57270 All Platforms |
Object Builder generates incorrect java code for non-IDL type | If a user attempted to define an attribute on a JavaBO that was a Java
'Non-IDL Type,' the generated declaration of the attribute in the xxxBOBase.java
file contained the C++ scoping operator '::' For example: import java.util.HashTable; . . . protected ::HashTable attribute; |
57636 All Platforms |
Rose Bridge exports to Object Builder | Rose Bridge using "Export to Object
Builder with Separate Projects and Separate Classes" did all classes in a package
instead of just the ones selected. The User Interface has been modified to clarify the selective bridging process. |
57120 Windows NT |
Child BO needs Lazy Evaluation when using "same as parent" | For an inheritance model, if the child BO has an access pattern Same as Parent's, the code generated for the child BO should be based on the parent's Lazy Evaluation setting. The original Problem Reference asked to enable the Lazy Evaluation checkbox in the SmartGuide. However, the fix implemented forces the child to use the Lazy Evaluation setting of the parent. | 57565 Windows NT AIX |
Getters/setters for object references do not "lazy evaluate" in inherited BOImpls | Previously, in a BOImpl inheritance hierarchy where the
subclass overrode the getter and setter for an object reference attribute, the getter and
setter method bodies on the subclass were emitted as though "Lazy Evaluation"
was disabled. This occurred even if "Lazy Evaluation" was enabled on the
superclass. This sometimes resulted in loss of data in the MO assembly. The getters, setters and framework methods of a subclass BOImpl will now be generated according to the "Lazy Evaluation" configuration of its superclass BOImpl. |
57879 All Platforms |
Integrating User Makefiles | In the Object Builder generated all.mak file, the build process only exposes the end targets to the user (for example, C++ or Java). Some users want to integrate their own makefiles into the build process. Without the fix, the user would have to add many nmake/make statements to the all.mak file. With the fix, the build passes are completely exposed and the user can integrate their makefiles with minimal changes. | 56795 Windows NT |
performance improvement for home/key pattern | Previously, when an object reference was mapped from the DO
to the PO using the home/key pattern, the getter on the DOImpl got a Factory Finder,
located a Home, then drove a findByPrimaryKeyString() against the Home to convert the
foreign key attributes into an object reference. The Home reference retrieved by the
getter method was discarded when the method ended. Every time the getter was called it
reconsulted the Name Service to get the Home resulting in poor performance. The solution included in the PTF is that the Home reference retrieved by the getter is now saved in a DOImpl class static variable the first time the getter is called. On all subsequent calls, the getter simply reuses the Home reference. This avoids unnecessary calls to the Name Service and improves performance. |
56966 All Platforms |
Wrong code for stringified object when object is nil() | The Object Builder emitters have been fixed.
Now, when the getter detects an empty stringified handle it bypasses the call to
ICBCLocalFactory::createFromString() and directly returns a nil object reference to the
caller. Previously, when an object reference was mapped to a stringified handle in the PO, the getter method for the reference on the DOImpl was emitted incorrectly by Object Builder if the stringified handle was empty (which represents a nil object reference). |
57727 All Platforms |
Deadlock in QueryableHomes GetMetaData Method |
A problem existed where a deadlock could occur in the queryable home in a multi-client
environment. In certain time windows, the home could deadlock when the evaluate method ran on the home while another transaction using the query service on another thread requested data from the home. Multi-client queries should no longer deadlock in this fashion. |
58653 Windows NT AIX |
Using Workload Management with C++ Clients | There is no longer a requirement to have DCE installed on clients using WLM. | |
getKey() incorrect for stripped or padded string attributes | If one or more String Key attributes of a
Business Object was configured as Strip trailing spaces or Pad string with
spaces, then the getKey() method on a OS/390 Component Broker DOImpl under the BO was
emitted incorrectly by Object Builder. Specifically, the name of the variable assigned to char*
temp, which should be the key attribute, was incorrect. In the Object Builder emitters the correct variable is now assigned to char* temp in getKey(). |
57616 S/390 |
A new Application Family property has been added | Starting with the Component Broker 2.0 PTF, a new Application Family property, operatingSystem, has been added to the DDL generated by the Object Builder. Older DDL without this property will continue to work on the 2.0 PTF. However, in a future release DDL without the operatingSystem property will be rejected. This means that DDL generated prior to the PTF will have to be regenerated or the operatingSystem property will have to be added manually. The operatingSystem property can have the values aix, nt or solaris (no quotes). For example., operatingSystem = aix; |
57944 All Platforms |
XML compare and merge tool | The help system for the XML compare and merge tool was not enabled in Component Broker 2.0. | 55918 All Platforms |
Duplicate XML files in obimport command | If the user specified two XML files in one invocation of obimport, and both of these files were of type UserDefinedBusinessObject, then the importer would only import the first one, and report that the second one was of a duplicate type (for example, udbo). It has been modified such that any number of BOs, DOs, or POs can be provided to the obimport command. | 57790 All Platforms |
bind and pre-compile errors with DECIMAL | When IDL type "string" was mapped to DB2 as "DECIMAL," object builder generated SQX files failed at DB2 precompile and bind. | 56734 S/390 |
DOImpl Inheritance Superclass attributes may not be written to the datastore | The problem was that the update() method only checks the iDirty flag of the subclass,
not the superclass. The DOImpl update() method emitted by Object Builder now tests the iDirty flags of all classes in a DOImpl class hierarchy to determine if a true update is required. |
58388 S/390 |
Java BO home MOs emitted incorrectly for OS/390 |
There were a number of errors in the Managed Objects for
Java Business Objects as emitted by Object Builder. The code generation problems listed
below have been fixed in the PTF. 1. Method declarations necessary for Queryable Home MOs were missing from the MO.ih file. 2. Several methods were declared and defined in the MO.ih and MO_I.cpp files that
should not be: 3. The getMetadata() method returned
::IBOIMLocalToServerMetadata::IMetadataPackage_ptr. 4. The Java Home MO framework methods delegated to the IManagedAdvancedServer framework class. They should instead delegate to the BOImpl SOMProxy class. 5. There was a call to getMixin() which was removed. In its place should be a reference to the mixin pointer held by the MO. |
57864 S/390 |
Incorrect use of private variables in list method query | In Component Broker 2.0, when a one to many relationship was
created, the list method was implemented using an SQL query. For a model that used a
Foreign Key, the list method attempted to access data members of another Business Object
as local data members instead of using the getter methods provided. The Query in the
relationship list method attempted to use the (private) key attribute directly, and not
the getter method. This resulted in a compile failure, because the attribute is private. With the PTF, the key is always going to be public (it must be defined on the interface, and so must be public). New code generation will use the key getter. |
58440 All Platforms |
Fixes to EJB deployment tools and runtime | 1. Additional error checking has been added to the EJB
deployment tools (cbejb, jetace, and ejbbind). 2. Previously, if an EJBObject method was defined to throw a user-defined exception derived from java.rmi.Remote, the code generated by the cbejb tool would fail to compile. 3. The javax.ejb.ObjectNotFoundEx was not correctly mapped to IDL. 4. Previously, if an ejb-jar was created using VisualAge for Java, including a DeploymentDescriptor, and the jetace tool used to modify the ejb-jar's DeploymentDescriptor, then the cbjeb tool would encounter an error when deploying the new ejb-jar generated by jetace. |
58401 All Platforms |
Restrictions on length of object names |
The System Manager EUI restricted the length of object names to 32 characters in the dialog for creating new objects. This fix expands this limit so that model objects may be created which match the names of corresponding objects created via Load Application. | qf56882 All Platforms |
S/390 MO Inheritance - uninitialized mixin | In Component Broker 2.0, when an MO inherits from another
MO, the setMixin() framework method on the subclass initializes the mixin reference on the
subclass but not the superclass. After the PTF has been applied, the MO setMixin() method emitted by Object Builder calls the superclass' setMixin() and then initializes its own reference to the mixin. This insures that all classes in an MO class hierarchy have a properly initialized mixin reference. |
58249, 58202 S/390 |
Incorrect code generated in PAA POs | A problem existed in the getter, setter and
internalizeKeyAttributes methods of PAA POs emitted to OS/390 Component Broker. Calls were
made to internal->setWorkspaceId() which is correct for NT and AIX but not for S/390. The OS/390 Component Broker PAA PO implementation code emitted by Object Builder now calls the correct method, setWorkSpaceID(workSpaceId). |
58188 S/390 |
NIL home-key mapped object references with foreign key
strings mapped as VARCHARs do not persist correctly |
This was a problem in Embedded SQL DOs. When an object reference is
home-key mapped to a PO, and one or more attributes of the key are strings mapped to
VARCHAR or LONG VARCHAR columns, then any attempt to retrieve a NIL object reference from
the referencing object's getter may result in an error from DB2. This occurred during or
after a createFrom...() operation against the home of the referencing object in which the
object reference is initialized to NIL. With the PTF, Object Builder has altered the rules for string-to-VARCHAR mappings in the PO. When, and only when, the attribute is part of the primary key, the PO converts "" into a zero-length, non-NULL column value instead of a NULL column value. |
58499 All Platforms |
Includes not added to BOImpl or included in BO_I.obj recipes in makefiles. | In Release 2.0 the only way to #include a file from within a
BO Implementation .cpp file was to hand-type the #include into the file adornments of the
BOImpl. Such included files did not appear as dependencies in the BOImpl recipes in the
emitted makefiles. With the PTF, a "Files to Include" page has been added to the Business Object Implementation Smart Guide. This page is based upon the like-named page in the Business Object Interface Smart Guide. When adding an include, you may either select from a list of known CORBA IDL files or you may free-type a file name. Selecting a CORBA IDL file for inclusion in a BOImpl has two effects on the emitted code:
Free-typing an include filename for the BOImpl has two effects on the emitted code:
|
57404, 57405 Windows NT |
Installshield images may not work on later releases of Component Broker | InstallShield images generated on the current release of Component Broker will not
install properly on later versions of Component Broker, because there is a mismatch
between the Component Broker version where the application was generated and the Component
Broker version where the application is being installed. The fix allows applications to install on systems with Component Broker versions later than the Component Broker version on which the application was generated. |
58180 Windows NT |
Memory leak when querying or finding BOs with Cache Service DOs | When querying or finding business objects whose data objects
use the Cache Service, the server may leak large amounts of memory. The problem is that
the internalizeData() method of a Cache Service PO as emitted by Object Builder fails to
release object references in some cases. The Cache Service PO internalizeData() method no longer leaks memory. |
57947 Windows NT AIX |
Exception generating DDL for a foreign key with SOR mapped attributes |
When generating the DDL for a foreign key pattern which contains SOR mapped attributes, Object Builder threw an exception and hung. These patterns will now be ignored. | 57632 All Platforms |
Searching application families for configured MO homes | When a managed object is configured with a specialized home, Object Builder goes through all application families in the model and uses the first instance of this specialized home. The problem is that the located home may be in another application family which could lead to undesirable cross dependencies. The solution in the PTF is to have Object Builder search the current application family before searching the others. | 58084 All Platforms |
Specific DDL fails to generate when mapping incomplete | The specific DDL file fails to generate if any incompletely mapped foreign key patterns are detected. The solution in the PTF is to ignore these patterns. | 58297 All Platforms |
Exception opening read-only dependent models | If the file permission on the dependent model files are set to read-only a DSEFileReadOnly exception occurs. The problem was that these model files (for example, obp.UNI and obm.UNI) were opened with write permission. The solution was to have these files open as read-only. | 58563 All Platforms |
Obgen emits wrong files for Java BOs | For a Java Business Object that contained a forward declared interface with implementation language defined as C++, Object Builder would treat the Business Object as C++ (that is, emit xxx.ih and xxx_I.cpp files). With this fix, Object Builder checks the forward declared flag on an interface before emitting the associated implementation files. | qf58559 All Platforms |
Codegen of makefiles fails when dependent models are read |
In Component Broker Release 2.0, the generation of makefiles would fail when the primary model had dependent models that were either read-only, or located on read-only drives. The failure would take the form of exceptions during the makefile generation, and it occurred on all platforms. | 58298 All Platforms |
Partitioning buttons may not be visible in AddPO SmartGuide | A problem was fixed wherein when adding a PO to a DOImpl (by selecting Add Persistent Object and Schema from the popup menu of the DOImpl node), the partitioning buttons in the Attributes mapping page of the SmartGuide were sometimes not displayed. | 59480 All Platforms |
Disable S/390 button in DOImpl SG if parent is cached | Previously, if a DOImpl derived from a parent that was either DB2 cached or Oracle cached, the S/390 platform checkbox in the DOImpl SmartGuide was still enabled, allowing the user to select this platform. Since DB2 or Oracle cached is not supported in S/390, this checkbox will be disabled now. | 59200 All Platforms |
The workspace ID is not initialized during internalization of PAA DOImpls | On OS/390 Component Broker, the internalize...() framework methods of a PAA DOImpl did
not call the setWorkSpaceID() method on the aggregated PAA PO. The workspace ID is now correctly initialized on the PO by the DOImpl. |
59314 S/390 |
PAA CB/390 beans in VisualAge for Java | Customers of OS/390 Component Broker want to develop their
PAA beans in a VisualAge for Java environment, however there is no VisualAge for Java/390
product. For OS/390 Component Broker PAA bean development within VisualAge for Java two
OS/390 Component Broker interactionSpecs are provided with the PTF, they are: CICSEXCIInteractionSpec.class IMSOTMAInteractionSpec.class They are shipped in the x:\CBroker\lib directory. To load them into VisualAge for Java do the following:
|
58562 Windows NT AIX |
OS/390 compile problems with PAA PO.cpp | Three problems have been fixed in the Persistent Object's C++ file if that Persistent
Object is generated from a model using the Procedural Application Adapter. They were: 1) Odd characters appeared in the C++ source code where lines would normally be split. The odd character is a control-M. 2) Problems with include malloc.h. 3) An error indicating that identifier workSpaceId was not defined in the constructor of the Persistent Object's key. |
59431, 59455 S/390 |
getKey() may be incorrect for delegating, meet-in-the-middle DOImpls | The getKey() framework method on OS/390 Component Broker
DOImpls configured as Delegating was incorrect if the key attributes of the DO interface
and the aggregating BO implementation were differently named. Specifically, the name of
the temporary variable used to set the Key object was incorrect. This can only occur in a
meet-in-the-middle scenario, not a top-down scenario. The correct temporary variable name is now used to set the Key object inside the getKey() method. |
59448 S/390 |
The "Table/View is Updatable" property of a PO is not exported into the XML by Object Builder | Problem: The "Table/View is Updatable" property of a PO is not exported into the XML by Object Builder. As a result, when the XML is imported into a new model, all POs will be imported as updatable. Solution: Note: typically, tables should be updatable and views should not be updatable. |
59500 All Platforms |
Object Builder generated makefiles contain incorrect location of POs | The Object Builder generated makefiles were making the assumption that a DOImpl's
associated POs were in the same model as that of the DOImpl. Code changes were made to ensure that the generated makefiles account for the situation where a DOImpl's POs are in a linked model. Customers who have exercised a bottom up scenario with their DOImpls in one model while their POs are in another will need to regenerate their makefiles with the PTF. Otherwise, their makefiles will continue to assume that a DOImpl's associated POs are in the same model, which could result in build breaks. |
59540 All Platforms |
Nested client request problem for OS/390 | OLT had problems handling OS/390 Component Broker nested client requests, when the request and response were out of order, or were not paired. | 55892 S/390 |
Model error found in obimport for linked model | Problems occurred when importing a uddo.xml file which contained attribute or method elements. In addition,when using the obimport command to import XML files, the user needed to adjust the order of XML files to be imported. | 59302 All Platforms |
Premature exit from server while debugging |
Despite enhancements to the debugger, the way the AIX operating system
handles SIGTRAP may still cause the somsrsm server to exit prematurely when it is in debug
mode. Here is the workaround: Select SIGTRAP notification in the Options->Debugger Settings->Exception Filtering menu. If/when a SIGTRAP is generated, click examine on the exception notification to clear the exception, then press run to continue execution. |
57125 AIX |
Object Builder problem when JIT on |
Object builder ran into problems when running JDK 1.1.6 with JIT on. There are two
parts to this fix:
|
58767 AIX |
Fully qualified data types not used in module struct members |
Object Builder was incorrectly calculating the type for struct members
inside a module. Newly created models will use the fully qualified name for struct
members, however, several steps are necessary to correct this problem in existing models.
The following steps will clean up existing models: 1. Open the SmartGuide for the
module that contains the struct definition. |
qf57769 All Platforms |
Failure starting OLT with certain locales | An error may occur when starting Object Level Trace on machines where the
default locale is not en_US, ja_JP or Ja_JP. The exception displays this message on the
screen: Exception in thread "main" java.util.MissingResourceException: can't
find resource for com.ibm.ivb.olt.constants.OLT_sv_SE (where sv_SE = default input locale) |
59348 Windows NT AIX |
Exceptions occurred when importing a MO XML | Exceptions that occurred when importing a MO XML have been fixed. | 59508 All Platforms |
DO inheritance support not imported correctly from XML | In the Release 2.0 code, there was a problem when XML representing DO implementation inheritance was imported into Object Builder. Specifically, the newly imported DO implementation incorrectly did not inherit from the DO interface. The XML is now imported correctly. | 59501 All Platforms |
Exceptions when importing XML | Exceptions had been thrown when importing XML files under curtain circumstances such as an obimport exception reimporting with -X option. | 58314, 58372 All Platforms |
Object Builder incorrectly names attribute | Object Builder created a private data member for every attribute, using
the naming convention of upper casing the first letter of the attribute name, and then
prefixing it with a lower case i. For Java BOs, attributes of a non-IDL type that were
protected or private were generated with an incorrect type string, and without the
"i" prefix. The type of the attribute is now genererated correctly, and will compile. The name of the attribute now follows the standard Object Builder naming conventions (iAttributeName). |
59529 All Platforms |
RUNTIME |
||
SSL performance | SSL performance can be degraded significantly with certain Java BO applications. The new somorori.dll contains a fix which increases performance significantly. | qf56831 Windows NT |
Deadlock with JavaBOs | This fixes a dead-lock situation in the Component Broker server that could occur when:
Symptoms were that the server process permanently stopped responding to client requests. To verify that this is your problem, you can set the enable verbose garbage collection option on the Java Virtual Machine page of the System Management settings for your server image to yes and monitor the console output of the server process. You should see a message from the Java Virtual Machine shortly (within 0-3 minutes) before the server stop responding. The message will start with "managing allocation failure" andinclude the text "synchronously running <nn> finalizers" where <nn> is some number. You may also see what appears to be a server hang due to long Java garbage collection runs. In this case, the server stops responding for up to several minutes, and then runs normally. With the default settings for Java minimum heap size, In this case clients with the default timeout setting (30 seconds) may report NO_RESPONSE. There are two ways to address this problem.
Setting this field will cause garbage collection to occur approximately 12 times more frequently than the default settings (in minutes instead of hours) and reduce the length of the garbage collection pause proportionately. For more information about making this change to your System Management settings, see the topic Java Virtual Machine Tuning in the Late Breaking News for Component Broker 2.0. |
57101 All Platforms |
Reconfigure System Manager as System Management Agent choice eliminated | In Component Broker 2.0, there appeared to be an option to reconfigure a System Manager as a System Management Agent, although doing so would cause the Common Data Store of the System Manager machine to be wiped out. The fix prevents a user from trying to do that by eliminating the choice to reconfigure as a System Management Agent. The Component Broker Configuration Tool will not allow the user to enter a remote host name as the System Manager if System Manager is installed on the system. | 58140 Windows NT |
Large memory leaks in collisions test | This fixes a storage leak from the concurrency component, that occurred when concurrency lock requests were waiting for locks in a multi-client scenario. | 57187 Windows NT AIX |
Multi-client collisions accessing a single server | This fixes an error in the obtaining of a concurrency lock. There existed a small window of opportunity where the requesting thread blocked forever, even though it was given the lock, causing the client programs to hang. | 57237 Windows NT AIX |
Segmentation violation in somdc02i.dll | If a Component Broker server was configured to connect to the DB2/390 backend database there were failures in query. There were also failures in other object operations if the DataObject was implemented to use the cache service. The activity.log showed a segmentation violation in somdc02i.dll. | qf57892 All Platforms |
Server crash when attribute of type ByteString | A problem has been solved in which the server would crash when an object had attribute of type ByteString and the DataObject was implemented using the cache service. | 57005 All Platforms |
string_to_object needs to dup local only object | This fixes a problem where local only objects, that is, CORBA Objects
that are not proxies, (found in servers) can have their reference count be wrong. The
consequence could be that the object was deleted even though it was still in use,
resulting in a trap or coredump. The fix makes the implementation of string_to_object() properly transfer ownership of the object returned to the caller. It does this by incrementing the object's reference count. This could happen if a local only object is put in an Any, or if string_to_object was called directly, in addition to other ways. Since the fix properly increases the reference count, where previously it wasn't being incremented, applications may have been written that didn't expect to take ownership and weren't releasing the object properly. Therefore the fix may expose memory leaks in the application. Any applications currently doing a string_to_object and getting a local object must not have been releasing it properly, otherwise they'd be seeing traps or coredumps. |
59216 All Platforms |
Marshalling exceptions and GPFs inside a getter |
A problem existed whereby the home returned a Managed Object rather than a local Proxy in the case of a query on an object which already existed in the container. Under certain conditions when using Java BOs, this would result in a segmentation violation when garbage collection occurred. This fix removes the segmentation violation problem and allows the application to continue to a successful conclusion. | 58353 Windows NT AIX |
Query result returned from global cache instead of database values | When caching data optimistically with refreshInterval > 0, query does a reactivateFromData(). The cache entry is not in transaction cache but does exist in global cache. The query tuple (which has newer data) should take precedence over an entry in the global cache. However the logic in the code has the global cache entry taking precedence over the query tuple. With the PTF, the design of reactivateFromData is changed so that it does not do a global cache lookaside, only a transaction cache lookaside. | qf56116 All Platforms |
Using "sessionReset" for PAA sessions over ECI |
A problem with sessionReset for PAA sessions using ECI connections has been fixed in the PTF. Results with sessionReset should now be as expected. (This limitation was documented in the Late Breaking News.) | 55611 F54188 All Platforms |
Running CICS/APPC applications |
The level of C++ Runtime for AIX used as a prerequisite in the PTF is level 3.1.4.7. This eliminates a problem requiring that level of xlC_rte fileset to be separately downloaded. | 55870 AIX |
PAA to IMS via APPC rollsback the transaction with abend on IMS side |
This fixes IMS APPC transaction rollbacks that can occur due to network delays on APPC status flows when committing a transaction. The network delay caused the APPC state to remain in receive state, which the lastAgentCommit routine treated as incorrect, and rolledback the transaction. | qf57369 Windows NT AIX |
Seg-violation on Load Application | This fixes a problem caused by DDL files that contained strings in excess of 1K characters in length. When trying to load such a DDL file bgmain would crash. This would happen on all platforms. | 58199 All Platforms |
Quicktest method returns null pointer |
QuickTest method parameters of type string returned null pointers. | 57438 All Platforms |
QuickTest scripting fails on playback | QuickTest scripting with selection from Table of rows did not consistently select the row. The function would work when manually recording the script but failed during playback. | 57347 All Platforms |
Quicktest generates bad code for Sequences of Structures | QuickTest failed to compile code for Sequences of Structures. A bad method invocation was generated which resulted in a a NullPointerException. |
qf57521 All Platforms |
QuickTest scripts aren't saved in correct location |
When QuickTest is run, you can specify where to save the script file that is generated. This fix saves the script into the directory that was entered, rather than saving the script into the directory from which QuickTest was generated and run. If no directory is entered, QuickTest saves the script into the directory from which it was run. | 57329 Windows NT AIX |
QuickTest does not copy IDL files correctly when the DL name ends with "BO" |
When generating QuickTest files, the customer indicates where to copy IDL files. With this fix, Quick Test now copies IDL files with BO in the name to the correct location. | 57858 Windows NT AIX |
QuickTest script file that has multiple objects using the same key or copy object | This fix allows a script file that uses one key or copy object by multiple objects to run correctly. | 57949 Windows NT AIX |
QuickTest script compilation error on a query for short integer |
This fix allows script files generated by QuickTest samples to run query on short integer values successfully. | 57984 Windows NT AIX |
QuickTest transactions with OS/390 require defer begin value |
A new option allows QuickTest clients connecting to a OS/390 server to set deferred begin option to never. | 58143 Windows NT AIX |
QuickTest corrupts JCB jar file(s) when used with JDK 1.1.7B | When using QuickTest to generate the build script, the JCB jar file(s) got corrupted during the copy operation. The jar files copy correctly now. | 57768 Windows NT AIX |
Quicktest missing class file | Errors occurred when installing and compiling Quicktest due to missing class files. These are now included in the Component Broker 2.0 PTF. | 58237 Windows NT AIX |
PAA/CICS Sample failure | The PAA/CICS sample may fail when running with a server that has just been activated. This is due to a garbage collection problem in the JDK. This has been fixed in the AIX Developers' Toolkit for Java (JDK) 1.1.6 Fixpack 4 (fixpack level IX86441).
To work around this problem when running with any JDK 1.1.6 level earlier than Fixpack 4, restart the server after the sample fails and it will then run successfully. |
59756 AIX |
Component Broker 2.0 Install Limitation with JDK 1.1.7b
This is a correction to the Late Breaking News item "Supported Levels of the JDK." The Late Breaking News states:
Component Broker is supported on and has been tested with the Java Development Kit (JDK) 1.1.6. While Component Broker will install with JDK 1.1.7 and above, these levels of the JDK are not currently supported....
The new limitation is that if JDK 1.1.7b (the IBM version) is installed on your system, Component Broker 2.0 will not install, due to changes in the registry structure for JDK 1.1.7b.
The workaround is to install JDK 1.1.6 before installing Component Broker 2.0. After Component Broker 2.0 has been installed, JDK 1.1.7b can be reinstalled.
Instructions and Restrictions on Using Windows NT 4.0 Service Pack 4 with this PTF
The only known restriction to date is that Communication Server version 5.0 is not compatible with Windows NT 4.0 Service Pack 4. Do not apply Windows NT 4.0 Service Pack 4 on systems where you plan to run PAA using Communication Server version 5.0.
Installing the Windows NT 4.0 Service Pack 4 is an optional procedure. If you chose to do it, follow the procedures that are provided by Microsoft to apply Windows NT 4.0 Service Pack 4 on machines that do not have Component Broker installed. It is highly recommended to select the option for creating a back up directory during the install process.
For machines that have Component Broker already installed and running, stop the Component Broker servers first before applying Windows NT 4.0 Service Pack 4. Here are the steps:
Installation Instructions for Windows NT
Important Note: The following instructions supersede the sections in Chapter 8 and Chapter 9 of the Component Broker Planning, Performance, and Installation Guide titled "Apply the Component Broker PTF."
How to prepare and apply the CB 2.0 PTF on Windows NT.
Quiesce all servers:
Download the Component Broker PTF for Windows NT:
Install the Component Broker PTF on Windows NT:
Important Note: If you plan to install the new Global Security Kit package, do it now. The directions are given above in the Prerequisite Information section Conflicts with multiple copies of setloc1.dll .
After the Component Broker 2.0 PTF is applied.
After the PTF is applied, to restart servers follow the steps below:
Installation Instructions for AIX
Important Note: The following instructions supersede the sections in Chapter 8 and Chapter 9 of the Component Broker Planning, Performance, and Installation Guide titled "Apply the Component Broker PTF."
How to prepare for applying the Component Broker 2.0 PTF on AIX.
Quiesce all servers:
Stop the System Management Service (bgmain):
How to apply the Component Broker 2.0 PTF on AIX.
Download the Component Broker PTF for AIX:
Apply the Component Broker PTF on AIX:
After the Component Broker 2.0 PTF is applied.
Restart the System Management service:
Re-start the servers: