INTRODUCTION ------------ This file describes the contents of the IBM Communications System/6000: Version 1 Release 1 Modification 1 (Big 5) PTF UQ05606. The following topics are covered in this file: o PREREQUISITES o ADDITIONAL SUPPORT - Support for AIX 4.1.2 and Later - AIX 4.2+ and Write Access for /usr/lpp (PN86428) - AIX 4.2+ and cs2shell Notebooks (PQ02601) o INSTALLING PTF UQ05606 o MIGRATION FOR TQ TABLES (required) o LIST OF FILES o LIST OF APARS FIXED o NOTES FOR UQ05606 - Maximum Connections cs2shell Help (PQ06217) - TQ Member Information cs2shell Help (PN88528) - New Tables and Queues Utility Tool (DCR4963) - DDMS Doc Change (PQ03833) - Printer Binary Option Added to Print 4029-formatted File (PQ05402) - TXE_OPT_DISCONNECT Flag Provided on CS2_TRANSACT (PN89993) - Database/Transaction Configuration File (optional) (PQ05418) - Txe Mirror Filtering (optional) (PQ05418) - DB/Txe Trace Extension (optional) (PQ08634) - Configuring Database For: . RDBMS Support . DB/Txe Mirroring . ODBC/Oracle7 Support o COMPLEMENTARY FIXES FOR CS/2 1.3.1 AND ENTRY/6000 PREREQUISITES ------------- Program Temporary Fix UQ05606 requires Communications System/6000 (5765-092) Release 1.1 (Big 5). Please ensure you are at this level before proceeding with the installation of this PTF. Program Temporary Fix UQ05606 has no prerequisite PTFs. UQ05606 supercedes PTFs UN94493. UQ05606 can be applied directly to the CS/6000 R1.1 (Big 5) product or on top of PTF UN94493. UQ05606 is cumulative, containing all fixes from UN94493, as well as additional fixes. PTF UQ05606 is language specific. It is NOT to be applied to the English language version of the AIX Communications System/6000. It is for application to only the non-English CS/6000 Big 5 language versions: Language Version feature numbers -------------------- --------------- Korean 5081, 5087 Japanese 5082, 5088 Traditional Chinese 5083, 5089 *** A prerequisite is 3251 AIX Preventive Maintenance Package *** *** Rel. 320 Volume Z88701 which includes PTF #U493251 and others, *** *** required to load libwms.a shipped on this PTF. *** *** Oracle6 TxE server support is not included in this PTF. *** *** If you are using Oracle6 TxE support, do not install *** *** this PTF. Contact the Support Center for more *** *** information. *** ADDITIONAL SUPPORT ------------------ Support for AIX 4.1.2 and later ------------------------------- CS/6000 1.1.1 is supported on AIX 4.1.2 and later releases with the installation of this PTF. However, there are some inconsistencies in AIX 4.1.* that must be fixed before installing CS/6000 1.1.1 or this PTF. Please follow these instructions to correct the inconsistencies: - Create the directory /usr/lpp/cs2/toolkit/db/cs2. Note that you must be logged in as 'root' and create the lower level directories first, e.g. /usr/lpp/cs2. AIX 4.2+ and Write Access for /usr/lpp (PN86428) ------------------------------------------------ Beginning with Release 4.2 AIX installp no longer allows a product to be installed with a subdirectory of /usr/lpp having write access for group staff. CS/6000 requires that /usr/lpp/cs2/sys be writable by the user who starts CS/6000. (PN86428) The root user who installs CS/6000 on AIX 4.2 should issue the the following command after installation is complete: chmod g+w /usr/lpp/cs2/sys AIX 4.2+ and cs2shell Notebooks (PQ02601) ----------------------------------------- There is an inconsistency in AIX 4.2 X-Windows support which results in some cs2shell notebook pages displaying empty sometimes. For most configuration, the cs2utt tool can be used instead of the cs2shell. However, if you must use the cs2shell and you encounter the empty notebook window problem, you can get a temporary workaround available through the DAE Web page. It is a modified libwms.a library. Be aware, this libwms.a has the expand capability for notebooks turned off. Therefore, with this libwms.a, all Wms applications, including UI applications, will not have the notebook expand capability. It is not recommended to use this modified libwms.a for any other applications, as the cs2shell is the only known application to have this problem. The external URL for the DAE homepage is: http://wwprodsoln.bocaraton.ibm.com/soft/dae/dae.htm *** Note change to http://publib.boulder.ibm.com/dae/html/dae.htm Find PQ02601 under DAE File Repository, Additional Fixes/Work- arounds, CS/6000 1.1.1 Single Fix Information - English (or Big 5 for non-English). Be sure to read the associated "readme" file. INSTALLING PTF UQ05606 ---------------------- PTF UQ05606 may be installed using the AIX SMIT utility. If installing from tape, give the tape drive name as the 'INPUT device / directory for software'. If installing from an image of the tape (that is the file UQ05606.bff), give the path and file name of the image file. Follow these directions to update your system and install PTF UQ05606: 1. Shutdown the Communications System/6000, if it is currently running. 2. Login as 'root' and execute /etc/slibclean to unload the Communications System/6000 shared libraries from memory. 3. Install PTF UQ05606 using SMIT. 4. This will update the files listed in the Updated Files section. 5. The PTF installation is now complete. You can restart the Communications System/6000. (If on AIX 4.2+, see note above for PN86428 on how to give write access to the /usr/lpp/ directory before attempting to start CS/6000.) 6. Run the TQ migration utility. See Migration For TQ Tables section. MIGRATION FOR TQ TABLES (required) ---------------------------------- This utility will examine the Table definitions (Queue's don't need to be migrated) in cs2tqf00.cfs and will migrate the tables if necessary. Note: is is VERY unlikely that any tables on OS/2 will need to be migrated and in that case no changes will be made to the table files. On AIX, most tables will need to be migrated, but there is little chance of any data being lost or the table being corrupted if the table is not migrated. The only possible result of not modifying a table would be that it would appear to fill up before it is actually full. To migrate the TQ tables: 1. Start DAE. 2. Execute cs2tqmig from the toolkit. LIST OF FILES ------------- The following are the files shipped on this PTF: /usr/include/cs2/cs2.h /usr/include/cs2/cs2coapi.h /usr/include/cs2/cs2codfn.h /usr/include/cs2/cs2db.h /usr/include/cs2/cs2dberr.h /usr/include/cs2/cs2dbext.h /usr/include/cs2/cs2dbsdb.h /usr/include/cs2/cs2dmcal.h /usr/include/cs2/cs2ds.h /usr/include/cs2/cs2xact.h /usr/include/cs2/txeapi.h /usr/include/cs2/txemsgrc.h /usr/include/cs2/txesrv.h /usr/lib/libcs2.a /usr/lib/libcs2i.a /usr/lib/libwms.a /usr/lpp/cs2/ddms/cs2dmsvr.lib /usr/lpp/cs2/ddms/ddmldip.h /usr/lpp/cs2/ddms/msc/cs2dmsvr.lib /usr/lpp/cs2/inst_UQ05606/readme.doc.UQ05606 /usr/lpp/cs2/lib/cs2dbadm.o /usr/lpp/cs2/lib/cs2dbdb2.o /usr/lpp/cs2/lib/cs2dbodb.o /usr/lpp/cs2/lib/cs2dbr04.o /usr/lpp/cs2/lib/cs2dbr05.o /usr/lpp/cs2/lib/cs2dbr06.o /usr/lpp/cs2/lib/cs2dbr08.o /usr/lpp/cs2/lib/cs2dbsyd.o /usr/lpp/cs2/lib/dbsysdb2.o /usr/lpp/cs2/lib/dbsysnon.o /usr/lpp/cs2/lib/dbsysodb.o /usr/lpp/cs2/lib/dbsyssyd.o /usr/lpp/cs2/lib/dbsystbl.o /usr/lpp/cs2/lib/txesutbl.o /usr/lpp/cs2/sys/cs2ahr00 /usr/lpp/cs2/sys/cs2apr00 /usr/lpp/cs2/sys/cs2aptrp /usr/lpp/cs2/sys/cs2blr00 /usr/lpp/cs2/sys/cs2dbadm.bnd /usr/lpp/cs2/sys/cs2dbcm /usr/lpp/cs2/sys/cs2dbcpl.hlp /usr/lpp/cs2/sys/cs2dbcpl.pdl /usr/lpp/cs2/sys/cs2dbcpl.pml /usr/lpp/cs2/sys/cs2dbcr /usr/lpp/cs2/sys/cs2dbcs /usr/lpp/cs2/sys/cs2dbdb2.bnd /usr/lpp/cs2/sys/cs2dbr00 /usr/lpp/cs2/sys/cs2dbr01 /usr/lpp/cs2/sys/cs2dbr02 /usr/lpp/cs2/sys/cs2dbr03 /usr/lpp/cs2/sys/cs2dbr07 /usr/lpp/cs2/sys/cs2dbtxe.cnf /usr/lpp/cs2/sys/cs2dbu00 /usr/lpp/cs2/sys/cs2dbu01 /usr/lpp/cs2/sys/cs2dmr00 /usr/lpp/cs2/sys/cs2dmr10.exe /usr/lpp/cs2/sys/cs2dmrv0.exe /usr/lpp/cs2/sys/cs2dsrdr /usr/lpp/cs2/sys/cs2ecr00 /usr/lpp/cs2/sys/cs2fsr00 /usr/lpp/cs2/sys/cs2icr00 /usr/lpp/cs2/sys/cs2irr00 /usr/lpp/cs2/sys/cs2irr01 /usr/lpp/cs2/sys/cs2irr10 /usr/lpp/cs2/sys/cs2mmr00 /usr/lpp/cs2/sys/cs2ncr02 /usr/lpp/cs2/sys/cs2psr00 /usr/lpp/cs2/sys/cs2psr01 /usr/lpp/cs2/sys/cs2scr00 /usr/lpp/cs2/sys/cs2setup /usr/lpp/cs2/sys/cs2shell /usr/lpp/cs2/sys/cs2start /usr/lpp/cs2/sys/cs2sura0 /usr/lpp/cs2/sys/cs2surc0 /usr/lpp/cs2/sys/cs2tccac /usr/lpp/cs2/sys/cs2tccon /usr/lpp/cs2/sys/cs2tciio /usr/lpp/cs2/sys/cs2tcoio /usr/lpp/cs2/sys/cs2tcr00 /usr/lpp/cs2/sys/cs2tmr00 /usr/lpp/cs2/sys/cs2tqr00 /usr/lpp/cs2/sys/cs2tqr01 /usr/lpp/cs2/sys/cs2uir00 /usr/lpp/cs2/toolkit/cs2blt /usr/lpp/cs2/toolkit/cs2cbt /usr/lpp/cs2/toolkit/cs2cuoff /usr/lpp/cs2/toolkit/cs2cutil /usr/lpp/cs2/toolkit/cs2fst /usr/lpp/cs2/toolkit/cs2ftt /usr/lpp/cs2/toolkit/cs2stt /usr/lpp/cs2/toolkit/cs2tqmig /usr/lpp/cs2/toolkit/cs2tqt /usr/lpp/cs2/toolkit/cs2utt /usr/lpp/cs2/toolkit/cs2utt.doc /usr/lpp/cs2/toolkit/db/assetdb2.dat /usr/lpp/cs2/toolkit/db/assets.dat /usr/lpp/cs2/toolkit/db/crtdbase.cmd /usr/lpp/cs2/toolkit/db/cs2db.doc /usr/lpp/cs2/toolkit/db/cs2dbbnd /usr/lpp/cs2/toolkit/db/cs2dbcnd.cfg /usr/lpp/cs2/toolkit/db/cs2dbcr.cfg /usr/lpp/cs2/toolkit/db/cs2dbcs.cfg /usr/lpp/cs2/toolkit/db/cs2dbdcl /usr/lpp/cs2/toolkit/db/cs2dbdcl.c /usr/lpp/cs2/toolkit/db/cs2dbddl /usr/lpp/cs2/toolkit/db/cs2dbddl.c /usr/lpp/cs2/toolkit/db/cs2dbdml /usr/lpp/cs2/toolkit/db/cs2dbdml.c /usr/lpp/cs2/toolkit/db/cs2dbsmp.doc /usr/lpp/cs2/toolkit/db/cs2dbsmp.mak /usr/lpp/cs2/toolkit/db/cstrans /usr/lpp/cs2/toolkit/db/cstrans.c /usr/lpp/cs2/toolkit/db/cstrans.h /usr/lpp/cs2/toolkit/db/ctxeodbc.c /usr/lpp/cs2/toolkit/db/ctxeodbc.mak /usr/lpp/cs2/toolkit/db/db2asset.dat /usr/lpp/cs2/toolkit/db/db2prsns.dat /usr/lpp/cs2/toolkit/db/db2type.dat /usr/lpp/cs2/toolkit/db/dbsystbl.c /usr/lpp/cs2/toolkit/db/dbsystbl.exp /usr/lpp/cs2/toolkit/db/dbsystbl.h /usr/lpp/cs2/toolkit/db/dbsystbl.mak /usr/lpp/cs2/toolkit/db/main.txt /usr/lpp/cs2/toolkit/db/nondbase.c /usr/lpp/cs2/toolkit/db/nondbase.exp /usr/lpp/cs2/toolkit/db/nondbase.mak /usr/lpp/cs2/toolkit/db/nondbase.o /usr/lpp/cs2/toolkit/db/nonsqldb.c /usr/lpp/cs2/toolkit/db/persons.dat /usr/lpp/cs2/toolkit/db/sumdbl.c /usr/lpp/cs2/toolkit/db/sumdbl.exp /usr/lpp/cs2/toolkit/db/sumdbl.mak /usr/lpp/cs2/toolkit/db/sumdbl.o /usr/lpp/cs2/toolkit/db/tables.run /usr/lpp/cs2/toolkit/db/txesutbl.c /usr/lpp/cs2/toolkit/db/txesutbl.exp /usr/lpp/cs2/toolkit/db/txesutbl.mak /usr/lpp/cs2/toolkit/db/txetest2 /usr/lpp/cs2/toolkit/db/txetest2.c /usr/lpp/cs2/toolkit/db/txetest2.mak /usr/lpp/cs2/toolkit/db/type.dat /usr/lpp/cs2/toolkit/db/uraixsql.c /usr/lpp/cs2/toolkit/db/urnopdb2.sqc /usr/lpp/cs2/toolkit/db/urnopmak.mak /usr/lpp/cs2/toolkit/db/urnoptxn.c /usr/lpp/cs2/toolkit/db/usrtxdb2.mak /usr/lpp/cs2/toolkit/db/usrtxns.exp /usr/lpp/cs2/toolkit/ddms/ab/cs2dmr10.exe /usr/lpp/cs2/toolkit/ddms/ab/cs2dmrv0.exe /usr/lpp/cs2/toolkit/ddms/cs2dmr10.exe /usr/lpp/cs2/toolkit/ddms/ge/cs2dmr10.exe /usr/lpp/cs2/toolkit/ddms/ge/cs2dmrv0.exe /usr/lpp/cs2/toolkit/ddms/mo/cs2dmr10.exe /usr/lpp/cs2/toolkit/ddms/mo/cs2dmrv0.exe /usr/lpp/cs2/toolkit/ddms/ti/cs2dmr10.exe /usr/lpp/cs2/toolkit/ddms/ti/cs2dmrv0.exe /usr/lpp/cs2/toolkit/poolsab Language specific files: /usr/lib/nls/msg/Ja_JP/cdb.cat /usr/lib/nls/msg/Ja_JP/cs2.cat /usr/lib/nls/msg/Ja_JP/cs2h.cat /usr/lib/nls/msg/Zh_TW/cdb.cat /usr/lib/nls/msg/Zh_TW/cs2.cat /usr/lib/nls/msg/Zh_TW/cs2h.cat /usr/lib/nls/msg/ko_KR/cdb.cat /usr/lib/nls/msg/ko_KR/cs2.cat /usr/lib/nls/msg/ko_KR/cs2h.cat /usr/lib/nls/msg/zh_TW/cdb.cat /usr/lib/nls/msg/zh_TW/cs2.cat /usr/lib/nls/msg/zh_TW/cs2h.cat /usr/lpp/cs2/sys/Ja_JP/cs2shwin.pdl /usr/lpp/cs2/sys/Ja_JP/cs2shwin.pml /usr/lpp/cs2/sys/Zh_TW/cs2shwin.pdl /usr/lpp/cs2/sys/Zh_TW/cs2shwin.pml /usr/lpp/cs2/sys/ko_KR/cs2shwin.pdl /usr/lpp/cs2/sys/ko_KR/cs2shwin.pml /usr/lpp/cs2/sys/zh_TW/cs2shwin.pdl /usr/lpp/cs2/sys/zh_TW/cs2shwin.pml LIST OF APARS FIXED ------------------- New on UQ05606: --------------- DCR4811 NCR - to prevent heartbeat messages from appearing on session where DAE was started add "DISP=NO" to CS2IRR01.CS2NODE ACB start parameters in capital letters with no spaces. DCR4900 CS2.H - allow multiple #include passes to improve usability. DCR4927 Improved cs2cbt (Configuration Utility Tool) - allow exit from Add request; start parameter display corrected. DCR4963 Rewrite TQINIT to CS2TQT. PN69492 WMS trap causes abnormal end of cs2uir00 during display panel. PN69979 DB error message: CS2_GET = cannot open cdb.cat file missing. PN72402 WMS performance improved for container list update. PN75425 Semaphore number is increased incorrectly. PN75592 DB SQL0843 warning (DBCS) interpreted as error-failure. PN76778 cs2shell core dumps on save option when resource already defined. PN78096 DDMS used to support baud rates of only 32767 (signed integer). Now DDMS treats baud rate as unsigned int with value of 65535. PN78105 DDMS floating point overflow error when device data larger than 1e+10 and percent deadbanding used on remote variable. PN78892 cs2cutil - processor type not valid for RCB. PN79264 CS2SHELL - userid not displayed in DBCB. PN80757 DS - CLM3363 returned when DSRP l_timeout=-1. PN81532 DB asynchronous mirroring. PN81533 CS2_TRANSACT API decode error fails to release RD sema4/resrces. PN81535 DB - Oracle7 via ODBC CS2_DB API support for CS/6000. enhancement and various CS2_DB API fixes. PN81536 NT support on other platforms. PN81780 DB - cross-platform CS2_TRANSACT API requests are failing in the mirrored client's path validation - CS2_TRANSACT API has been updated to no longer require server_drive_path and client_resp_path when not applicable. PN83202 poolsab hangs DAE system. PN88466 Data supply does not erase temporary files when timeout expired. PN89938 WMS causes an entry field character validation loop. PN89993 DB - new TXE_OPT_DISCONNECT flag provides explicit disconnect. PN90723 Print Server - cannot start more than 10 PCBs on CS/6000. PN91317 UI - on AIX4.2 get CSR5717 when cs2shell up and start 2nd UI app. PN91325 TQ - cs2tqr01 core dump when message pool is full. PN92857 DB dispatcher REM traps when using queueing and maximum dedicated agents is set to less than number of concurrent clients run. PQ00747 DB - conflict with definition of register_event in cs2dbc.h. PQ03833 DDMS d_writervar documentation incomplete. PQ03838 WMS notebook X-Station memory leakage. PQ05069 CS2_TEMP_RES - create & purge multiple temporary ACBs causes hang. PQ05402 CS2_PRINT provides invalid output of 4029-formatted file. PQ05403 DDMS - CSR2095 - resource in use error from ModifyPoll. PQ05404 CS2_UTIL api traps when passed invalid originator in the RDS. PQ05406 DDMS enhancement to support d_writervar cross platform. PQ05407 ECR - cs2ecr00 frees storage which was not malloc'd. PQ05408 DB - CS2_TRANSACT returns CSR1391. PQ05409 DB - CS2_TRANSACT gets timeout using TXE_OPT_OPEN_LOOP. PQ05410 TQ - trap when 2 TQ servers close same T/Q at same time. PQ05411 DDMS random I/O points do not update when ldit make connection. PQ05412 cs2shell - invalid setting of queue limit in DBCB. PQ05413 DB - incorrect function called by CS2_TRANSACT. PQ05414 DDMS change for variable msg notification (Plantworks PN84964). PQ05416 Disk Queued messages not received correctly when CACHE LAZY:ON. PQ05417 TQ Large tables (300,000+ members) get CSR0409 before table full. PQ05418 Filter TXE secondary mirror requests based on configurable RCs. PQ05419 CS2_INIT gets good return code when DAE has been shutdown. PQ05420 DB CS2_TRANSACT starts new connections due to uninitialized RDS. PQ05421 Y2000 - update cs2colib and rebuild REMs for year 2000 support. PQ05422 Time requester keeps sending requests after timeout condition. PQ05423 TQ - toggle TQ corruption flag during update. PQ05424 DDMS passing incorrect remote variable size. PQ05425 TQ - RMU Verify Utility seems to run endlessly for large tables. PQ05731 Semaphores not deleted at shutdown. PQ06265 APPC - synchronous TP incorrectly ends after deallocate from host. PQ07133 TQ - Occasional TQ REM core dumps on open/close of AIX image files. PQ07271 DDMS cannot support remote variable data length greater than 32K. PQ07269 DB - DB_SELECT hangs using cs2dbdcl sample (Oracle7 via ODBC). PQ07611 CS/6000 applications may hang when run by root user. PQ08634 DB - Timing-related abort in DB at shutdown when trace w/ busy Agent. From UN94493: ------------- PN62244 TCP/IP -Coredump was issued from cs2tciio in iio_proc + 0x60. PN62310 TCP/IP -Processes (cs2tcxxx) are not shutting down normally. PN68216 TCP/IP -Can't establish tcp/ip session. Options tcp_keepidle, tcp_keepalive are now used to detect link failures. Signal handlers to deal with epipe are now installed preventing termination of cs2tccac during high message-sending rates. PN68740 TCP/IP -Socket remains after normal shutdown. PN83589 TCP/IP -cs2tccac does not close unix domain socket. ------------------------------------------------------------------------------ NOTES FOR UQ05606 ----------------- Maximum Connections cs2shell Help (PQ06217) ------------------------------------------- The cs2shell help on the "Maximum connections" field in the Communication access resource (CACB) is used not only for NETBIOS, but also for TCP/IP communication. In the future (not on this PTF), the help text will have "/TCPIP" added to the Maximum Connections - Help panel: "Use this entry field for NETBIOS/TCPIP communication only. It is ignored by all other communication. This field is optional. Valid values are 1 through 65535. There is a limit on the number of connections handled by this communication access resource that can be active simultaneously. If more connections are needed, old ones are broken and reused." TQ Member Information cs2shell Help (PN88528) --------------------------------------------- The cs2shell help on the "Member information" "Number of members" and "Length of member" fields in the Table resource are switched. The maximum length of member should be 60000 bytes and the maximum number of members should be 9999999. New Tables and Queues Utility Tool (DCR4963) -------------------------------------------- The cs2utt Utility Tools have a new tool added with this PTF, the new Tables and Queues Utility Tool (cs2tqt), and a new cs2utt.doc. Refer to the cs2\toolkit\cs2utt.doc for details. DDMS Doc Change (PQ03833) ------------------------- Page 11-281 of the Device Data Management Support Book update needs the NOTE at the bottom added: d_writevar Table 11-150 Field Descriptions Name Type Description bfr_sz short Variable write: Specify the size (in bytes) integer of bfr_addr. If the data consists of multiple elements, you must pack the elements in the buffer. The size must be equal to or greater than the variable's element_no field multiplied by the element_len field. (Both fields are defined by d_defrvar.) . Note: If the size is too small, an E_INVPARM error is returned. . . ADD => NOTE: For arrays and character strings, ADD => the bfr_sz field can be less ADD => than the variable's element_no ADD => field multiplied by the element_len. ADD => In such instances the E_INVPARM ADD => DDMS error is not returned. Printer Binary Option Added to Print 4029-formatted File (PQ05402) ------------------------------------------------------------------ The following is an update to the DAE Communication System Technical Guide and Reference, Print and Spool Support chapter, Start Parameters section. The parameters for printer resource continuation buffer timeout and printer resource maximum errors remain as before. | In order to enable optional start parameters with the menu-based | utilities, remember to set the "Use load parameters from ACB" flag. Printer REM Start Parameters ---------------------------- The printer REM ACB can contain the following optional start parameters. | Note it is also possible to configure multiple printer resources which | need not all use the same set of start parameters. This is done by | configuring two or more printer REMs each with a desired set of start | parameters, then assigning each printer resource to be served by the | printer REM with appropriate start parameters. | Printer resource mode | | This start parameter specifies whether to print in text or binary | mode. The parameter is not used on all platforms. | | The default print mode is text. With text mode on the OS/2 platform, | for example, each new-line character is converted to a carriage | return / linefeed pair. | | When you specify binary mode, data is sent to the printer exactly as | received. No conversion takes place. This parameter may be useful | to print data formatted for a specific printer. In addition, binary | mode causes no new-line to be appended to the end of a print job. It | causes the Printer resource append new-line parameter to default to | not append a new-line. (This can be overridden by using the Printer | resource append new-line parameter to explicitly force an ending | new-line. See the Printer resource append new-line parameter | description for details.) | | This parameter has the following format: | | PRMD=x | | where x specifies text or binary print mode. | | 0 Specifies the default of text mode. | 1 Specifies binary mode. Printer resource append new-line This start parameter allows a user to choose whether or not a new-line will be appended to the end of a print job. A new-line consists of a carriage return and line feed control character pair in OS/2 text file mode. This parameter has the following format. PRAN=x where x specifies whether or not a new-line will be appended at the end of a print job. 0 Specifies that a new-line will not be appended. | This becomes the default only if the Printer resource | mode parameter is used to specify binary mode. | 1 Specifies that a new-line will be appended. This is the default | when the Printer resource mode parameter is not used, or when | the printer resource mode parameter explicitly specifies text | mode. The appended new-line may be needed with some printers to ensure that the last print line is flushed from the print buffer when a print job is completed. It also ensures that no two print jobs will print on the same line, regardless of job content. TXE_OPT_DISCONNECT Flag Provided on CS2_TRANSACT (PN89993) ---------------------------------------------------------- Update to DAE Application Programming publication, CS2_TRANSACT chapter: The work_opt and fail_opt fields also support the following. work_opt You may optionally specify TXE_OPT_DISCONNECT to disconnect from the database after this transaction successfully completes. TXE_OPT_DISCONNECT may be combined with other work_opt flag values, for example TXE_OPT_COMMIT. fail_opt You may optionally specify TXE_OPT_DISCONNECT to disconnect from the database if this transaction fails. TXE_OPT_DISCONNECT may be combined with other fail_opt flag values, for example TXE_OPT_ROLLBACK. Database/Transaction Configuration File (optional) (PQ05418) ------------------------------------------------------------ The Database/Transaction (DB/Txe) component uses an optional configuration file, cs2dbtxe.cnf. This file is located in your Distributed Application Environment system path on the node where the DB/Txe server resides. The file is provided by default but may be modified, deleted or renamed if desired. The DB/Txe configuration file is used to specify the following options: * Txe mirror filtering (See "Txe Mirror Filtering" below.) * DB/Txe trace extension (See "DB/Txe Trace Extension" below.) Comments and blank lines are ignored in the file. Only keywords, such as TxeMirrorFilter, are recognized. Keywords must start in column 1 and are case insensitive. Txe Mirror Filtering (optional) (PQ05418) ----------------------------------------- This optional feature applies only if DB/Txe mirroring is enabled. It is available for both synchronous and asynchronous mirroring. The DB/Txe component offers the option of filtering secondary mirrored CS2_TRANSACT requests from reissue to the secondary database exactly as originated. Mirror filtering is configured by specifying Transaction mirror return code pairs in the DB/Txe configuration file, cs2dbtxe.cnf, on the node where the primary database resides. The return code pairs are specified as a TxeMirrorFilter setting. They determine which failed primary requests are filtered from mirroring directly to the secondary database. Each pair consists of an error domain and error value. cs2dbtxe.cnf is shipped with one Txe mirror filter return code pair by default: TxeMirrorFilter = 3,-911. /* Don't mirror SQL deadlocks */ In this setting, 3 is the error domain of TXE_SQL_ERR. -911 is the error value for the SQL error, "the current transaction has been rolled back because of a deadlock or timeout." Although deadlock prevention is preferred to detection, occasional database deadlocks may be unavoidable in some applications. Here, mirrored CS2_TRANSACT requests can be filtered from direct reissue to the secondary database to prevent creating an out-of-synchronization condition, or further deadlock. An example of three pairs specified is: TxeMirrorFilter = 3,-911. 1,121. 3,100. /* RCs to filter from mirroring */ When a CS2_TRANSACT request is filtered from mirroring to the secondary database resource, the parameters of the client's CS2_TRANSACT structure are examined. If the fail_opt flag in the CS2_TRANSACT structure is set to TXE_OPT_ROLLBACK (or TXE_OPT_COMMIT), the secondary database resource is rolled back (or committed, as appropriate). This is done in an attempt to better synchronize to the primary database. When a CS2_TRANSACT request results in a Txe error, it returns a non-zero error domain and value to the client. Typically, the CS2_TRANSACT CSR code returned is CS2_TXE_ERROR (CSR2820). When mirrored requests are filtered, the CS2_TRANSACT API returns a similar code, however, it is tailored for mirror filtering: CS2_TXE_ERROR_MIR_FLTR (CSR2821) - CS2_TXE_ERROR with secondary CS2_TRANSACT request filtered from mirroring. In addition, base log messages confirm the acceptance of the mirror filter setting, and provide details of mirror errors and filtering. Refer to the message help for further information. Note that CS2_TRANSACT always returns the same value from the API as the RDS return code (cnretcd field). DB/Txe Trace Extension (optional) (PQ08634) ------------------------------------------- This optional feature applies only if DB/Txe trace is enabled. Enable the DB/Txe trace by setting the trace flag in the DB NIB segment; this is the main DB/Txe trace toggle. Optionally, you may also specify extended tracing in cs2dbtxe.cnf. The following setting may be set: * (no setting) /* Base trace. Excludes trace extensions. */ * traceExtension = DB_TRACE_MALLOC /*Trace only memory alloc/dealloc*/ * traceExtension = DB_TRACE_FULL /* Full trace option */ Refer to cs2dbtxe.cnf for details. Configuring Database for RDBMS Support -------------------------------------- IMPORTANT FOR USING BUILT-IN SUPPORT FOR RDBMS: In this enhancement, the database component was reorganized. As a result, you must copy the dynamic library required for the DBCB database type accessed locally by your DAE applications. To enable local support for a particular database type, you must copy the file listed below to \usr\lpp\cs2\lib\dbsystbl.o: RDBMS File Notes ------- ---------- ------------------------------------------- DB2/2 dbsysdb2.o Be sure to rebind your databases after in- stalling this PTF and copying this file. Sybase dbsyssyd.o TxE only. *** Oracle6 dbsysor6.o (Was TxE only.) *** Oracle6 is not supported on this PTF. *** ODBC dbsysodb.o For ODBC support. Non-SQL dbsysnon.o This is the shipped default dbsystbl.dll. Configuring Database for DB/Txe Mirroring ----------------------------------------- This step applies only to DB/Txe Mirroring users: If you are using Synchronous or Asynchronous mirroring, configure your DBCBs. To configure Txe Mirroring using the DAE Shell: * In the primary DBCB for a database: o Specify a role of Primary. o Select either synchronous or asynchronous mirroring: Select the pushbutton to make calls synchronously; -OR- Select the pushbutton to use local mirror application resource. o Specify a secondary database resource. * In the secondary DBCB for a database: o Specify a Role of Secondary. To configure Txe Mirroring using CNFGTOOL: * In the primary DBCB for a database: o Specify a role of Primary. o Specify a secondary DBCB. o Set the mirroring enabled flag. o Select either synchronous or asynchronous mirroring: Set synchronous transaction mirroring to yes; -OR- Set asynchronous mirroring ACB on this node to yes. * In the secondary DBCB for a database: o Specify a Role of Secondary. ODBC/ORACLE7 Support : Configuration and Application Development Guide ---------------------------------------------------------------------- In an enhancement to the CS/6000 1.1 product, Oracle7 via an ODBC Driver support for the CS2_DB APIs has been added. This enhancement is supported using the Visigenic ODBC Driver Set for AIX 3.2.5. Other ODBC Driver Sets have not been tested. Prerequisites ------------- The following software is required. The versions/releases in parentheses '()' indicate the versions that were used for testing purposes. Versions of the Visigenic ODBC Driver Set for AIX earlier than 1.10 are not compatible with this release. AIX (Version 3.2.5) Oracle7 Server (Release 7.2.2.3.0) Visigenic ODBC Driver Set for AIX (Version 1.10.0004) Verifying the Visigenic ODBC Driver Set Installation ---------------------------------------------------- After the ODBC Driver Set has been installed, we suggest the following to ensure that the driver is working properly: 1. Verify that configuration settings such as environment variables (ORACLE_HOME, ORACLE_SID, LIBPATH) are correct. Verify that the location and settings in .odbc.ini are correct. 2. Start Oracle7. 3. Run the Visigenic ODBC sample programs: 'adhoc' and 'static'. DBCB Configuration ------------------ A new DBCB database type has been added for ODBC support. DB_TYPE_ODBC is the C programming constant and 12 is the numeric value. The cs2shell, cs2utt, or cnfgtool utilities can be used to create or modify DBCBs with this database type. When creating a DBCB for an Oracle7 via ODBC database be sure to do the following: 1. Set the DBCB database type field to ODBC. 2. Set the DBCB database name field to the ORACLE_SID of the Oracle database. 3. Make sure the .odbc.ini file in the home directory of UNIX ID from which DAE is run contains an entry in the [ODBC Data Sources] section for the ORACLE_SID and contains an [oracle_sid] section with the appropriate "Driver=" information. For example, if the ORACLE_SID is PROD, the DBCB database name should be PROD, the [ODBC Data Sources] section of .odbc.ini should have a line that reads PROD=Visigenic Oracle7, and it should have a [PROD] section with a line that reads Driver=/usr/opt/odbc/drivers/vsorac.so.1. Usage Notes on SQLTYPE in the DBDA Structure -------------------------------------------- The database APIs use an input DBDA structure (dbs.dbda) to associate host variables with markers in SQL statements and an output DBDA structure (placed at the start of the output results buffer) to describe the results of a SELECT. The DBDA structure consists of a fixed header structure (HDR_S) followed by a variable number of column/marker structures (VAR_S). The VAR_S structure consists of fields that indicate the type of column being accessed and the type of C storage used for sending and receiving data. The table below shows: the SQL data types supported, the SQL declaration syntax for DB2 and Oracle7, and the corresponding VAR_S sqltype value. If a SQL declaration is listed as "n/a," the corresponding sqltype is not valid for that DBMS. The second table below describes the remaining VAR_S fields for each type. DBDA Oracle7 sql- SQL Type DB/2 Declaration Declaration type --------------------- ----------------------- ----------- ---- fixed length CHAR(n) CHAR(n) 453 character string w/NOT NULL w/NOT NULL 452 fixed length CHAR(n) FOR BIT DATA n/a 453 binary data w/NOT NULL 452 varying length VARCHAR(n) VARCHAR2(n) 449 character string w/NOT NULL w/NOT NULL 448 varying length VARCHAR(n) FOR BIT DATA RAW(n) 449 binary data w/NOT NULL w/NOT NULL 448 long varying length LONG VARCHAR LONG 457 character string w/NOT NULL w/NOT NULL 456 long varying length LONG VARCHAR FOR BIT DATA LONG RAW 457 binary data w/NOT NULL w/NOT NULL 456 fixed point signed DECIMAL(p,s) NUMBER(p,s) 481* number with precision w/NOT NULL w/NOT NULL 480 p and scale s fixed point number SMALLINT n/a** 501 with precision 5 w/NOT NULL 500 and scale 0 fixed point number INTEGER n/a** 497 with precision 10 496 and scale 0 floating point number n/a FLOAT(b) 481 with binary precision 480 b double precision DOUBLE PRECISION NUMBER 481 floating point 480 number date/time data TIMESTAMP DATE 393 392 date (only) data DATE n/a 385 384 time (only) data TIME n/a 389 388 fixed length GRAPHIC(n) n/a 469 graphic string w/NOT NULL 468 varying length VARGRAPHIC(n) n/a 465 graphic string w/NOT NULL 464 long varying length LONG VARGRAPHIC n/a 473 graphic string w/NOT NULL 472 DBDA C variable type sql- pointed to by DBDA DBDA SQL Type type DBDA sql_data sqllen ext_attrib --------------------- ---- ----------------- ------ ---------------- fixed length 453 char[len] len DB_NO_EXT_ATTRIB character string 452 no '\0' needed fixed length 453 char[len] len DB_FOR_BIT_DATA binary data 452 no '\0' needed varying length 449 struct { len+2 DB_NO_EXT_ATTRIB character string 448 short int len; char arr[len];} no '\0' needed varying length 449 struct { len+2 DB_FOR_BIT_DATA binary data 448 short int len; char arr[len];} no '\0' needed long varying length 457 struct { len+2 DB_NO_EXT_ATTRIB character string 456 short int len; char arr[len];} no '\0' needed long varying length 457 struct { len+2 DB_FOR_BIT_DATA binary data 456 short int len; char arr[len];} no '\0' needed fixed point signed 481* double 8 n/a number with precision 480 p and scale s fixed point number 501 short int 2 n/a with precision 5 and 500 scale 0 fixed point number 497 long int 4 n/a with precision 10 and 496 scale 0 floating point number 481 double 8 n/a with binary precision 480 b double precision 481 double 8 n/a floating point number 480 date/time data 393 char[19-26] 19 - n/a 392 no '\0' needed 26 date (only) data 385 char[10] 10 n/a 384 no '\0' needed time (only) data 389 char[8] 8 n/a 388 no '\0' needed fixed length 469 char[len] len n/a graphic string 468 no '\0' needed varying length 465 struct { len+2 n/a graphic string 464 short int len; char arr[len];} no '\0' needed long varying length 473 struct { len+2 n/a graphic string 472 short int len; char arr[len];} no '\0' needed * In prior versions, sqltype 484/485 (packed decimal) was recommended but required the user to convert numbers to/from BCD (binary coded decimal) format. The packed decimal sqltype is not supported in DAE's ODBC version. ** Oracle maps the DB2 types SMALLINT and INTEGER to the Oracle type NUMBER. If a column is declared as type SMALLINT or INTEGER in Oracle, the appropriate sqltype is 480/481. DBMS Interoperability --------------------- DBCBs (and their associated schema objects) can be ported from one supported DBMS to another without modification of the associated application program provided that platform-specific or RDBMS vendor specific parameters are not used. ODBC defines certain extensions to SQL which are common to most DBMS's including: - Date, time, and timestamp data - Scalar functions such as numeric, string, and data type conversion functions - LIKE predicate escape characters - Outer joins - Procedures Most DBMS's provide the same extensions to SQL as ODBC does. Because of this, an application may be able to submit an SQL statement using either the syntax defined by ODBC or the syntax defined by the DBMS. The interoperability between DBMSs for a client application may be enhanced if the ODBC syntax is used. Please refer to any of a number of ODBC Version 2.0 publications for more details regarding ODBC extensions to SQL. ------------------------------------------------------------------------------ COMPLEMENTARY FIXES FOR CS/2 1.3.1 and ENTRY/6000 ------------------------------------------------- CS/6000 1.1.1 CS/2 1.3.1 PTF UQ05606 PTF UQ05604 ------------- ----------- DCR4811 DCR4811 DCR4900 DCR4900 DCR4927 DCR4927 DCR4963 DCR4963 PN75592 PN81537 PN76778 PN77061 PN78096 PN61268 PN78105 PN77882 PN78892 PQ05426 PN79264 PN81538 PN80757 PN81539 PN81532 PN75532 PN81533 PN76912 PN81535 PN80759 PN81536 PN81452 PN81780 PN81028 PN83202 PQ05427 PN88466 PQ05428 PN89993 PQ05429 PN90723 PQ05430 PN92857 PQ05431 PQ00747 PQ05433 PQ05402 PN79627 PQ05403 PN81433 PQ05404 PN82509 PQ05406 PN82921 PQ05407 PN82927 PQ05408 PN83330 PQ05409 PN83331 PQ05410 PN83647 PQ05411 PN84356 PQ05412 PN84602 PQ05413 PN84933 PQ05414 PN85698 PQ05416 PN86802 PQ05417 PN88042 PQ05418 PN88060 PQ05419 PN88546 PQ05420 PN90114 PQ05421 PN92710 PQ05422 PQ00281 PQ05423 PQ00493 PQ05424 PQ03384 PQ05425 PQ03667 PQ06265 PQ05823 PQ07133 PQ08297 PQ07271 PQ02149 PQ08634 PQ08183 CS/6000 1.1.1 ENTRY/6000 1.2.1 PTF UN94493 PTF UN94496 ------------- ----------- PN62244 PN62244 PN62310 PN62310 PN68216 PN68216 PN68740 PN68740 PN83589 PN88248 END OF FILE -----------
About IBM | Privacy | Terms of use | Contact |