home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 29 Fixes_o
/
29-Fixes_o.zip
/
wr6035.inf
(
.txt
)
< prev
next >
Wrap
OS/2 Help File
|
1993-11-30
|
43KB
|
1,121 lines
ΓòÉΓòÉΓòÉ 1. Introduction ΓòÉΓòÉΓòÉ
IBM OS/2 Extended Services Database Manager
ServicePak WR06035
IBM PTF WR06035
This ServicePak applies to:
IBM OS/2 Extended Services Version 1.0 - Database Services
It is recommended to
Have appropriate Bootable Standalone Service
Diskettes available.
ΓòÉΓòÉΓòÉ 1.1. Affected SYSLEVEL Files ΓòÉΓòÉΓòÉ
SYSLEVEL.SQL IBM Extended Services Database Services with Server
SYSLEVEL.SQC IBM Extended Services Database Services without Server
SYSLEVEL.QRW IBM Extended Services Database Services Query Manager
SYSLEVEL.WDC IBM Extended Services Database Services Windows Database
Client
SYSLEVEL.DBA IBM Extended Services Database Services Database Tools
SYSLEVEL.PDR IBM Extended Services Database Services DOS Database
Client
ΓòÉΓòÉΓòÉ 1.2. Trademarks ΓòÉΓòÉΓòÉ
The following are trademarks of IBM Corporation:
o IBM
o OS/2
o Operating System/2
o Presentation Manager
ΓòÉΓòÉΓòÉ 2. Installation ΓòÉΓòÉΓòÉ
Installing the ServicePak is essentially a three phase process:
Phase 1 - Quiesce the Target System
Render the system serviceable by insuring that there will be no
Locked Files during the install phase.
Phase 2 - Install the ServicePak
Select one of the following methods to replace system files with
those provided on this ServicePak:
Service.exe: A Presentation Manager Installation Aid that checks for
Locked Files and allows user selectivity.
FService.exe: A standalone tool that can be run from a minimal (eg.
diskette based) OS/2 system.
Redirected (CID) Install: A technique that allows distribution of
service across a Local Area Network.
Phase 3 - Return the Serviced System to Normal Operation
Perform a normal system boot.
ΓòÉΓòÉΓòÉ 2.1. Installation using SERVICE.EXE ΓòÉΓòÉΓòÉ
This method will apply fixes to selected subsystems, partitions, and
directories. SERVICE.EXE will check for Locked Files before continuing with
the application of service. If SERVICE.EXE cannot proceed, it will present the
following options: "Retry", "Reboot", or "Cancel".
1. Boot the system from fixed-disk.
2. Insert ServicePak diskette #1 into the A: drive.
3. Establish A: as the Current Directory.
4. From an OS/2 session, type A:SERVICE and press Enter.
5. Make selections from the panel. If the Locked Files panel appears, choose
from the options below.
Retry - Quiesce the subsystem being serviced and retry the application of
service.
a) Move to another OS/2 window (OS/2 command prompt).
b) Stop Database Manager.
c) Return to the Service window and Choose "Retry".
Reboot - A response file containing the current selections will be written
to the boot drive's root directory. FSERVICE.EXE can then be employed,
after reboot, to complete the service process.
a) Choose "Reboot".
b) Perform the system Shutdown procedure.
c) Boot from the Bootable Standalone Service Diskettes.
d) Establish A:\ as the Current Directory.
e) Replace the Boot Diskette with ServicePak diskette #1.
f) At the A: prompt type FSERVICE and press Enter.
g) At the panel titled "Updating Default Directories" press Enter (Option
1).
h) Follow the prompts provided by the Installation Aid.
Cancel - Abort the service process without updating any files.
a) This safely terminates the service procedure.
b) Skip the next (Reboot) step.
6. Reboot the system normally.
ΓòÉΓòÉΓòÉ 2.2. Installation using FSERVICE.EXE ΓòÉΓòÉΓòÉ
This method applies fixes using a response file. The default response file will
apply fixes to a default set of partitions and directories. The defaults
established by product development are generally dependent on the SYSLEVEL.xxx
file where each product has a unique "xxx".
This is the simplest and safest method to install ServicePaks to systems that
do not have multiple versions of the product being serviced. It does require
booting from diskette to insure that there are no Locked Files during the
install phase.
1. Boot from the Bootable Standalone Service Diskettes
2. Establish A: as the Current Directory.
3. Replace the Boot Diskette with ServicePak diskette #1.
4. At the A: prompt type "FSERVICE" and press Enter.
5. At the panel titled "Updating Default Directories" press Enter (Option 1)
6. Follow the prompts provided by the Installation Aid.
7. Reboot the system normally.
ΓòÉΓòÉΓòÉ 2.3. Redirected Installation (CID) Method ΓòÉΓòÉΓòÉ
This method is useful for those who are using the CID (Configuration,
Installation, and Distribution) Services as provided by IBM NTS/2. Installation
using SERVICE.EXE or Installation using FSERVICE.EXE are recommended for
Servers exploiting the 386 HPFS advanced functions: Fault Tolerance and/or
access Control Lists.
While setting up a CID server is beyond the scope of this document, a sample
CID Utility REXX Command file (CID_6035.CMD) is included that may prove useful
in setting up a CID server for this ServicePak.
The sample CID_6035.CMD assumes the following:
o CID_6035.CMD resides in the ..\CLIENT subdirectory.
o The ServicePak files are placed on the code server using "XCOPY A:\*.* /S"
(or equivalent) at 'x:\csd\cid_6035' where 'x:' is the drive seen by the
client.
o The following directory structure contains the ServicePak contents.
csd\cid_6035\ * Root directory of ServicePak
csd\cid_6035\FIX * No files
csd\cid_6035\FIX\SQL * Database Manager with Server fixes
csd\cid_6035\FIX\SQC * Database Manager without Server fixes
csd\cid_6035\FIX\QRW * Query Manager fixes
csd\cid_6035\FIX\WDC * Windows Database Client fixes
csd\cid_6035\FIX\DBA * Database Tools fixes
csd\cid_6035\FIX\PDR * DOS Database Client fixes
o A log directory exists at 'x:\log\csd\cid_6035' for the log files.
ΓòÉΓòÉΓòÉ 2.4. Bootable Standalone Service Diskettes ΓòÉΓòÉΓòÉ
Sometimes it becomes necessary to boot from diskette in order to perform
certain operations on fixed-disk, like installing this ServicePak or running
CHKDSK /f.
Hint:It may be useful to copy CHKDSK.COM, EDLIN.COM, and other small utilities
to your Standalone Service Diskette (SA#2), (This is providing you have
sufficient space available).
All necessary files must be contained on diskette. Files from the fixed-disk
should not be referenced in A:\CONFIG.SYS or A:\STARTUP.CMD. Otherwise Locked
Files can still exist on the fixed-disk.
Should the need arise to boot from diskette for any reason, you may:
o Use the Install diskette from OS/2 1.3. Escape to A:
o Use the Install diskette and Diskette #1 of OS/2 2.x. Escape to A:
o Create custom Bootable Standalone Service Diskettes from your licensed
materials. The makeup of these is dependent on the system to be serviced.
Select the instructions for:
Extended Services 1.0 on OS/2 1.3.
Extended Services 1.0 on OS/2 2.x with IBM LAN Server Entry.
Extended Services 1.0 with IBM LAN Server Advanced.
CAUTION:
LAN Servers that utilize Advanced features like Access Control Lists or Fault
Tolerance, must use custom Bootable Standalone Service Diskettes. Regular HPFS
boot diskettes, such as the OS/2 Installation diskettes, CAN NOT mirror changes
to Fault Tolerance partitions or access files/directories which are controlled
by access control profiles.
ΓòÉΓòÉΓòÉ 2.4.1. Making OS/2 1.3 Bootable Diskettes. ΓòÉΓòÉΓòÉ
1. Make a copy of the OS/2 1.3 Installation Diskette. Call it SA#1.
2. Modify CONFIG.SYS on SA#1 as follows:
buffers=50
memman=noswap
protshell=a:\cmd.exe
protectonly=yes
libpath=a:\;
ifs=hpfs.ifs /c:64
set path=a:\;
set dpath=a:\;
ΓòÉΓòÉΓòÉ 2.4.2. Making OS/2 2.x Bootable Diskettes ΓòÉΓòÉΓòÉ
1. Make a copy of the OS/2 2.x Installation Diskette & Diskette #1. Call them
SA#1 and SA#2 respectively.
2. Delete SYSINST2.EXE from Diskette SA#2.
3. Delete BUNDLE from Diskette SA#2 (this will be on OS/2 2.1 only)
4. Modify CONFIG.SYS on SA#2 as follows:
buffers=50
memman=noswap
protshell=a:\cmd.exe
protectonly=yes
libpath=a:\;
ifs=hpfs.ifs /c:64
set path=a:\;
set dpath=a:\;
5. Copy UHPFS.DLL from OS/2 Diskette #2 or C:\OS2\DLL to SA#2.
ΓòÉΓòÉΓòÉ 2.4.3. Making Advanced Server Bootable Diskettes ΓòÉΓòÉΓòÉ
MAKEDISK is an Advanced Server utility designed to make the necessary Bootable
Standalone Service Diskettes used in periodic maintenance of 386 HPFS systems.
1. Make a copy of the OS/2 2.x Installation Diskette & Diskette #1. Call them
SA#1 and SA#2 respectively.
2. Delete SYSINST2.EXE from Diskette SA#2.
3. Delete BUNDLE from Diskette SA#2 (this will be on OS/2 2.1 only)
4. From an OS/2 prompt run MAKEDISK.
Note: Syntax is MAKEDISK /BOOTDRIVE:d where d is the drive on which OS/2
2.x is installed.
5. Insert Diskette SA#2 into a diskette drive when prompted.
Note: For additional Information see the Network Administrators
Reference: Creating a 386 HPFS Boot Diskette, or LAN Server Utilities.
6. If using Fault Tolerance, add the Fault Tolerance files to the Bootable
Diskette.
7. Verify that the 386 HPFS Bootable Standalone Service Diskette works
properly.
o Shutdown the system.
o Insert the Bootable Standalone Service Diskette into the A: drive.
o Reboot the system (Ctrl+Alt+Del, or other method).
o Determine if Local Security is working.
o Determine if Fault Tolerance is working.
ΓòÉΓòÉΓòÉ 2.4.4. Adding Fault Tolerance to 386 HPFS Standalone Boot Diskette ΓòÉΓòÉΓòÉ
386 HPFS Standalone Boot diskettes require additional customizing in order to
properly update files on partitions which are mirrored.
The following steps may have to be done for each LAN Server with Fault
Tolerance since the configuration information transferred in step 3 can be
unique for each such system.
1. Copy the following four Fault Tolerance files from the first diskette of
the ServicePak to your Bootable Standalone Service Diskette.
1) DISKFT.SYS 2) FTD.MSG 3) FTATTRIB.EXE 4) FTCOPY.CMD
2. Add the following line to the CONFIG.SYS on the Bootable Standalone Service
Diskette SA#2.
DEVICE=DISKFT.SYS
3. At an OS/2 command prompt, make the current drive A:, and have the 386 HPFS
Bootable Standalone Service Diskette in drive A. Type "FTCOPY" to copy the
customized Fault Tolerance configuration information to the 386 HPFS
Bootable Standalone Service Diskette.
Warning: Test your 386 HPFS Bootable Standalone Service Diskette before you
make any alterations to your system. This Diskette is the Master Key should
your system ever fail to boot from its hard drive.
ΓòÉΓòÉΓòÉ <hidden> Locked Files ΓòÉΓòÉΓòÉ
Sometimes it is essential that programs own (become the master of) system
resources such as Memory Blocks, Communication Ports, and Files. When a
program stakes claim to a file, that file is said to be Locked; no other
program is allowed to alter (replace or write to) it until the owning program
explicitly removes the lock.
.DLL Files can become Locked by residing in a directory that is included in the
LIBPATH string of CONFIG.SYS. For example, NETAPI.DLL can be locked when
\MUGLIB\DLL exists in the LIBPATH of CONFIG.SYS.
ΓòÉΓòÉΓòÉ <hidden> Getting the A: Prompt from OS/2 1.3 Install Diskettes ΓòÉΓòÉΓòÉ
To obtain the familiar A: prompt when using the OS/2 1.3 Product installation
diskettes as Bootable Standalone Service Diskettes:
o Boot the system with Install Diskette in drive A.
o At the IBM Logo Screen - Press Esc to Exit
The A: prompt should appear. OS/2 Programs, including FSERVICE.EXE, can be run
from here.
ΓòÉΓòÉΓòÉ <hidden> Getting the A: Prompt from OS/2 2.x Install Diskettes ΓòÉΓòÉΓòÉ
To obtain the familiar A: prompt when using the OS/2 2.x Product installation
diskettes as Bootable Standalone Service Diskettes:
o Boot the system with Install Diskette in drive A.
o At the IBM Logo Screen - Insert Diskette #1, press Enter
o At the Welcome Screen - Press Esc to Exit
The A: prompt should appear. OS/2 Programs, including FSERVICE.EXE, can be run
from here.
ΓòÉΓòÉΓòÉ <hidden> Creating a 386 HPFS Boot Diskette ΓòÉΓòÉΓòÉ
Refer to the appropriate Appendix in:
Operating System/2 Local Area Network Server
Network Administrator Reference
Volume1: Planning and Installation
ΓòÉΓòÉΓòÉ <hidden> LAN Server Utilities ΓòÉΓòÉΓòÉ
Refer to Appendix C,
Miscellaneous Utilities MAKEDISK in:
Operating System/2 Local Area Network Server
Network Administrator Reference
Volume3: Network Administrator Tasks
Version 2.0 and Version 3.0
ΓòÉΓòÉΓòÉ 3. What's Changed ΓòÉΓòÉΓòÉ
The following list includes fixes (APARS) and changes for Extended Services 1.0
Database Manager component. Including Database Manager, Query Manager, PC DOS
Requester, and Database Administration Tools fixes.
ΓòÉΓòÉΓòÉ 3.1. Extended Services 1.0 Database Manager ΓòÉΓòÉΓòÉ
This section contains the APARS fixed for the Database Manager component of
Extended Services 1.0 Database Manager in WR06035 ServicePak.
ΓòÉΓòÉΓòÉ 3.1.1. APAR Descriptions ΓòÉΓòÉΓòÉ
SQL30020N - 1245 for large data if SQLVAR is 84 or greater (APAR JR05176)
SQL30020N (reason code 1245) was incorrectly returned when the value of SQLVAR
exceeded 83.
Trap D during Precompilation (APAR JR05250)
This APAR fixes a trap D which happened infrequently during precompilation of
an SQC file.
REXX update iterations, Out of Resource (930) Error (APAR JR05538)
The memory management scheme for the REXX SQL interface has been changed.
Previously, the REXX SQL interface did not free up blocks of memory after each
call to either the SQLEXEC or SQLAR interfaces. This caused out of memory
errors when using the REXX SQL interface to create large tables.
Locking Error in Index Manager causes deadlock (APAR JR05634)
Frequent deadlocks occurred in updates to rows using index scan.
SYTOS USEREXIT example holding too many logs (APAR JR05734)
The Sytos userexit sample file (SQLUEXIT.EX1) was holding more log files than
specified by the LOGS_TO_HOLD parameter.
Database application process cannot exit (APAR JR05740)
An application which calls the import (SQLUIMP) or export (SQLUEXP) APIs would
occasionally be unable to exit. The exit routine for import/export has been
modified to prevent this.
Error when creating a view with long definition (APAR JR05783)
This APAR fixes an error (SQLCODE = -803) which occurred when creating a view
whose statement text exceeded 3900 characters.
DosFindFirst in SQLOGDIR (APAR JR05793)
On a START USING DATABASE, when searching for \SQL0000x\SQLOGDIR, the API
erroneously assumed the database directory did not exist if the archive bit of
the attribute byte for the directory was set.
SYS3175 when SELECT against date column that is primary key (APAR JR05853)
A system error occurred when a DATE/TIME column was involved in a SELECT that
used an index where the query predicate was BETWEEN. Internally, start and stop
values are used when searching an index to process a BETWEEN predicate. Once
the start value is found, rows are retrieved until the stop value is
encountered. The fix to the problem was to handle DATE/TIME columns in the
start/stop processing similarly to the way numeric data types are currently
handled.
Binder fails to free the application's heap (APAR JR05883)
This APAR prevents the binder from running out of heap space when a REXX
application tries to bind a large number of bind files.
1042 on recovery. (APAR JR05951)
In the scenario - Drop index, Drop Table, Commit, Crash - recovery failed to
redo the drop index and drop table since the drops were committed and the index
and table were gone before the system crashed. The code has been changed to
handle a redo on a non-existent object.
Page Logical Sequence Number Updates (APAR JR05955)
In certain crash/recovery situations, it was possible that a page of data could
be lost. The problem has been corrected by ensuring that the page Logical
Sequence Number is correctly updated.
STARTDBM returns SQL1042 with MicroSoft LAN Manager installed (APAR JR05970)
STARTDBM used to return SQL1042 if the LAN product used was the MicroSoft LAN
manager. STARTDBM now works correctly with the MicroSoft LAN Manager.
Multiple requester 'Start Using' Time Out with SQL1093N (APAR JR05986)
If multiple processes performed a START USING DATABASE to the same database
concurrently, some of the processes would periodically receive SQL1093N (User
not logged on). This was caused by processes timing out while waiting to
access UPM to logon to the Database server. The Database Manager logon
requests are now serialized through UPM at the client node.
Hyphen considered invalid in a REXX character string (APAR JR06007)
Hyphens were not allowed in comments by the REXX SQL interface. The REXX SQL
grammar has been changed to allow this.
Static SQL statements with INTERSECT and EXCEPT (APAR JR06011)
Statements involving INTERSECT and EXCEPT sometimes caused a trap if executed
multiple times. The problem has been corrected.
Index Manager Trap D during a restart of a database (APAR JR06128)
This APAR fixes a redo node split error that caused either a trap D during a
restart or an infinite loop after a restart.
Easel Application Fails with SQL0804N (APAR JR06156)
An incorrect check of the SQLDA during a stored procedure call was being made.
The output SQLDA data buffer did not get initialized if data was not returned
by the stored procedure call. However, a check was still being made to validate
the length of the returned data. The check is now bypassed if no data is
returned.
Performance degradation of export command from EE1.3 to ES1.0 (APAR JR06193)
The import/export utilities ran significantly slower in ES1.0 than in EE1.3.
This performance problem is now fixed.
SQLPREP putting * in column 6 instead of column 7 in Cobol (APAR JR06209)
In Cobol, a continued line of an EXEC SQL statement with a sequence number
would be written to the output file with the comment marker to the left of
column 7. The column marker is now placed in column 7.
SQLQMF generates syntactically wrong delimited file from DB2 (APAR JR06217)
SQLQMF in DB2/MVS generates characters in an exported file that were not
recognizable by Database Manager during import. The problem has now been fixed.
SQLSTATE.H is missing in Extended Services (APAR JR06222)
SQLSTATE.H is now available to customers.
Network Manager Messages (APAR JR06258)
This APAR fixes a problem wherein garbage data was being added to the end of
network manager messages.
Index Corruption (APAR JR06268)
It was possible that an index with many duplicate keys could become corrupted,
possibly missing keys and providing incorrect results. This problem has been
corrected.
Use pending delete flag for node deletion (APAR JR06294)
Pending delete flags are now set for normal page deletion when caused by a page
becoming empty.
Binding on AS/400 (APAR JR06390)
If a bind file was bound to the AS/400 and the GRANT option was specified, an
error code of -113 would be returned if the package name was less than 8
characters in length. Package names of less than eight characters are now
permitted.
SQLCA gets posted to wrong stack in memory (APAR JR06410)
A semaphore was being released too early. In some unusual circumstances with a
multiple-thread process using imbedded SQL, a trap could occur. This situation
has been corrected.
DBCS Binding (APAR JR06412)
If an Extended Services 1.0 client was binding a bind file to a DBCS version
DB2/MVS server, an sqlcode of -104 was incorrectly returned when the GRANT (/G)
option was specified.
GET DATABASE STATUS ON... (APAR JR06421)
Performing a DBM GET DATABASE STATUS ON SAMPLE gave the status on all databases
instead of returning an error message. In addition, using DBM GET DATABASE
STATUS ON gave an error code of SQL7008N. Both commands have been changed to
give the more appropriate error message DBM1006E.
Using "Change Qualifier Lists" On a NetBIOS client (APAR JR06424)
Before this fix, if the "svrioblk" database manager configuration parameter at
the server workstation was greater than the "rqrioblk" parameter at the
requesting workstation, then a receive error could result. This would occur
when the size of the actual data block being sent to the requesting workstation
was greater than the size specified by the "rqrioblk" of the requesting
workstation. The situation is now handled without producing an error.
This fix should be applied to both client and server workstations.
Client Blocking Error (APAR JR06425)
This fix eliminates an SQL0303 error when a client accessed a server with
blocking.
SYS3175 When Dividing by Zero (APAR JR06470)
When a divide by zero occurred in a query, a trap and SYS3175 error message
would result. This has been changed to return the correct error message of
QRW0277N.
Integer Multiplication Error (APAR JR06472)
This fix solves a problem with integer multiplication in which a rounding error
is introduced for some large results. For example, 25*671089 previously
returned 16777224 (it should have been 16777225).
Delimited Identifiers (APARs JR06324, JR06484)
These APARs allow users to include spaces and other special delimiting
characters within character fields in their databases. In addition, they allow
the use of column and table names with spaces, while still performing reorg,
runstats, and order by correctly.
Math Error (APAR JR06490)
This fix corrects an optimization error which resulted in incorrect results for
some math operations on large decimal values. The problem was only encountered
using division, but it is possible it would have affected other operations.
Incorrect Parsing for Host Variables (APAR JR06553)
Host variables in SQL statements are prefixed by the ":" character. The
Database Manager must parse SQL statements to substitute values for any host
variables that may be contained in the statement. It is valid for a ":"to
appear in a string literal with an SQL statement. However, Database Manager
did not previously parse host variables correctly under this scenario.
Open Cursor (APAR JR06596)
Before the application of this APAR, trying to open a cursor which had already
been opened incorrectly resulted in a -502 error.
SQLLOO Trap (APAR JR06658)
Fixes a trap in SQLLOO when RECEIVE ALLOCATE fails.
Secondary Log Files (APAR JR06660)
Occasional traps resulted from allocation of secondary log files.
Zero Length Long Fields (APAR JR06661)
This fix changes how zero length long fields are handled. The long field
manager used to allocate a minimum size long field segment for 0 length long
fields. No I/O was done on behalf of the application which called long field
manager when long field columns were 0 length. However, table reorgs bypassed
the normal long field read routine and read a zero length long field. This led
to an SQLCODE 902, rc=25 if the long field offset of the zero length long
field pointed past the end of the long field file. This fix checks the long
field length while reading a long field file and avoids doing an I/O for 0
length long fields. The only change in the long field engine behaviour is that
no space is wasted for zero length long fields.
Records with Unreleased locks (APAR JR06666)
This APAR dealt with unreleased locks on records when using cursors declared
WITH HOLD FOR UPDATE. If an application did not explicitly CLOSE the cursor,
then locks would remain on the data records even after the application had
finished. This problem has been fixed.
Dropping Index (APAR JR06713)
Dropping an index required an access to the .DAT file to get some index file
information. This fix allows the user to drop the index (via DROP TABLE) if
the .DAT file has been corrupted or does not exist.
Logon with Empty Userid Incorrectly Accepted (APAR JR06727)
If a user was logged on to the server locally, another user logging on from a
remote client who provided an 'empty' userid (by simply hitting <Enter> on the
UPM logon panel) would be allowed access to the server. This remote user would
also inherit all of the privileges of the user logged on locally at the server.
Any user logging on from a remote client who provides an 'empty' userid is now
prompted to log on again.
Log Full (APAR JR06732)
This fix solves a potential log full situation when there are many updates to a
small span of data in a large buffer pool.
Import with Long Table Names (APAR JR06754)
This fix corrects an internal error in the REXX SQL parser. The user will no
longer experience an error condition when they use Database Manager to IMPORT
with the INSERT_UPDATE clause with a table name that is longer than 8
characters.
MAXLOCKS Default Value (APAR JR06773)
This fix corrects a problem where MAXLOCKS may be automatically changed if
MAXAPPLS is lowered. This happened because configuration services enforced a
minimum for MAXLOCKS (MAXLOCKS >= MAXAPPLS/100). The minimum is now only
enforced when changing maxlocks, which was the original intent.
Corrupt Long Field Data (APAR JR06826)
This fix ensures that long field data included in records being sorted will not
be corrupted or altered.
Running in a LAN security shell (APAR JR06867)
Previously, when running Extended Services 1.0 Database Manager in a LAN
security shell, the processes started by Database Manager would take their
authorizations from the shell rather than the parent process. As a result, the
processes would not have privileged status and would soon fail. This has been
changed so that the processes now inherit the authorization of their parents.
This, however, creates a potential security risk. If a remote user calls the
SQLEPROC, any dynamic link library files (.DLL) specified in the server library
path will be granted privileged authorization. These files can then execute
any operations allowed with a privileged status. Hence, caution should be used
in choosing the dynamic link library files in the libpath.
Belgian Sort Sequence (APAR JR06889)
This APAR replaces an incorrect sort sequence for Belgium (country code 32) on
codepage 850. Since this sort sequence is stored within the database, there
should be no change for existing databases, but new databases with country code
32 and code page 850 will pick up the new collating sequence.
Belgian customers who wish to use the new sort sequence should:
1. Export the database to a file
2. Drop the database
3. Install this service pak
4. Create the database
5. Import from the file
6. Generate the indices.
SQLEPROC Returns SQL1113N When Server Procedure Executes Remotely (APAR
JR06908)
A remote database application interface server procedure was returning SQL1113N
(data type in output SQLDA changed) even though the server procedure did not
change the SQLTYPE or SQLLEN of any SQLVAR in the output SQLDA. When making a
database application remote interface call, the user must allocate the output
SQLDA for the maximum number of SQLVARs that may be used. The maximum number
of SQLVARs allocated must be set in the SQLN field of the SQLDA. The user must
also specify, in the SQLD field of the SQLDA, the actual number of SQLVARs that
will be used and their expected data types (SQLTYPE field). When the database
application remote interface server procedure returns its results to the
Database Manager, the Database Manager checks to ensure that each SQLVAR
received has the expected SQLTYPE (data type) field.
This check was being incorrectly done for all of the SQLVARs that were
allocated (the value of SQLN) instead of for the SQLVARs that were actually
used (the value of SQLD).
Message Tokens Missing From SQLCODES -1113, -1114, -1115 (APAR JR06918)
Message tokens are now being properly supplied for SQLCODES -1113, -1114, and
-1115. Previously, the tokens were missing from these messages.
Trap on OS/2 Extended Edition 1.3 Clients (APAR JR06927)
When there was an SQLLOO configuration error, an agent on the server could not
allocate a connection. This fix prevents the agent from trapping when there is
an allocation failure and only affects the server side.
Guest ID support not allowed (APAR JR06975)
The LAN server product supports guest accounts. This means that a user can log
on to the server without having the USERID explicitly defined in UPM. The user
is given the same access as the guest userid. DB2/2 however, does not support
guest accounts.
If a workstation is configured as both a DB2/2 server and a LAN server, guest
accounts will not be supported by the DB2/2. If the user attempts to log on to
Extended Services 1.0 Database Manager DB2/2 using the guest account, a message
will be displayed indicating that the logon failed. The user will be prompted
again for another USERID and password. If the user is already logged on (to
the LAN) as the guest USERID, the user will be prompted to logon using another
USERID.
Incorrect results on Query with Joins (APAR JR06984)
Incorrect results were returned for a query that performed a join on two
correlated references, where the views were based on queries that contained
subqueries with correlated reference
Math Error III (APAR JR07003)
This fix solves a problem with numeric addition in which a rounding error was
introduced for some results.
NetBIOS Trap (APAR JR07023)
The reported problem was a trap after issuing STOPDBM when the total NetBIOS
sessions allocated to Database Manager, for an adaptor, was equal to one (1).
There are two different situations that can lead to "the number of NetBIOS
sessions allocated to DBM = 1".
1. The NetBIOS sub-system does not have enough sessions remaining in its pool
of resources to satisfy the request that Database Manager makes at STARTDBM
time. If there is only one session remaining in the NetBIOS pool, the
session would be allocated to Database Manager, regardless of the number of
sessions that Database Manager had requested, and STARTDBM will be
successful.
2. The environment variable "sqlnetb" is set to 1 for one of the active
adaptors.
DISTINCT, ORDER_BY, GROUP_BY Traps (APAR JRO7052)
Traps occurred in queries with ORDER_BY, GROUP_BY or DISTINCT clauses, when
there was one or more primary keys on one of the joining columns. The trap has
been eliminated.
Referential Integrity Trap (APAR JR07076)
This fix corrects a problem related to the referential integrity checking
during insertion with a SELECT clause. If the primary and foreign keys were
DATE/TIME types, and the data being inserted into the foreign key was a
character string, the character data was not converted to the DATE/TIME type
before the referential integrity constraint was checked. This could result in
a trap or incorrect results.
Backwards Table scan (APAR JR07102)
During a backwards table scan, it was possible that an incorrect number of rows
would be returned when there were gaps (deletions) among the slots of the
table. The problem has been corrected.
Decimal Multiplication (APAR JR07175)
This fix corrects a problem with decimal multiplication. When one of the
operands was of precision 30 or 31, an SQL code -802 was returned even though
the operation was valid.
CTRL-C from clients (APAR JR07188)
This fix allows interrupt requests that were properly sent from the clients to
be interpreted correctly at the server. The result is that the Ctrl-C key acts
in the same way on a remote database as it does for a local database: The SQL
query that is in process is terminated, the transaction is rolled back, and
control returned to the client.
Deadlock During Undo (APAR JR07286)
A deadlock was encountered after deleting the last key on the last index page
during an undo. This could happen anytime a ROLLBACK occurred. This has been
fixed.
MAXLOCKS + MAXAPPLS (APAR JR07310)
If MAXAPPLS was set to greater than 100, then MAXLOCKS was always set to one.
This has been changed so that the user can alter the maxlocks value.
However, in order to avoid excessive numbers of deadlocks, as MAXAPPLs is
increased, MAXLOCKS should be decreased. The recommended setting is maxlocks =
100/(maxappls + 1).
ΓòÉΓòÉΓòÉ 3.1.2. Additional Information ΓòÉΓòÉΓòÉ
Running in a LAN security shell (APAR JR06867)
Previously, when running Extended Services 1.0 Database Manager in a LAN
security shell, the processes started by Database Manager would take their
authorizations from the shell rather than the parent process. As a result, the
processes would not have privileged status and would soon fail. This has been
changed so that the processes now inherit the authorization of their parents.
This, however, creates a potential security risk. If a remote user calls the
SQLEPROC, any dynamic link library files (.DLL) specified in the server library
path will be granted privileged authorization. These files can then execute
any operations allowed with a privileged status. Hence, caution should be used
in choosing the dynamic link library files in the libpath.
REXX SQL Interface
You will no longer get an error message when you use hyphens in comments.
Restoring Databases
The TO drive and FROM drive for a RESTORE are checked to ensure that they are
not the same. If they are the same, then the RESTORE will fail cleanly. If
the 'TO' drive is not specified, then the drive where Database Manager resides
is chosen for a RESTORE to a non-existent database.
SQLQMF (SQLQMFDB in DBCS version)
Customers using SQLQMF without having Communications Manager can still use
SQLQMF by modifying the SQLQMF EXEC to pass a code page instead of an SSID to
SQLUHCOP.
SQLUEXIT.EX4
The prologue in SQLUEXIT.EX4 now explains how to modify the DEL command in the
BACKUP section to work under OS/2 SE 1.3x. Two lines of modified code have
been imbedded and commented out.
DBM REORGCHK
The table name can now be mixed case characters when using the DBM REORGCHK
command. In the previous version, only an all upper case table name was
acceptable.
Index Manager
Index manager now prevents space handling problems in an index file. Any
existing errors will not be corrected without deleting and recreating the index
file.
ΓòÉΓòÉΓòÉ 3.2. Query Manager ΓòÉΓòÉΓòÉ
This section contains the APARS fixed for the Query Manager component of
Extended Services 1.0 Database Manager in WR06035 ServicePak.
ΓòÉΓòÉΓòÉ 3.2.1. APAR Descriptions ΓòÉΓòÉΓòÉ
QRW0541 (3012) is received when exiting a panel (APAR JR05684)
If a "No data met the search condition" message was received during the
execution of a panel, a user clicked on OK, and exited the panel, then the
error QRW0541 was returned. Panel completed successfully; an error message
should not have been displayed.
Garbage on screen when REXX 'TRACE ?R' used with DSQCIX (APAR JR05786)
REXX calls to Query Manager where 'Trace ?R' is used before the call would
cause garbage to be scrolled on the screen when Query Manager returned.
Authorizations on Swiss system list problem (JR05828)
On certain language versions of Query Manager (eg. Swiss) the Authorizations
dialog will treat groupids as userids.
&SUMn problem in final text portion of Query Manager if n > 9 (APAR JR05847)
When using special variables like &SUMn in the 'final text' portion of a form
in Query Manager the value of 'n', which represents the column number, was
restricted to 1-9. If n > 9 was used, Query Manager treated the special
variable as a user-defined variable.
QRW0541C received when accessing Query Manager from command line (APAR JR05984)
An invalid error would occur when Query Manager was started from the command
line. Also, no reason code was returned with the message.
Garbage added when running a menu a second time (APAR JR05994)
When running a menu and redisplaying a variable previously entered, garbage was
added to the end of the data. This only occurred if the length of the data
entered was a multiple of 4.
SYS3175 when running query (update) from menu (APAR JR06052)
Running a query from a menu resulted in a SYS3175 message and a protection
violation. The query will now run correctly.
SYS3175 during table REORG and Query Manager is minimized (APAR JR06054)
An error (SYS3175) would occur if Query Manager was minimized and restored
while a remote table was undergoing a reorg.
Invalid Characters in DEL option. (APAR JR06166)
If a new profile is selected from the Query Manager main menu, and invalid
characters were entered in the import/export options for DEL, the profile would
saved. When an import/export operation was later attempted, an SQL3017N error
(invalid delimiter) is returned. An error message will now be returned when
the invalid characters are entered.
Bad NVMT errors generated while exiting from Query Manager panels (APAR
JR06225)
Query Manager was producing corrupted alerts that could be seen with Netview
2.2.
Query Manager total request wraps to negative after 32767 (APAR JR06226)
When using "Show User's Details" under the "Show Operational Status" option, if
a user had made more than 32767 requests the number of requests displayed was
negative.
Panel Operations and 8515 Monitors (APAR JR06270)
This fix corrects a problem which causes Query Manager to terminate
unexpectedly when performing panel operations with an 8515 monitor. Under OS/2
2.0, there is still a formatting problem with repeated rows on the 8515
monitor. The formatting problem, as well as the unexpected Query Manager
termination, can be solved by installing OS/2 Corrective Service Pak 6055.
Truncated Footing Text (APAR JR06333)
Previously, when BREAKnX was specified for all columns, the break footing text
was truncated on the report. This has been corrected so that the break footing
text is only truncated if there is final summary data in the break footing text
line. Otherwise, the text will be formatted within the entire width of the
report.
Negative Zeros (-0) (APAR JR06371)
In Extended Services 1.0, it is possible to get a result of -0 when subtracting
two decimal columns with the same value. This fix corrects the problem and is
applicable whether the database was migrated from OS/2 Extended Edition 1.3 or
created under Extended Services 1.0.
Heading Text (APAR JR06383)
If a report page was broken horizontally because of width, the heading text
would only print on the first page.
CTRL-F10 (APAR JR06394)
The CTRL-F10 keystroke from SPECIFY MENU ACTIONS was not functioning.
Final Text Truncation (APAR JR06442)
In a report with final summary columns specified in the form definition, any
final text would be truncated to the width of the first summary column.
Formatting Reports - Unexpected termination (APAR JR06671)
This fix corrects a problem which caused Query Manager to terminate when
formatting a report. The problem appeared when a report form contained CT or
CW edit codes and there was a NULL code point in one of the character columns.
Unexpected Query Manager Termination (APAR JR06684)
Query Manager has been corrected to prevent termination in situations where no
items in a list box are selected and the cursor has been scrolled off the
screen.
Large Data Saves (APAR JR06688)
Query Manager has been changed to display an error message when it runs out of
disk space on its 'working' drive while doing a 'save data' operation. The
data produced by the Query is no longer available following this condition. The
user should free additional space on the drive where Query Manager is located
and then rerun the query.
Trap D in Panel Printing (APAR JR06689)
A trap D occurred when printing a panel layout in which MAX and MIN lines are
set equal for even printed output.
Dutch Translation Error (APAR JR06851)
In the Dutch language version, default and ascending indexes were shown as
'Dalend', which is Dutch for descending. This has been corrected.
Exceptions when using Callable Interface (APAR JR06882)
This fix corrects a problem where Query Manager incorrectly releases storage in
a process where the callable interface is being used from a REXX procedure. One
symptom of the problem is an addressing exception in some non-Query Manager
piece of code running in the same process.
Maximum Length of Report Text (APAR JR06913)
This fix corrects a problem where the maximum length of report text was reduced
by one character for each variable inserted in the text. The condition is
fixed in all of the report text fields (Page heading text, break heading text,
etc.).
Index Display of Column Names (APAR JR06969)
This fix corrects the problem where a column name is truncated to 15-1/2
characters when using the 'Show Index' function.
TAB/Arrow Keys in Procedures (APAR JR06986)
TAB and arrow keys now work as intended in message boxes created by the SAY
command.
ΓòÉΓòÉΓòÉ 3.2.2. Additional Information ΓòÉΓòÉΓòÉ
Panel Instances and Adding Subrows.
When an 'add' mode panel instance defined as one-to-one or many-to-one has a
value for only the connecting column in the subrow, Query Manager will attempt
to add the subrow anyway. This processing is consistent with the basic concept
behind having the panel relationship defined as one-one or one-many.
Previously, the subrow would not have been added to the database.
Netview Alerts and Query Manager
All Query Manager Alerts for Netview have been disabled. System Administrators
who use Netview to monitor problems will no longer receive Alerts from Query
Manager. The DBM alerts are still available.
Query Manager HELP environment variable
Previously, Query Manager did not adhere to the convention of using the HELP
environment variable to locate help files. This has been changed so that the
help files can be moved to a directory other than the one they were installed
in.
ΓòÉΓòÉΓòÉ 3.3. PC DOS Requestor ΓòÉΓòÉΓòÉ
This section contains the APARS fixed for the PC DOS Requester component of
Extended Services 1.0 Database Manager included in WR06035 ServicePak.
ΓòÉΓòÉΓòÉ 3.3.1. APAR Descriptions ΓòÉΓòÉΓòÉ
Error Code (SQL1028N) omitted from ES1.0 documentation (APAR JR05647)
The SQL1028N error code and message will be added to the ES 1.00 online
documentation.
SQLWARN0 (APAR JR05949)
The SQLWARN0 indicator is now set as documented when accessing Database Manager
from a remote application.
CTRL-C/BREAK From DOS Clients (APAR JR06042)
This fix enables a DOS client to correctly execute CTRL-C or CTRL-Break key
sequences to terminate applications on a server.
Invalid compiler options used (APAR JR06112)
Modules of the PCDRDLL.DLL were built with incorrect compiler options.
ΓòÉΓòÉΓòÉ 3.3.2. Additional Information ΓòÉΓòÉΓòÉ
PCDR Bind Files
Rebind the applications that use the following bind files: SQLUPEXP.BND,
SQLUPGSI.BND, SQLUPICI.BND, SQLUPICT.BND, SQLUPIWI.BND, SQLUPMPM.BND, and
SQLUPXPM.BND.
ΓòÉΓòÉΓòÉ 3.4. Database Administration Tools ΓòÉΓòÉΓòÉ
Belgian and Swiss Multilistboxes and Directory Sorting (APAR JR05977)
This APAR fixes two problems in the Belgian and Swiss Versions.
1. Each of the DBA tools hung when a multilistbox had one or more entries to
be displayed.
2. The directory entries were not sorted correctly.
NewLogPath on a: Drive. (APAR JR06158)
When using the configuration tool, if you set the newlogpath parameter in
change database to a: without having a disk in the drive, the system hung. This
has been changed to display an error message.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
The item in the title line is a trademark of IBM Corporation