WOF Title: WOF 3.5.1 Patch Overview Entry Number: 2601 Creation Date: February 19, 1998 Procedure Valid for Release: WOF 3.5.1 Keywords: WOF, patch, Sybase, ODBC, EOF, stored procedure Overview This patch covers bugs that were introduced in both the ODBC EOF adaptor and the Sybase EOF adaptor that shipped with WebObjects 3.5.1. These bugs affect all platforms on which WebObjects 3.5.1 shipped. Caution: These patches should only be installed on systems running WOF 3.5.1. Sybase Adaptor Patch There are two bugs that the Sybase Adaptor patch fixes. They are also listed in the EOF 2.2 release notes, NeXTanswer #2559. Reference: 2203081 Problem: All parameters are required when executing a Sybase stored procedure. This bug is only in WOF 3.5.1. Description: If you do not supply all values when executing a Sybase stored procedure, the execution will fail with an exception like: Feb 19 11:23:53 WOF_3_5_Sybase_Patch[1027] Caught exception:EOGeneralAdaptorException Sybase: Server:unknown Procedure:NEXT_MOVIE_PRIMARY_KEY Line:0 Procedure NEXT_MOVIE_PRIMARY_KEY expects parameter @A_MOVIE_ID, which was not supplied. This happens even though A_MOVIE_ID is not required for the stored procedure. Workarounds: 1) Install this patch. 2) You can create a delegate on the Sybase adaptor channel that implements the following method: - (NSDictionary *)adaptorChannel:(id)channel shouldExecuteStoredProcedure: (EOStoredProcedure *)procedure withValues:(NSDictionary *)values { NSArray *attributes; NSMutableDictionary *newValues; int i; if ( values ) { newValues = [values mutableCopy]; } else { newValues = [NSMutableDictionary dictionary]; } attributes = [procedure arguments]; for ( i = [attributes count] - 1 ; i >=0 ; i-- ) { if ( ![newValues objectForKey:[[attributes objectAtIndex:i] name]] ) { [newValues setObject:[EONull null] forKey:[[attributes objectAtIndex:i] name]]; } } return newValues; } Reference: 2208497 Problem: Cannot fetch float-NSDecimalNumber along with text columns. This bug is in all versions of the Sybase adaptor up to and including WOF 3.5.1. Description: If you have an attribute with external type float, and internal type NSDecimalNumber, it will not fetch properly if a text column is also in the fetch. The attribute will be blank. Workarounds: 1) Install this patch. 2) Change the internal type of the attribute to float. Installing the Sybase Adaptor Patch Windows NT The Sybase patch for Windows NT is 2603_WOF_3.5.1_SybaseAdaptor_Patch.NT.gtar.gz. To install it, open up a shell (from the WebObjects start menu) and issue the following commands as root, replacing the patch file name with the full path of the patch file you downloaded: cd $NEXT_ROOT gunzip -c 2603_WOF_3.5.1_SybaseAdaptor_Patch.NT.gtar.gz | gnutar xvf - OPENSTEP/Mach The Sybase patch for mach is 2604_WOF_3.5.1_SybaseAdaptor_Patch.mach.gtar.gz. To install it, open up a Terminal and issue the following commands as root, replacing the patch file name with the full path of the patch file you downloaded: cd / gnutar xvzf 2604_WOF_3.5.1_SybaseAdaptor_Patch.mach.gtar.gz Solaris The Sybase patch for Solaris is 2610_WOF_3.5.1_SybaseAdaptor_Patch.Solaris.gtar.gz. To install it, open up a Terminal and issue the following commands as root, replacing the patch file name with the full path of the patch file you downloaded: cd $NEXT_ROOT zcat 2610_WOF_3.5.1_SybaseAdaptor_Patch.Solaris.gtar.gz | gnutar xvf - HP-UX The Sybase patch for HP-UX is 2609_WOF_3.5.1_SybaseAdaptor_Patch.HP-UX.gtar.gz. To install it, open up a Terminal and issue the following commands as root, replacing the patch file name with the full path of the patch file you downloaded: cd $NEXT_ROOT zcat 2609_WOF_3.5.1_SybaseAdaptor_Patch.HP-UX.gtar.gz | gnutar xvf - ODBC Adaptor Patch There are two bugs that the ODBC Adaptor patch fix. They are also listed in the EOF 2.2 release notes. (2559_2.2_EOF.rtf) Reference: 2208503 Problem: ODBC adaptor cannot execute stored procedures with output parameters. Description: The EOF 2.2 (WOF 3.5) version of ODBCEOAdaptor.framework introduced a bug which causes an error when using a stored procedure with an output parameter. (Input parameters to stored procedures work fine.) The WOF 3.5.1 patch fixes the output parameter bug. Workaround: Install this patch. Reference: 2209574 Problem: ODBC adaptor leaks connections with MS Access Description: The EOF 2.2 (WOF 3.5) and earlier versions of ODBCEOAdaptor.framework did not release ODBC connections when using MS Access (or any JET based data source) in order to work around a bug in the Microsoft "odbcjt32.dll" which caused a crash when SQLFreeConnect was called. The SQLFreeConnect bug was discovered in 3.40.2829 version of the DLL. Newer version of the DLL (beyond 3.50) no longer exhibit the crashing problem. The ODBCEOAdaptor.framework in this WOF 3.5.1 patch release now checks the version of the DLL more carefully and allows SQLFreeConnect to be called unless the DLL version is 3.4X, and thereby no longer leaks the ODBC Connection when running with fixed versions of "odbcjt32.dll". Workaround: Install this patch. Installing the ODBC Adaptor Patch Windows NT The ODBC adaptor patch is only available for Windows NT. It is 2602_WOF_3.5.1_ODBCAdaptor_Patch.NT.gtar.gz. To install it, open up a shell (from the WebObjects start menu) and issue the following commands as root: (replacing the patch file name with the full path of the patch file you downloaded) cd $NEXT_ROOT gunzip -c WOF_3.5.1_ODBCAdaptor_Patch.NT.gtar.gz | gnutar xvf - See Also: No additional notes as of <>