MQSeries V5.2 Release Guide

Size: px
Start display at page:

Download "MQSeries V5.2 Release Guide"

Transcription

1 MQSeries Release Guide Version 5.2 GC

2

3 MQSeries Release Guide Version 5.2 GC

4 Note! Before using this information and the product it supports, be sure to read the general information under Appendix. Notices on page 85. Second edition (December 2000) This edition applies to the following products: v MQSeries for AIX, V5.2 v MQSeries for AS/400, V5.2 v MQSeries for HP-UX, V5.2 v MQSeries for Linux, V5.2 v MQSeries for Sun Solaris, V5.2 v MQSeries for Windows NT and Windows 2000, V5.2 and to all subsequent releases and modifications until otherwise indicated in new editions. Copyright International Business Machines Corporation 1999, All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

5 Contents About this book v Who this book is for v How to use this book v Terms used in this book v Chapter 1. New function in all V5.2 products 1 Performance enhancements MQSeries for Linux Application programming enhancements... 2 MQCMD_LEVEL_520 CommandLevel value 2 MQRFH2 Version-2 rules and formatting header Processing of CodedCharSetId fields in MQSeries headers C++ support for MQCNO Version 2 and Version Applications using the IMS bridge Object Authority Manager (OAM) enhancements Refreshing the OAM after changing a user s authorization Authorization data held on local queue.. 8 Installation Support for Java on MQSeries MQSeries clients Enhanced channel support Multiple thread support pipelining.. 10 Channel send exit programs reserving space User IDs with encrypted passwords Support for DHCP in queue manager clusters 14 When you don t know your queue manager s network address When you don t know the repository queue manager s name MQSC command syntax changes Programmable Command Formats (PCFs) 20 Command rcdmqimg issues media recovery messages synchronously Optional parameters RCDMQMIMG command for MQSeries for AS/ Queue manager cluster workload exits Dynamic space allocation for workload data records Navigating cluster workload records The MQSeries library Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only. 41 Microsoft Transaction Server (MTS) support 41 Installing MQSeries for Windows NT and Windows Launching the Default Configuration.. 41 Default Configuration for DHCP machines 41 Postcard application enhancements Custom services New command: amqmdain (MQSeries services control) Browsing the dead-letter header Guidelines for Windows When you get a group not found error 45 When you have problems with MQSeries and domain controllers When MQSeries appears to halt when reporting an error When Default Configuration gives errors 48 When you have problems with a Multilanguage system Applying security template files Chapter 3. New function in V5.2 UNIX systems only New function for UNIX systems Threaded applications Support for Websphere as an XA coordinator UNIX signal handling on MQSeries V5.2 products Unthreaded applications Threaded applications Fastpath (trusted) applications MQI function calls within signal handlers 56 Signals during MQI calls User exits and installable services New function for Sun Solaris only Sun Workshop C++ Compiler 5.0 and Communications support extended to include SNAP IX New function for AIX only Copyright IBM Corp. 1999, 2000 iii

6 Support for draft 10 threads Enhanced support for Communications Server for AIX V Chapter 4. New function in MQSeries for AS/400 V5.2 only CL commands ENDCCTJOB option to the ENDMQM (End message queue manager) CL command Exception handling Unthreaded applications Threaded applications Access to MQSeries objects Support for nonthreaded listener Appendix. Notices Trademarks Index Sending your comments to IBM iv MQSeries V5.2 Release Guide

7 About this book This book introduces all new function in MQSeries Version 5 Release 2. Who this book is for This book is for all users of any of the following products: v MQSeries for AIX, V5.2 v MQSeries for AS/400, V5.2 v MQSeries for HP-UX, V5.2 v MQSeries for Linux, V5.2 v MQSeries for Sun Solaris, V5.2 v MQSeries for Windows NT and Windows 2000, V5.2 How to use this book The descriptions of the new function in this book are in addition to, and must be used in conjunction with, the latest editions of the MQSeries cross-product books. These books are provided in softcopy form (Adobe Acrobat PDF and HTML) in the product package. Terms used in this book The terms click and right-click are used to describe item selection with the mouse. For keyboard alternatives refer to the Windows NT or Windows 2000 help. Copyright IBM Corp. 1999, 2000 v

8 vi MQSeries V5.2 Release Guide

9 Chapter 1. New function in all V5.2 products This chapter introduces the new function that applies to all MQSeries V5.2 products. It contains these sections: v Performance enhancements v MQSeries for Linux on page 2 v Application programming enhancements on page 2 v Object Authority Manager (OAM) enhancements on page 4 v Installation on page 9 v Enhanced channel support on page 10 v Support for DHCP in queue manager clusters on page 14 v Command rcdmqimg issues media recovery messages synchronously on page 21 v Queue manager cluster workload exits on page 22 v The MQSeries library on page 39 Performance enhancements Version 5.2 introduces performance enhancements to all the MQSeries products. Although no general statement can be made about how these enhancements might affect your applications, their primary aim is to improve queue manager throughput. The enhancements comprise improvements to: v The function accessed through the Message Queue Interface (MQI) v Channel performance v Writing persistent messages to the log v Application initialization and termination These improvements are described briefly below. You will recognize some of them in the function described later in this book, although others will be apparent only when you run your MQSeries applications. For a more detailed description of the performance measurements IBM has made with MQSeries V5.2, see the V5.2 Performance Report on the MQSeries Web site at MQI function The function accessed through the MQI has been optimized for better performance and makes better use of system services. Optimized MQI functions also contribute to the other improvements described in this section. Copyright IBM Corp. 1999,

10 Performance enhancements Channel performance Channels can now transfer messages more efficiently with a process called pipelining, which is described in Multiple thread support pipelining on page 10. Persistent messages Persistent messages are written to logs and queue data files. Writing to the log is more efficient with MQSeries V5.2, thereby enhancing the throughput of persistent messages. Application initialization and termination Application initialization involves obtaining resources from MQSeries; those resources are returned when the application is terminated. These operations are now less time-consuming, which can mean a significant improvement if your application processes a few messages only. The performance of your applications depends on many factors including, for example, whether messages are persistent or nonpersistent. That is why no general statement can be made about how your applications might be affected by the enhancements described briefly above. MQSeries for Linux MQSeries is now available for the Linux platform. See the MQSeries for Linux Quick Beginnings book for further information. Application programming enhancements The MQSeries V5.2 products provide several minor enhancements to the application programming interface. MQCMD_LEVEL_520 CommandLevel value MQCMD_LEVEL_520 is returned by: v MQSeries for AIX, V5.2 v MQSeries for AS/400, V5.2 v MQSeries for HP-UX, V5.2 v MQSeries for Linux, V5.2 v MQSeries for Sun Solaris, V5.2 v MQSeries for Windows NT and Windows 2000, V5.2 Refer to the MQSeries Application Programming Reference book for more information about the CommandLevel attribute for the queue manager. MQRFH2 Version-2 rules and formatting header MQRFH2, the version 2 rules and formatting header, is supported by the MQSeries V5.2 products. 2 MQSeries V5.2 Release Guide

11 Application programming MQRFH2 is the standard header: v Used by the MQSeries Integrator broker. v Used for message passing between MQSeries implementations of the Java Messaging Service (JMS) API. Refer to the MQSeries Application Programming Reference book for a description of the MQRFH2 header. Processing of CodedCharSetId fields in MQSeries headers The CodedCharSetId field in the MQMD and other MQSeries headers can have a new value, MQCCSI_INHERIT. As a result, the behavior of the existing value MQCCSI_Q_MGR, and of the MQPUT, MQPUT1, and MQGET calls, is slightly altered. For more information about these changes, read the description of the CodedCharSetId field of the MQMD and other MQSeries headers in the MQSeries Application Programming Reference book. The description of the MQCCSI_DEFAULT value of the CodedCharSetId field in the MQCFST and MQCFSL structures is now as follows: MQCCSI_DEFAULT Default coded character set identifier. The CodedCharSetId of the data in the String field is defined by the CodedCharSetId field in the header structure that precedes the MQCFH structure, or by the CodedCharSetId field in the MQMD if the MQCFH is at the start of the message. For a description of the MQCFST and MQCFSL structures, see the MQSeries Programmable System Management book. C++ support for MQCNO Version 2 and Version 3 Clients making connections with the ImqQueueManager class in the C++ interface can associate a channel definition with the connection. For details of the additions to the C++ interface, read the descriptions of the ImqQueueManager and ImqChannel classes in the MQSeries Using C++ book. This function is supported only when the Version field in MQCNO structure is set to MQCNO_VERSION_2 or higher. When the Version field in MQCNO structure is set to MQCNO_VERSION_3, the ImqQueueManager class in the C++ interface also supports connection tags. Refer to the MQSeries Using C++ book for more information. Applications using the IMS bridge Applications using the IMS bridge can obtain the transaction state in IMS architected form if the TranState field in the MQIIH (IMS information header) is set to MQITS_ARCHITECTED. Chapter 1. New function in all V5.2 products 3

12 Application programming Refer to the description of the MQIIH in the MQSeries Application Programming Reference book for more information, and to the MQSeries Application Programming Guide for guidance on how to use the MQITS_ARCHITECTED constant. Object Authority Manager (OAM) enhancements This section describes some enhancements to the Object Authority Manager (OAM). See the MQSeries System Administration book for a complete description of the OAM. Refreshing the OAM after changing a user s authorization In versions of MQSeries prior to V5.2, most changes to a user s authorization group membership made at the operating system level were not implemented by the OAM immediately, but took effect only after the queue manager was stopped and restarted. In MQSeries V5.2, you can request that the OAM s authorization group information be updated immediately, reflecting changes made at the operating system level, without needing to stop and restart the queue manager. Note: When you change authorizations with the setmqaut command, the OAM supplied with MQSeries implements such changes immediately. This change is implemented as follows: v The OAM has a new function, MQZ_REFRESH_CACHE, with a corresponding entry point, MQZID_REFRESH_CACHE. v The REFRESH SECURITY command is supported by the V5.2 products. v MQZ_INIT_AUTHORITY returns MQZAS_VERSION_3 for the V5.2 products. These enhancements are described fully in the remainder of this section. MQZ_REFRESH_CACHE function The authorization service provides an additional entry point for use by the queue manager: MQZ_REFRESH_CACHE Refresh all authorizations. This function is supplied as an installable service Refer to the MQSeries Programmable System Management book for a complete description of the authorization service interface and for information about installable services. 4 MQSeries V5.2 Release Guide

13 The reference information for the MQZ_REFRESH_CACHE installable service is: This function is provided by an MQZAS_VERSION_3 authorization service component, and is invoked by the queue manager to refresh the list of authorizations held internally by the component. The function identifier for this function (for MQZEP) is MQZID_REFRESH_CACHE (8L). Object Authority Manager Syntax: MQZ_REFRESH_CACHE (QMgrName, ComponentData, Continuation, CompCode, Reason) Parameters: QMgrName (MQCHAR48) input Queue manager name. The name of the queue manager calling the component. This name is padded with blanks to the full length of the parameter; the name is not terminated by a null character. The queue-manager name is passed to the component for information; the authorization service interface does not require the component to make use of it in any defined manner. ComponentData (MQBYTE ComponentDataLength) input/output Component data. This data is kept by the queue manager on behalf of this particular component; any changes made to it by any of the functions provided by this component are preserved, and presented the next time one of this component s functions is called. The length of this data area is passed by the queue manager in the ComponentDataLength parameter of the MQZ_INIT_AUTHORITY call. Continuation (MQLONG) output Continuation indicator set by component. The following values can be specified: MQZCI_DEFAULT Continuation dependent on queue manager. For MQZ_REFRESH_CACHE this has the same effect as MQZCI_CONTINUE. MQZCI_CONTINUE Continue with next component. Chapter 1. New function in all V5.2 products 5

14 Object Authority Manager MQZCI_STOP Do not continue with next component. CompCode (MQLONG) output Completion code. It is one of the following: MQCC_OK Successful completion. MQCC_FAILED Call failed. Reason (MQLONG) output Reason code qualifying CompCode. If CompCode is MQCC_OK: MQRC_NONE (0, X 000 ) No reason to report. If CompCode is MQCC_FAILED: MQRC_SERVICE_ERROR (2289, X 8F1 ) Unexpected error occurred accessing service. For more information on this reason code, see the MQSeries Application Programming Reference book. C invocation: MQZ_REFRESH_CACHE (QMgrName, ComponentData, &Continuation, &CompCode, &Reason); Declare the parameters as follows: MQCHAR48 QMgrName; /* Queue manager name */ MQBYTE ComponentData[n]; /* Component data */ MQLONG Continuation; /* Continuation indicator set by component */ MQLONG CompCode; /* Completion code */ MQLONG Reason; /* Reason code qualifying CompCode */ RFRMQMAUT command for MQSeries for AS/400 The RFRMQMAUT, Refresh Security command is added to the CL Security Commands for MQSeries for AS/400. The syntax of this command is: RFRMQMAUT MQMNAME (queue-manager-name) Refer to the MQSeries for AS/400 online help for more information about CL commands and their syntax. 6 MQSeries V5.2 Release Guide

15 REFRESH SECURITY Programmable Command Format (PCF) The reference material for the PCF of the REFRESH SECURITY command is provided below. Refer to the MQSeries Programmable System Management book for more information about PCFs. The list of PCF commands and responses is extended with: Security command Refresh Security The Refresh Security (MQCMD_REFRESH_SECURITY) command refreshes the list of authorizations held internally by the authorization service component. This PCF is supported if you are using the V5.2 products only. Required parameters: None Optional parameters: None Error codes: In addition to the values for any command shown in the MQSeries Programmable System Management book, for this command the following may be returned in the response format header: MQRCCF_PARM_COUNT_TOO_BIG Parameter count too big. REFRESH SECURITY MQSC command The syntax for the V5.2 products is: Object Authority Manager REFRESH SECURITY ( * ) The optional * parameter specifies that the security refresh is to be performed for all resource classes. Refer to the MQSeries MQSC Command Reference book for a complete description of the REFRESH SECURITY command. The Table of Commands for security administration in the same book is amended to show that: v This command is supported on AIX, OS/400, HP-UX, Linux, OS/390, Sun Solaris, and Windows NT only. v There is a PCF equivalent for REFRESH SECURITY. Chapter 1. New function in all V5.2 products 7

16 Object Authority Manager Authorization data held on local queue Queue managers running the OAM provided with MQSeries V5.2 store authorization data on a local queue, called SYSTEM.AUTH.DATA.QUEUE. This name is added to the list of reserved queue names in the MQSeries MQSC Command Reference book. Authorization data is managed by the amqzfuma process (amqzfuma.exe for Windows NT and Windows 2000). When you stop and remove queue managers manually, as described in Appendix E of the MQSeries System Administration book, amqzfuma (AMQZFUMA.EXE) should be ended after amqzlaa0 (AMQZLAA0.EXE) and before amqzxma0 (AMQZXMA0.EXE). AMQZFUMA is added to the section in the MQSeries for AS/400 System Administration book, listing the MQSeries tasks that run when a queue manager is running. The function of AMQZFUMA is to Manage authorization data. The function provided by the OAM is unaffected by this change and queue managers are automatically created to use the Version 5.2 OAM as the default authorization service component. This version creates no new authorization files, and existing files are no longer updated or deleted. The section entitled Authorization files in Chapter 10 of the MQSeries System Administration book no longer applies. Migration All authorization data is migrated from the authorization files to the authorization queue the first time you restart the queue manager after installing Version 5.2. If the OAM detects a missing file and: v The authorization applies to a single object, the OAM gives the mqm group (Administrator for Windows NT and Windows 2000) access to the object and continues with the migration. Message AMQ5528 is written to the queue manager s error log. Refer to the MQSeries Messages book for more information about message AMQ5528. v The authorization applies to a class of objects, the OAM stops the migration. The queue manager does not start until the file has been replaced. When you still want to store authorization data in files This section tells you how you can continue to store authorization data in files. However, if you do so, the performance of the OAM can be affected. Storing authorization data on a local queue reduces the time required to check an authorization. The default OAM service module is amqzfu (amqzfu.dll for Windows NT and Windows 2000). Version 5.2 also provides the previous service module as amqzfu0 (amqzfu0.dll). There are two ways in which you can use the previous module to continue to store authorization data in files: 8 MQSeries V5.2 Release Guide

17 Object Authority Manager v Modify the Module attribute in the ServiceComponent stanza of the qm.ini file (registry entry for Windows NT and Windows 2000) to use amqzfu0 (amqzfu0.dll). Note that this option is possible only for queue managers created with a version of MQSeries prior to V5.2. v Replace the amqzfu module (amqzfu.dll) by the previous version. For example, you can do this by: 1. Removing the new amqzfu module 2. Renaming amqzfu0 as amqzfu Note: You can restore the new amqzfu module from the copy provided as amqzfu1 (amqzfu1.dll). Note Once you have created or restarted a queue manager with the new amqzfu module, you can no longer replace the amqzfu module (amqzfu.dll) with the previous version. The migration process, described above, is not reversible. You can view authorization data with the dspmqaut command. Refer to the MQSeries System Administration book for a complete description of this command. Installation This section tells you about installing support for Java on MQSeries and MQSeries clients for the V5.2 products. Support for Java on MQSeries Support for Java on MQSeries is separately installable from the CD-ROM included in this product package. Alternatively, you can download support for Java on MQSeries from the MQSeries Web site at where the latest version of this support is always available. MQSeries clients The following MQSeries clients are available on the Clients CD-ROM included in the V5.2 product package: v MQSeries client for AIX v MQSeries client for HP-UX v MQSeries client for Linux v MQSeries client for Sun Solaris v MQSeries client for Windows NT and Windows 2000 v MQSeries client for Windows 95 and Windows 98 Chapter 1. New function in all V5.2 products 9

18 Channel support Other clients can be obtained from the MQSeries Web site. Enhanced channel support The V5.2 products provide enhancements to MQSeries channel support that: v Allow a message channel agent (MCA) to use multiple threads. v Allow channel send exit programs to add their own data prior to transmission. Advice is added for User IDs with encrypted passwords on page 14. Multiple thread support pipelining With MQSeries V5.2, you can optionally allow a message channel agent (MCA) to transfer messages using multiple threads. This process, called pipelining, enables the MCA to transfer messages more efficiently, with fewer wait states, which improves channel performance. For Version 5.2, each MCA is limited to a maximum of two threads. Refer to the MQSeries Intercommunication book for a complete description of channels and how they operate. You control pipelining with the PipeLineLength parameter in the qm.ini file. This parameter is added to the CHANNELS stanza: PipeLineLength=1 number This attribute specifies the maximum number of concurrent threads a channel will use. The default is 1. Any value greater than 1 will be treated as 2. With MQSeries for Windows NT and Windows 2000, V5.2, use the MQSeries Services snap-in to set the PipeLineLength parameter in the registry. Refer to the MQSeries System Administration book for a complete description of the CHANNELS stanza. Notes: 1. PipeLineLength applies only to the V5.2 products. 2. Pipelining is effective only for TCP/IP channels. When you use pipelining, the queue managers at both ends of the channel must be configured to have a PipeLineLength greater than 1. Channel exit considerations Note that pipelining can cause some exit programs to fail, because: v Exits might not be called serially. v Exits might be called alternately from different threads. 10 MQSeries V5.2 Release Guide

19 Check the design of your exit programs before you use pipelining: v Exits must be reentrant at all stages of their execution. v When you use MQI calls, remember that MQI handles are thread-specific. Consider a message exit that opens a queue and uses its handle for MQPUT calls on all subsequent invocations of the exit. This fails in pipelining mode because the exit is called from different threads. To avoid this failure, keep a queue handle for each thread and check the thread identifier each time the exit is invoked. Channel send exit programs reserving space Channel support You can use send and receive exits to transform the data before transmission. With MQSeries V5.2, channel send exit programs can add their own data about the transformation by reserving space in the transmission buffer. This data is processed by the receive exit program and then removed from the buffer. For example, you might want to encrypt the data and add a security key for decryption. Refer to the MQSeries Intercommunication book for a complete description of channel exit programs. How you reserve space and use it Channel exit programs are passed an MQCXP parameter block. With MQSeries V5.2 a new field, ExitSpace, is added to the MQCXP structure, as described in MQCXP Channel exit parameter structure on page 12. When the send exit program is called for initialization, set the ExitSpace field to the number of bytes to be reserved. ExitSpace can be set only during initialization, that is when ExitReason has the value MQXR_INIT. When the send exit is invoked immediately before transmission, with ExitReason set to MQXR_XMIT, ExitSpace bytes are reserved in the transmission buffer. The send exit need not use all of the reserved space. It can use less than ExitSpace bytes or, if the transmission buffer is not full, the exit can use more than the amount reserved. Refer to the MQSeries Intercommunication book for information about the maximum transmission size. When setting the value of ExitSpace, you must leave at least 1 KB for message data in the transmission buffer. Note that channel performance can be affected if reserved space is used for large amounts of data. What happens at the receiving end of the channel Channel receive exit programs must be set up to be compatible with the corresponding send exits. Receive exits must know the number of bytes in the reserved space and must remove the data in that space. Chapter 1. New function in all V5.2 products 11

20 Channel support Multiple send exits You can specify a list of send and receive exit programs to be run in succession. MQSeries maintains a total for the space reserved by all of the send exits. This total space must leave at least 1 KB for message data in the transmission buffer. The following example shows how space is allocated for three send exits, called in succession: 1. When called for initialization: v Send exit A reserves 1 KB. v Send exit B reserves 2 KB. v Send exit C reserves 3 KB. 2. The maximum transmission size is 32 KB and the user data is 5 KB long. 3. Exit A is called with 5 KB of data; up to 27 KB are available, because 5KB is reserved for exits B and C. Exit A adds 1KB, the amount it reserved. 4. Exit B is called with 6 KB of data; up to 29 KB are available, because 3KB is reserved for exit C. Exit B adds 1KB, less than the 2KB it reserved. 5. Exit C is called with 7 KB of data; up to 32 KB are available. Exit C adds 10K, more than the 3KB it reserved. This is valid, because the total amount of data, 17 KB, is less than the 32KB maximum. MQCXP Channel exit parameter structure Refer to the MQSeries Intercommunication book for a complete description of the MQCXP structure. The following value is added to the description of the Version field: MQXCP_VERSION_5 Version-5 channel exit parameter structure. The field has this value in the following environments: AIX, HP-UX, Linux, AS/400, Sun Solaris, Windows NT. Send and receive exits are also supported for MQSeries clients. A new field, ExitSpace, is added to the end of the MQCXP structure. ExitSpace (MQLONG) Number of bytes in transmission buffer reserved for exit to use. This field is relevant only for a send exit. It specifies the amount of space in bytes that the MCA will reserve in the transmission buffer for the exit to use. This allows the exit to add data to the transmission buffer, for use by a complementary receive exit at the other end. The data added by the send exit must be removed by the receive exit. Note: This facility should not be used to send large amounts of data, as this may degrade the performance of the channel. 12 MQSeries V5.2 Release Guide

21 Channel support By setting ExitSpace, the exit is guaranteed that there will always be at least that number of bytes available in the transmission buffer for the exit to use. However, the exit can use less than the amount reserved, or more than the amount reserved if there is space available in the transmission buffer. The exit space in the buffer is provided after the existing data. ExitSpace can be set by the exit only when ExitReason has the value MQXR_INIT; in all other cases the value returned by the exit is ignored. On input to the exit, ExitSpace is zero for the MQXR_INIT call, and is the value returned by the MQXR_INIT call in other cases. If any of the following applies, the MCA outputs an error message and closes the channel: v The ExitSpace value returned by the MQXR_INIT call is negative. v When MQXR_INIT is called, there is less than 1 KB available in the transmission buffer for message data after reserving the requested exit space for all of the send exits in the chain. v During data transfer the exits in the send exit chain allocate more user space than they reserved such that there is less than 1 KB left in the transmission buffer for message data. The limit of 1 KB allows the control and administrative flows that occur on a channel to be processed by any chain of send exits without a need for them ever to be segmented. This is an input/output field to the exit if ExitReason is MQXR_INIT, and an input field in all other cases. The field is not present if Version is less than MQCXP_VERSION_5. C declaration: For illustration purposes, only the end of the C declaration is shown. MQLONG ExitNumber; /* Exit number */ MQLONG ExitSpace; /* Number of bytes in transmission buffer for exit to use */ } MQCXP; Chapter 1. New function in all V5.2 products 13

22 Channel support User IDs with encrypted passwords The following advice is added to the description of the UserID (USERID) channel attribute in Chapter 6 of the MQSeries Intercommunication book, and to the description of the USERID parameter to the DEFINE CHANNEL command in Chapter 2 of the MQSeries MQSC Command Reference book. On the receiving end, if passwords are kept in encrypted format and the LU 6.2 software is using a different encryption method, an attempt to start the channel fails with invalid security details. You can avoid this by modifying the receiving SNA configuration to either: v Turn off password substitution, or v Define a security user ID and password. Support for DHCP in queue manager clusters MQSeries V5.2 includes two enhancements pertaining to the use of clusters. v The first enables you to define a cluster-receiver channel without specifying your queue manager s network address. v The second enables you to define a cluster-sender channel without specifying the name of the repository queue manager. The purpose of these two enhancements is further to simplify the task of the system administrator. It is no longer necessary for you to know the network address of your queue manager, nor the names of the other queue managers in the cluster. This section describes these two enhancements. Read it in conjunction with the MQSeries Queue Manager Clusters book, which describes the existing function in full. Changes to the MQSeries MQSC Command Reference and MQSeries Programmable System Management books, resulting from these enhancements, are described at the end of this section. When you don t know your queue manager s network address When the network protocol that you are using is TCP/IP it is no longer necessary to specify the network address of your queue manager when you define a cluster-receiver channel. You can issue the DEFINE CHANNEL command without supplying a value for CONNAME. MQSeries generates a CONNAME for you, assuming the default port and using the current IP address of the system. The generated CONNAME is always in the dotted-decimal form, rather than in the form of an alphanumeric DNS host name. This facility is useful when you have machines using Dynamic Host Configuration Protocol (DHCP). In earlier releases of MQSeries, you needed to 14 MQSeries V5.2 Release Guide

23 update definitions manually each time DHCP issued a new IP address. With MQSeries V5.2 you do not need to make any changes to your definitions when your IP address changes. Example of how to use this Consider the second task described in the MQSeries Queue Manager Clusters book, Adding a new queue manager to a cluster. Let us suppose that the queue manager to be added, PARIS, is on a system that runs DHCP. The steps you must take to perform this task are as follows. 1. Prepare the PARIS queue manager: This step is unaltered. 2. Determine which full repository PARIS should refer to first: This step is unaltered. Note: The remaining steps may be performed in any order. Before proceeding with these steps make sure that queue manager PARIS is started. Also, start a listener program on queue manager PARIS. 3. Define a CLUSRCVR channel on queue manager PARIS: On PARIS, define: DEFINE CHANNEL(TO.PARIS) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CLUSTER(INVENTORY) This advertises the queue manager s availability to receive messages from other queue managers in the cluster INVENTORY. There is no need to specify the CONNAME, although you could, if you wish, specify CONNAME(' '). MQSeries generates the CONNAME value using the current IP address of the system. 4. Define a CLUSSDR channel on queue manager PARIS: This step is unaltered. On PARIS, make the following definition: DEFINE CHANNEL(TO.LONDON) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME(LONDON.CHSTORE.COM) CLUSTER(INVENTORY) The cluster achieved by task 2 The cluster set up by this task looks like this: DHCP in queue manager clusters Chapter 1. New function in all V5.2 products 15

24 DHCP in queue manager clusters LONDON TO.NEWYORK NEWYORK TO.LONDON INVENTQ TO.PARIS PARIS Figure 1. The INVENTORY cluster with three queue managers By making only two definitions, a CLUSRCVR definition and a CLUSSDR definition, we have added the queue manager PARIS to the cluster. What are the effects? Because you specified a blank for the CONNAME on the CLUSRCVR definition, MQSeries generates a CONNAME from the IP address of the system. Only the generated CONNAME is stored in the repositories. Other queue managers in the cluster do not know that the CONNAME was originally blank. If you issue the DISPLAY CLUSQMGR command you will see the generated CONNAME. However, if you issue the DISPLAY CHANNEL command from the local queue manager, you will see that the CONNAME is blank. If the queue manager is stopped and restarted with a different IP address, because of DHCP, MQSeries regenerates the CONNAME and updates the repositories accordingly. 16 MQSeries V5.2 Release Guide

25 DHCP in queue manager clusters Note Auto-defined cluster-sender channels take their attributes from those specified in the corresponding cluster-receiver channel definition on the receiving queue manager. Even if there is a manually-defined cluster-sender channel, its attributes are automatically modified to ensure that they match those on the corresponding cluster-receiver definition. Beware, therefore, that you could, for example, define a CLUSRCVR without specifying a port number in the CONNAME parameter, whilst manually defining a CLUSSDR that does specify a port number. When the auto-defined CLUSSDR replaces the manually defined one, the port number (taken from the CLUSRCVR) becomes blank. The default port number would be used and the channel would fail. Migration This enhancement to MQSeries raises three migration questions: v How can I upgrade an existing queue manager to a system that uses DHCP? v How will queue managers on previous versions of MQSeries handle it? v Can I choose a queue manager to be a repository if it is on a system that uses DHCP? Upgrading an existing queue manager to a system that uses DHCP: These are the steps: 1. Suspend the queue manager 2. Stop the cluster-receiver channel on the queue manager 3. Alter the CLUSRCVR definition to remove the CONNAME or set it to blank 4. Restart the queue manager How queue managers on previous versions of MQSeries handle it: Other queue managers in a cluster do not know that the CLUSRCVR was defined with a blank CONNAME. The repositories notify them of the generated CONNAME only. Cluster repositories and DHCP: If a queue manager is to host a cluster s repository, you need to know its host name or its IP address. You have to specify this information in the CONNAME parameter when you make the CLUSSDR definition on other queue managers joining the cluster. If you use DHCP, the IP address is subject to change because DHCP allocates a new IP address each time you restart a system. Therefore, it would not be possible to specify the IP address in the CLUSSDR definitions. Even if all your CLUSSDR definitions specified the hostname rather than the IP address, the Chapter 1. New function in all V5.2 products 17

26 DHCP in queue manager clusters definitions would still not be reliable. This is because DHCP does not necessarily update the DNS directory entry for the host, with the new address. Note Unless you have installed software that guarantees to keep your DNS directory up-to-date, you should not nominate queue managers as repositories if they are on systems that use DHCP. When you don t know the repository queue manager s name It is no longer necessary to specify the repository queue manager s name when you define a cluster-sender channel. So long as you know the naming convention used for channels in your cluster you can make a CLUSSDR definition using the +QMNAME+ construction. MQSeries substitutes the correct repository queue manager name in place of +QMNAME+. The resulting channel name is truncated to 20 characters. Clearly this works only if your convention for naming channels includes the name of the queue manager. For example, if you have a repository queue manager called QM1 with a cluster-receiver channel called TO.QM1.ALPHA, another queue manager can define a cluster-sender channel to this queue manager, but specify the channel name as TO.+QMNAME+.ALPHA. If you use the same naming convention for all your channels, be aware that only one +QMNAME+ definition can exist at one time. Example of how to use this Again, consider the second task described in the MQSeries Queue Manager Clusters book. Let us suppose that you do not know the name of the repository queue manager on the system in London, but you do know the channel-naming convention in use. The steps you must take to perform this task are as follows. 1. Prepare the PARIS queue manager: This step is unaltered. 2. Determine which full repository PARIS should refer to first: This step is unaltered. Note: The remaining steps may be performed in any order. Before proceeding with these steps make sure that queue manager PARIS is started. Also, start a listener program on queue manager PARIS. 18 MQSeries V5.2 Release Guide

27 DHCP in queue manager clusters 3. Define a CLUSRCVR channel on queue manager PARIS: On PARIS, define: DEFINE CHANNEL(TO.PARIS) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME(PARIS.CHSTORE.COM) CLUSTER(INVENTORY) 4. Define a CLUSSDR channel on queue manager PARIS: Although you know the naming convention for channels in the cluster, you do not know the name of the repository queue manager. On PARIS, make the following definition: DEFINE CHANNEL(TO.+QMNAME+) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME(LONDON.CHSTORE.COM) CLUSTER(INVENTORY) The cluster achieved by task 2 Again, we have added the queue manager PARIS to the cluster. What are the effects? On the PARIS queue manager, the CLUSSDR definition containing the string +QMNAME+ is stored in the partial repository. On the system whose CONNAME is LONDON.CHSTORE.COM (which you specified), MQSeries resolves the +QMNAME+ to the queue manager name (LONDON). MQSeries then matches the definition for a channel called TO.LONDON to the corresponding CLUSRCVR definition. MQSeries sends back the resolved channel name to the PARIS queue manager. At PARIS, the CLUSSDR channel definition for the channel called TO.+QMNAME+ is replaced by an internally-generated definition for TO.LONDON. This definition contains the resolved channel name, but otherwise is the same as the +QMNAME+ definition that you made. The cluster repositories are also brought up-to-date with the channel definition with the newly-resolved channel name. Notes: 1. The channel created with the +QMNAME+ name becomes inactive immediately. It is never used to transmit data. 2. Channel exits may see the channel name change between one invocation and the next. Migration It is not possible to define a CLUSSDR channel using the +QMNAME+ construction to a queue manager on an earlier version of MQSeries. The queue manager would not recognize the construction and would not be able to find the channel. Chapter 1. New function in all V5.2 products 19

28 DHCP in queue manager clusters MQSC command syntax changes These enhancements to the use of clusters alter the syntax of the DEFINE CHANNEL command. Read this description in conjunction with the description of the DEFINE CHANNEL command in the MQSeries MQSC Command Reference book. Note: These enhanced options are valid only if TRTYPE is TCP. Cluster-sender channel The parameter options for CHANNEL are changed. All other keywords and parameters are unaltered. DEFINE CHANNEL(string+QMNAME+) CHANNEL(string+QMNAME+string) CHANNEL(channel-name) Note: The string +QMNAME+ must be complete and in upper case. Another string can follow the +QMNAME+, but the resolved channel name will be truncated to 20 characters. Cluster-receiver channel The parameter options for CONNAME are changed. All other keywords and parameters are unaltered. CONNAME( ) CONNAME(string) Programmable Command Formats (PCFs) These enhancements to the queue manager clusters alter the definitions for two of the parameters for the Create Channel (MQCMD_CREATE_CHANNEL) command. Refer to the MQSeries Programmable System Management book for a complete description of this command. ChannelName (MQCFST) Channel name (parameter identifier: MQCACH_CHANNEL_NAME). For a ChannelType of MQCHT_CLUSRCVR and a TransportType of MQXPT_TCP, this parameter can contain the string +QMNAME+. ConnectionName (MQCFST) Connection name (parameter identifier: MQCACH_CONNECTION_NAME). 20 MQSeries V5.2 Release Guide

29 DHCP in queue manager clusters For a ChannelType of MQCHT_CLUSSDR and a TransportType of MQXPT_TCP, this parameter can be blank. Command rcdmqimg issues media recovery messages synchronously MQSeries V5.2 simplifies the process of managing your log files for recovery and restart. The rcdmqimg command writes an image of one or more MQSeries objects to the log for use in media recovery. In the MQSeries V5.2 products, rcdmqimg has an additional flag, the l flag, that causes messages AMQ7467 and AMQ7468 to be issued when rcdmqimg completes. Although the queue manager will still issue these two messages when it periodically takes a checkpoint, you do not need to wait for it to do so when you use rcdmqimg with the l flag. Message AMQ7467 contains the name of the oldest log file needed to restart the queue manager. Message AMQ7468 contains the name of the oldest log file needed to do media recovery. You can use this information to archive and delete files older than those identified by these messages. Read the MQSeries System Administration book for more information about managing log files and for a complete description of the rcdmqimg command. The revised syntax of this command is: rcdmqimg -m QMgrName -z -l -t ObjectType GenericObjName Optional parameters Add the following optional parameter: l Requests that the log file information for the queue manager is issued when the command completes. Two messages, AMQ7467 and AMQ7468, are issued to the error log and the standard error destination. These messages contain the names of the log files that must be available to restart the queue manager and to perform media recovery for all objects owned by the queue manager. Notes: 1. When issuing a sequence of rcdmqimg commands, include the l parameter only on the last command in the sequence. The log file information is then gathered once only. Chapter 1. New function in all V5.2 products 21

30 rcdmqimg 2. When both the z and l parameters are included, the AMQ7467 and AMQ7468 messages are sent to the error logs but not to the standard error destination. If no objects are processed, no messages are issued to either location. RCDMQMIMG command for MQSeries for AS/400 The RCDMQMIMG, Record MQM Object Image command has an additional parameter, DSPJRNDATA, described below. Refer to the MQSeries for AS/400 System Administration book for a discussion of media images and to the MQSeries for AS/400 online help for more information about CL commands and their syntax. The help text for the DSPJRNDATA parameter is: Display Journal Receiver Data (DSPJRNDATA) Help Specifies whether additional messages should be written to the job log when the command completes to inform the user about the journal receivers that are still required by MQSeries. The possible values are: *NO No messages are written to the job log. This is the default option. *YES Messages are sent to the job log when the command completes. The messages contain details about the journal receivers that are required by MQSeries. Queue manager cluster workload exits MQSeries V5.2 enhances the operation of cluster workload exit programs. See the MQSeries Queue Manager Clusters book for guidance on cluster workload management and workload exit programs. Dynamic space allocation for workload data records MQSeries makes an initial space allocation for the repository that holds workload management records. With V5.2, the allocation is increased dynamically. In previous versions, the space allocation remained fixed. When the size of the repository is dynamic, the offset fields in the workload records contain handles. When the total size is fixed, these fields contain true physical offsets. This affects how your workload exit program navigates the records in the repository. Dynamic space allocation is the default option, but if you have written your own cluster workload exit program for versions prior to V5.2, and you do not want to change it, you must set the repository size to be STATIC. 22 MQSeries V5.2 Release Guide

31 Queue manager clusters Note If you want to change your cluster workload exit program to navigate records in a dynamically allocated repository, you must use the MQXCLWLN call, described in Navigating cluster workload records. You set the repository size with the ClusterCacheType parameter in the qm.ini file. This parameter is added to the TuningParameters stanza: ClusterCacheType=DYNAMIC STATIC Specify DYNAMIC if you want the size of the workload record repository to be increased automatically. This is the default option. Specify STATIC if you want the total size of the workload record repository to remain fixed at its initial value. With MQSeries for Windows NT and Windows 2000, V5.2, use the MQSeries Services snap-in to set the ClusterCacheType parameter in the registry. Refer to the MQSeries System Administration book for more information about the qm.ini file. Navigating cluster workload records This section describes the use of the MQXCLWLN call for navigating cluster workload records and also documents: v The current version of MQWXP Cluster workload exit parameter structure on page 26 v Changes to MQWDR - Cluster workload destination-record structure on page 37 v Changes to MQWQR - Cluster workload queue-record structure on page 37 v Changes to MQWCR - Cluster workload cluster-record structure on page 38 You can use the MQXCLWLN call for both types of repository, that is, whether the ClusterCacheType is set to DYNAMIC or STATIC. Your workload exit program passes information about a record in the chain and the call returns the address of the next record in the chain. The MQXCLWLN call is defined in MQXCLWLN - Cluster workload navigate records on page 24. If your cluster workload exit program expects fields to contain true physical offsets, it will not work when the ClusterCacheType is set to DYNAMIC. When your exit program is called with the ExitReason field in the version-2 MQWXP Chapter 1. New function in all V5.2 products 23

32 MQXCLWLN exit parameter structure set to MQXR_INIT, return the value MQXR2_STATIC_CACHE in the ExitResponse2 field. This response causes the queue manager to write to the error log or to display a message on the operator console. The queue manager does not call the exit again until ExitReason is set to MQXR_TERM. See MQWXP Cluster workload exit parameter structure on page 26 for a full description of the version-2 MQWXP exit parameter structure, including the use of the ExitResponse2 field. Refer to the MQSeries Queue Manager Clusters book for further information about the cluster workload exit and the data structures it uses. MQXCLWLN - Cluster workload navigate records The MQXCLWLN call is used to navigate through the chains of MQWDR, MQWQR, and MQWCR records stored in the cluster cache. The cluster cache is an area of main storage used to store information relating to the cluster. This call is supported in the following environments: AIX, HP-UX, Linux, AS/400, Sun Solaris, and Windows NT. Syntax: MQXCLWLN (ExitParms, CurrentRecord, NextOffset, NextRecord, CompCode, Reason) Parameters: The MQXCLWLN call has the following parameters. ExitParms (MQWXP) input/output Exit parameter structure. This is the parameter structure that was passed to the exit when the exit was invoked. CurrentRecord (MQPTR) input Address of current record. This is the address of the record currently being examined by the exit. The record must be one of the following types: v Cluster workload destination record (MQWDR) v Cluster workload queue record (MQWQR) v Cluster workload cluster record (MQWCR) NextOffset (MQLONG) input Offset of next record. This is the offset of the next record or structure. NextOffset is the value of the appropriate field in the current record, and must be the value of one of the following fields: 24 MQSeries V5.2 Release Guide

33 v ChannelDefOffset field in MQWDR v ClusterRecOffset field in MQWDR v ClusterRecOffset field in MQWQR v ClusterRecOffset field in MQWCR NextRecord (MQPTR) output Address of next record or structure. This is the address of the next record or structure. If CurrentRecord is the address of an MQWDR, and NextOffset is the value of the ChannelDefOffset field, NextRecord is the address of the channel definition structure MQCD. If there is no next record or structure, the queue manager sets NextRecord to the null pointer, and the call returns completion code MQCC_WARNING and reason code MQRC_NO_RECORD_AVAILABLE. CompCode (MQLONG) output Completion code. It is one of the following: MQCC_OK Successful completion. MQCC_WARNING Warning (partial completion). MQCC_FAILED Call failed. Reason (MQLONG) output Reason code qualifying CompCode. If CompCode is MQCC_OK: MQRC_NONE (0, X'000') No reason to report. If CompCode is MQCC_WARNING: MQRC_NO_RECORD_AVAILABLE (2359, X'937') No record available. If CompCode is MQCC_FAILED: MQRC_CURRENT_RECORD_ERROR (2357, X'935') Current-record parameter not valid. MQRC_ENVIRONMENT_ERROR (2012, X'7DC') Call not valid in environment. MQRC_NEXT_OFFSET_ERROR (2358, X'936') Next-offset parameter not valid. MQRC_WXP_ERROR (2356, X'934') Workload exit parameter structure not valid. MQXCLWLN Chapter 1. New function in all V5.2 products 25

34 MQXCLWLN Usage notes: 1. If the cluster cache is dynamic, the MQXCLWLN call must be used to navigate through the records; the exit will terminate abnormally if simple pointer-and-offset arithmetic is used to navigate through the records. If the cluster cache is static, the MQXCLWLN call need not be used to navigate through the records. However, it is recommended that MQXCLWLN be used even when the cache is static, as this allows migration to a dynamic cache without needing to change the cluster workload exit. C invocation: MQXCLWLN (&ExitParms, CurrentRecord, NextOffset, &NextRecord, &CompCode, &Reason); Declare the parameters as follows: MQWXP ExitParms; /* Exit parameter structure */ MQPTR CurrentRecord; /* Address of current record */ MQLONG NextOffset; /* Offset of next record */ MQPTR NextRecord; /* Address of next record or structure */ MQLONG CompCode; /* Completion code */ MQLONG Reason; /* Reason code qualifying CompCode */ MQWXP Cluster workload exit parameter structure The following table summarizes the fields in the structure. Table 1. Fields in MQWXP Field Description Page StrucId Structure identifier 27 Version Structure version number 27 ExitId Type of exit 28 ExitReason Reason for invoking exit 28 ExitResponse Response from exit 29 ExitResponse2 Secondary response from exit 30 Feedback Feedback code 30 ExitUserArea Exit user area 31 ExitData Exit data 31 MsgDescPtr Address of message descriptor (MQMD) 31 MsgBufferPtr Address of buffer containing some or all of the 32 message data MsgBufferLength Length of buffer containing message data 32 MsgLength Length of complete message MQSeries V5.2 Release Guide

35 MQWXP structure Table 1. Fields in MQWXP (continued) Field Description Page QName Name of queue 32 QMgrName Name of local queue manager 32 DestinationCount Number of possible destinations 32 DestinationChosen Destination chosen 33 DestinationArrayPtr Address of an array of pointers to destination 33 records (MQWDR) QArrayPtr Address of an array of pointers to queue 33 records (MQWQR) Context Context information 33 CacheType Type of cluster cache 34 The MQWXP structure describes the information that is passed to the cluster workload exit. This structure is supported in the following environments: AIX, Compaq Tru64 UNIX, HP-UX, OS/390, AS/400, OS/2, Sun Solaris, and Windows NT. Fields: StrucId (MQCHAR4) Structure identifier. The value is: MQWXP_STRUC_ID Identifier for cluster workload exit parameter structure. For the C programming language, the constant MQWXP_STRUC_ID_ARRAY is also defined; this has the same value as MQWXP_STRUC_ID, but is an array of characters instead of a string. This is an input field to the exit. Version (MQLONG) Structure version number. The value is one of the following: MQWXP_VERSION_1 Version-1 cluster workload exit parameter structure. This version is supported in all environments. Chapter 1. New function in all V5.2 products 27

36 MQWXP structure MQWXP_VERSION_2 Version-2 cluster workload exit parameter structure. This version is supported in the following environments: AIX, HP-UX, Linux, AS/400, Sun Solaris, Windows NT. Fields that exist only in the more-recent version of the structure are identified as such in the descriptions that follow. The following constant specifies the version number of the current version: MQWXP_CURRENT_VERSION Current version of cluster workload exit parameter structure. Note: When a new version of the MQWXP structure is introduced, the layout of the existing part is not changed. The exit should therefore check that the version number is equal to or greater than the lowest version which contains the fields that the exit needs to use. This is an input field to the exit. ExitId (MQLONG) Type of exit. This indicates the type of exit being called. The value is: MQXT_CLUSTER_WORKLOAD_EXIT Cluster workload exit. This type of exit is supported in the following environments: AIX, Compaq Tru64 UNIX, HP-UX, OS/2, OS/390, AS/400, Sun Solaris, and Windows NT. This is an input field to the exit. ExitReason (MQLONG) Reason for invoking exit. This indicates the reason why the exit is being called. Possible values are: MQXR_INIT Exit initialization. This indicates that the exit is being invoked for the first time. It allows the exit to acquire and initialize any resources that it may need (for example: main storage). MQXR_TERM Exit termination. This indicates that the exit is about to be terminated. The exit should free any resources that it may have acquired since it was initialized (for example: main storage). 28 MQSeries V5.2 Release Guide

37 MQWXP structure MQXR_CLWL_OPEN Called from MQOPEN processing. MQXR_CLWL_PUT Called from MQPUT or MQPUT1 processing. MQXR_CLWL_MOVE Called from MCA when the channel state has changed. MQXR_CLWL_REPOS Called from MQPUT or MQPUT1 processing for a repository-manager PCF message. MQXR_CLWL_REPOS_MOVE Called from MCA for a repository-manager PCF message when the channel state has changed. This is an input field to the exit. ExitResponse (MQLONG) Response from exit. This is set by the exit to indicate whether processing of the message should continue. It must be one of the following: MQXCC_OK Continue normally. This indicates that processing of the message should continue normally. DestinationChosen identifies the destination to which the message should be sent. MQXCC_SUPPRESS_FUNCTION Suppress function. This indicates that processing of the message should be discontinued: v For MQXR_CLWL_OPEN, MQXR_CLWL_PUT, and MQXR_CLWL_REPOS invocations, the MQOPEN, MQPUT, or MQPUT1 call fails with completion code MQCC_FAILED and reason code MQRC_STOPPED_BY_CLUSTER_EXIT. v For MQXR_CLWL_MOVE and MQXR_CLWL_REPOS_MOVE invocations, the message is placed on the dead-letter queue. MQXCC_SUPPRESS_EXIT Suppress exit. This indicates that processing of the current message should continue normally, but that the exit should not be invoked again until termination of the queue manager. The queue manager processes subsequent messages as if the ClusterWorkloadExit Chapter 1. New function in all V5.2 products 29

38 MQWXP structure queue-manager attribute were blank. DestinationChosen identifies the destination to which the current message should be sent. If any other value is returned by the exit, the queue manager processes the message as if MQXCC_SUPPRESS_FUNCTION had been specified. This is an output field from the exit. ExitResponse2 (MQLONG) Secondary response from exit. This is set to zero on entry to the exit. It can be set by the exit to provide further information to the queue manager. When ExitReason has the value MQXR_INIT, the exit can set one of the following values in ExitResponse2: MQXR2_STATIC_CACHE Exit requires a static cluster cache. If the exit returns this value, the exit need not use the MQXCLWLN call to navigate the chains of records in the cluster cache, but the cache must be static. If the exit returns this value and the cluster cache is dynamic, the exit cannot navigate correctly through the records in the cache. In this situation, the queue manager processes the return from the MQXR_INIT call as though the exit had returned MQXCC_SUPPRESS_EXIT in the ExitResponse field. MQXR2_DYNAMIC_CACHE Exit can operate with either a static cache or a dynamic cache. If the exit returns this value, the exit must use the MQXCLWLN call to navigate the chains of records in the cluster cache. Failure to do this is likely to result in the exit terminating abnormally. If the exit does not set this field, or sets a value which is neither of the above, MQXR2_STATIC_CACHE is assumed. This is an input/output field to the exit. Feedback (MQLONG) Reserved. This is a reserved field. The value is zero. Reserved (MQLONG) Reserved. This is a reserved field. The value is zero. 30 MQSeries V5.2 Release Guide

39 ExitUserArea (MQBYTE16) Exit user area. This is a field that is available for the exit to use. It is initialized to MQXUA_NONE (binary zero) before the first invocation of the exit, and thereafter any changes made to this field by the exit are preserved across the invocations of the exit that occur between the MQCONN call and the matching MQDISC call. The field is reset to MQXUA_NONE when the MQDISC call occurs. The first invocation of the exit is indicated by the ExitReason field having the value MQXR_INIT. The following value is defined: MQXUA_NONE No user information. The value is binary zero for the length of the field. For the C programming language, the constant MQXUA_NONE_ARRAY is also defined; this has the same value as MQXUA_NONE, but is an array of characters instead of a string. The length of this field is given by MQ_EXIT_USER_AREA_LENGTH. This is an input/output field to the exit. ExitData (MQCHAR32) Exit data. This is set on input to the exit routine to the value of the ClusterWorkloadData queue-manager attribute. If no value has been defined for that attribute, this field is all blanks. The length of this field is given by MQ_EXIT_DATA_LENGTH. This is an input field to the exit. MsgDescPtr (PMQMD) Address of message descriptor. This is the address of a copy of the message descriptor (MQMD) for the message being processed. Any changes made to the message descriptor by the exit are ignored by the queue manager. No message descriptor is passed to the exit if ExitReason has one of the following values: MQXR_INIT MQXR_TERM MQXR_CLWL_OPEN In these cases, MsgDescPtr is the null pointer. This is an input field to the exit. MQWXP structure Chapter 1. New function in all V5.2 products 31

40 MQWXP structure MsgBufferPtr (PMQVOID) Address of buffer containing some or all of the message data. This is the address of a buffer containing a copy of the first MsgBufferLength bytes of the message data. Any changes made to the message data by the exit are ignored by the queue manager. No message data is passed to the exit in the following cases: v When MsgDescPtr is the null pointer. v When the message has no data. v When the ClusterWorkloadLength queue-manager attribute is zero. In these cases, MsgBufferPtr is the null pointer. This is an input field to the exit. MsgBufferLength (MQLONG) Length of buffer containing message data. This is the length of the message data passed to the exit. This length is controlled by the ClusterWorkloadLength queue-manager attribute, and may be less than the length of the complete message (see MsgLength). This is an input field to the exit. MsgLength (MQLONG) Length of complete message. Be aware that the length of the message data passed to the exit (MsgBufferLength) may be less than the length of the complete message. MsgLength is zero if ExitReason is MQXR_INIT, MQXR_TERM, or MQXR_CLWL_OPEN. This is an input field to the exit. QName (MQCHAR48) Queue name. This is the name of the destination queue; this queue is a cluster queue. The length of this field is given by MQ_Q_NAME_LENGTH. This is an input field to the exit. QMgrName (MQCHAR48) Name of local queue manager. This is the name of the queue manager that has invoked the cluster workload exit. The length of this field is given by MQ_Q_MGR_NAME_LENGTH. This is an input field to the exit. DestinationCount (MQLONG) Number of possible destinations. 32 MQSeries V5.2 Release Guide

41 This specifies the number of destination records (MQWDR) that describe instances of the destination queue. There is one MQWDR structure for each possible route to each instance of the queue. The MQWDR structures are addressed by an array of pointers (see DestinationArrayPtr). This is an input field to the exit. DestinationChosen (MQLONG) Destination chosen. This is the number of the MQWDR structure that identifies the route and queue instance to which the message should be sent. The value is in the range 1 through DestinationCount. On input to the exit, DestinationChosen indicates the route and queue instance that the queue manager has selected. The exit can accept this choice, or choose a different route and queue instance. However, the value returned by the exit must be in the range 1 through DestinationCount. If any other value is returned, the queue manager uses the value that DestinationChosen had on input to the exit. This is an input/output field to the exit. DestinationArrayPtr (PPMQWDR) Address of an array of pointers to destination records. This is the address of an array of pointers to destination records (MQWDR). There are DestinationCount destination records. This is an input field to the exit. QArrayPtr (PPMQWQR) Address of an array of pointers to queue records. This is the address of an array of pointers to queue records (MQWQR). If queue records are available, there are DestinationCount of them. If no queue records are available, QArrayPtr is the null pointer. Note: QArrayPtr can be the null pointer even when DestinationCount is greater than zero. This is an input field to the exit. MQWXP structure The following fields in this structure are not present if Version is less than MQWXP_VERSION_2. Context (MQPTR) Context information. This field is reserved for use by the queue manager. The exit must not alter the value of this field. Chapter 1. New function in all V5.2 products 33

42 MQWXP structure This is an input field to the exit. This field is not present if Version is less than MQWXP_VERSION_2. CacheType (MQLONG) Type of cluster cache. This is the type of the cluster cache. It is one of the following: MQCLCT_STATIC Static cluster cache. If the cluster cache has this type, the size of the cache is fixed, and cannot grow as the queue manager operates. The MQXCLWLN call need not be used to navigate the records in this type of cache. MQCLCT_DYNAMIC Dynamic cluster cache. If the cluster cache has this type, the size of the cache is fixed, and cannot grow as the queue manager operates. The MQXCLWLN call need not be used to navigate the records in this type of cache. This is an input field to the exit. This field is not present if Version is less than MQWXP_VERSION_2. 34 MQSeries V5.2 Release Guide

43 C declaration: MQWXP structure typedef struct tagmqwxp { MQCHAR4 StrucId; /* Structure identifier */ MQLONG Version; /* Structure version number */ MQLONG ExitId; /* Type of exit */ MQLONG ExitReason; /* Reason for invoking exit */ MQLONG ExitResponse; /* Response from exit */ MQLONG ExitResponse2; /* Secondary response from exit */ MQLONG Feedback; /* Reserved */ MQLONG Reserved; /* Reserved */ MQBYTE16 ExitUserArea; /* Exit user area */ MQCHAR32 ExitData; /* Exit data */ PMQMD MsgDescPtr; /* Address of message descriptor */ PMQVOID MsgBufferPtr; /* Address of buffer containing some or all of the message data */ MQLONG MsgBufferLength; /* Length of buffer containing message data */ MQLONG MsgLength; /* Length of complete message */ MQCHAR48 QName; /* Queue name */ MQCHAR48 QMgrName; /* Name of local queue manager */ MQLONG DestinationCount; /* Number of possible destinations */ MQLONG DestinationChosen; /* Destination chosen */ PPMQWDR DestinationArrayPtr; /* Address of an array of pointers to destination records */ PPMQWQR QArrayPtr; /* Address of an array of pointers to queue records */ MQPTR Context; /* Context information */ MQLONG CacheType; /* Type of cluster cache */ } MQWXP; Chapter 1. New function in all V5.2 products 35

44 MQWXP structure System/390 assembler declaration: MQWXP DSECT MQWXP_STRUCID DS CL4 Structure identifier MQWXP_VERSIONDS F Structure version number MQWXP_EXITID DS F Type of exit MQWXP_EXITREASONDS F Reason for invoking exit MQWXP_EXITRESPONSE DS F Response from exit MQWXP_EXITRESPONSE2 DS F Secondary response from exit MQWXP_FEEDBACK DS F Reserved MQWXP_RESERVED DS F Reserved MQWXP_EXITUSERAREA DS XL16 Exit user area MQWXP_EXITDATA DS CL32 Exit data MQWXP_MSGDESCPTR DS F Address of message * descriptor MQWXP_MSGBUFFERPTR DS F Address of buffer containing * some or all of the message * data MQWXP_MSGBUFFERLENGTH DS F Length of buffer containing * message data MQWXP_MSGLENGTH DS F Length of complete message MQWXP_QNAME DS CL48 Queue name MQWXP_QMGRNAME DS CL48 Name of local queue manager MQWXP_DESTINATIONCOUNT DS F Number of possible * destinations MQWXP_DESTINATIONCHOSEN DS F Destination chosen MQWXP_DESTINATIONARRAYPTR DS F Address of an array of * pointers to destination * records MQWXP_QARRAYPTR DS F Address of an array of * pointers to queue records MQWXP_LENGTH EQU *-MQWXP Length of structure ORG MQWXP MQWXP_AREA DS CL(MQWXP_LENGTH) 36 MQSeries V5.2 Release Guide

45 MQWDR structure MQWDR - Cluster workload destination-record structure The definition of the following fields in the MQWDR structure is changed: ClusterRecOffset (MQLONG) Offset of first cluster record. This is the offset of the first MQWCR structure that belongs to this MQWDR structure. If the cluster cache is static, ClusterRecOffset contains the physical offset of the next record; the offset is measured in bytes from the start of the MQWDR structure. If the cluster cache is dynamic, ClusterRecOffset contains the logical offset of the next record; the logical offset cannot be used in pointer arithmetic. To obtain the address of the next record, the MQXCLWLN call must be used. It is recommended that MQXCLWLN be used to navigate the records in the cluster cache, as the call returns the address of the next record regardless of type of cache in use. This is an input field to the exit. ChannelDefOffset (MQLONG) Offset of channel definition structure. This is the offset of the channel definition (MQCD) for the channel that links the local queue manager to the queue manager identified by this MQWDR structure. If the cluster cache is static, ChannelDefOffset contains the physical offset of the channel definition structure; the offset is measured in bytes from the start of the MQWDR structure. If the cluster cache is dynamic, ChannelDefOffset contains the logical offset of the channel definition structure; the logical offset cannot be used in pointer arithmetic. To obtain the address of the channel definition structure, the MQXCLWLN call must be used. It is recommended that MQXCLWLN be used to navigate the records and structures in the cluster cache, as the call returns the address of the next record or structure regardless of type of cache in use. This is an input field to the exit. MQWQR - Cluster workload queue-record structure The definition of the following field in the MQWQR structure is changed: ClusterRecOffset (MQLONG) Offset of first cluster record. Chapter 1. New function in all V5.2 products 37

46 MQWQR structure This is the offset of the first MQWCR structure that belongs to this MQWQR structure. If the cluster cache is static, ClusterRecOffset contains the physical offset of the next record; the offset is measured in bytes from the start of the MQWQR structure. If the cluster cache is dynamic, ClusterRecOffset contains the logical offset of the next record; the logical offset cannot be used in pointer arithmetic. To obtain the address of the next record, the MQXCLWLN call must be used. It is recommended that MQXCLWLN be used to navigate the records in the cluster cache, as the call returns the address of the next record regardless of type of cache in use. This is an input field to the exit. MQWCR - Cluster workload cluster-record structure The definition of the following field in the MQWCR structure is changed: ClusterRecOffset (MQLONG) Offset of next cluster record. This is the offset of the next MQWCR structure. If there are no more MQWCR structures, ClusterRecOffset is zero. If the cluster cache is static, ClusterRecOffset contains the physical offset of the next record; the offset is measured in bytes from the start of the MQWCR structure. If the cluster cache is dynamic, ClusterRecOffset contains the logical offset of the next record; the logical offset cannot be used in pointer arithmetic. To obtain the address of the next record, the MQXCLWLN call must be used. It is recommended that MQXCLWLN be used to navigate the records in the cluster cache, as the call returns the address of the next record regardless of type of cache in use. This is an input field to the exit. 38 MQSeries V5.2 Release Guide

47 The MQSeries library The MQSeries library The title of the MQSeries Command Reference book, SC , has been changed to MQSeries MQSC Command Reference to reflect more accurately the book s contents. The order number remains the same. The Application Programming Reference Summary, SX , has become the MQSeries Programming Interfaces Reference Summary, and its scope has been expanded to incorporate all MQSeries programming interfaces, including the Message Queuing Interface (MQI), the Application Messaging Interface (AMI), the administration interface (MQAI), event messages, PCF messages, and installable services. The order number remains the same. Chapter 1. New function in all V5.2 products 39

48 The MQSeries library 40 MQSeries V5.2 Release Guide

49 Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only This chapter introduces the new function that applies only to MQSeries for Windows NT and Windows 2000 V5.2. It contains these sections: v Microsoft Transaction Server (MTS) support v Installing MQSeries for Windows NT and Windows 2000 v Custom services on page 42 v Browsing the dead-letter header on page 45 v Guidelines for Windows 2000 on page 45 Note that, in the latest editions of the MQSeries cross-product books, all references to MQSeries for Windows NT apply also to MQSeries running in the Windows 2000 environment. Note also that the application type MQAT_WINDOWS_NT applies equally to the Windows 2000 environment, and that the APPLTYPE value WINDOWSNT, used with the MQSC DEFINE PROCESS and ALTER PROCESS commands, applies to MQSeries in the Windows 2000 environment. Microsoft Transaction Server (MTS) support MQSeries for Windows NT and Windows 2000 V5.2 includes support for Microsoft Transaction Server (MTS). Refer to the online information provided with the MQSeries product for a complete description of this support. Installing MQSeries for Windows NT and Windows 2000 This section tells you about enhancements to the installation process for MQSeries for Windows NT and Windows Launching the Default Configuration You can launch the Default Configuration Wizard at the end of the installation process. Read the MQSeries for Windows NT and Windows 2000 Quick Beginnings book for a complete description of the installation process. Default Configuration for DHCP machines You can set up the default configuration when your machine is using the Dynamic Host Configuration Protocol (DHCP). With previous versions of MQSeries, only machines with static IP addresses could set up the default configuration. Refer to the MQSeries for Windows NT and Windows 2000 Quick Beginnings book for more information. Copyright IBM Corp. 1999,

50 Installation Postcard application enhancements The Postcard application can be used to verify communication between your machine and: v A queue manager in the default configuration cluster v A queue manager in a cluster other than the default configuration cluster v Queue managers that you have defined and added to the default configuration cluster With Version 5.1 of the Postcard application, you could communicate only with machines that had installed a default queue manager in the default configuration cluster. Refer to the MQSeries for Windows NT and Windows 2000 Quick Beginnings book for more information about using the Postcard application. Custom services The MQSeries Services snap-in for MQSeries for Windows NT and Windows 2000 V5.2 has an additional folder, Custom Services. You can find instances of this folder in the IBM MQSeries Services folder and in the folder for each queue manager. Custom services are services that you want to be started by the IBM MQSeries Service to coordinate with the starting of queue managers. See MQSeries Services - Custom Services in the online MQSeries Information Center for information about working with custom services. Refer to the MQSeries System Administration book for a description of administration using the MQSeries Services snap-in. The amqmdain command is added to the MQSeries control commands described in the MQSeries System Administration book. Note that the amqmdain command can be issued only in a Windows NT or Windows 2000 environment. Use amqmdain to configure or control MQSeries Services, as an alternative to using the MQSeries Services snap-in. Note that starting a queue manager service with amqmdain is not the same as using strmqm from the command line, because MQSeries Services execute in a non-interactive session, running under a different user account. You can also configure a queue manager service to start associated processes, such as listeners and trigger monitors. 42 MQSeries V5.2 Release Guide

51 Custom services New command: amqmdain (MQSeries services control) The amqmdain command is defined as follows: Purpose Use the amqmdain command to query or configure MQSeries queue manager services from the command line. You can also use amqmdain to ensure that any registry entries you have edited manually are assigned the correct security permissions. Syntax amqmdain start QMgrName end QMgrName auto QMgrName manual QMgrName crtlsr QMgrName LsrParams crttrm QMgrName QueueName crtchi QMgrName InitQName status QMgrName all cstmig filename regsec Keyword and parameter descriptions Parameters are required unless the description states they are optional. In every case, QMgrName is the name of the MQSeries queue manager to which the command applies. start QMgrName Starts a queue manager service. end QMgrName Ends a queue manager service. auto QMgrName Sets a queue manager service to automatic startup. manual QMgrName Sets a queue manager service to manual startup. crtlsr QMgrName LsrParams Creates a listener service for a queue manager. LsrParams Parameters applicable to the runmqlsr command, for example -t trptype -p Port. The parameters must be in pairs, but the m QMgrName parameter is not required, because it is specified by the preceding parameter to the crtlsr keyword. Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only 43

52 Custom services Refer to the MQSeries System Administration book for a complete description of the runmqlsr command. crttrm QMgrName QueueName Creates a trigger monitor service for a queue manager. QueueName The name of the MQSeries queue to be used by the trigger monitor service. See the runmqtrm command in the MQSeries System Administration book for more information. crtchi QMgrName InitQName Creates a channel initiator service for a queue manager. InitQName Name of the MQSeries initiation queue to be used by the channel initiator. See the runmqchi command in the MQSeries System Administration book for more information. status QMgrName all The parameter for status is optional. If no parameter is supplied: Displays the status of the MQSeries service. If a QMgrName is supplied: Displays the status of the named queue manager service. If the parameter all is supplied: Displays the status of all services. cstmig filename Imports definitions of custom services. amqmdain loads custom services from a comma separated value (CSV) configuration file. Note that amqmdain must be executed to store the custom service parameters in the registry, add the key and values in the correct place and to assign the appropriate security permissions to the registry. The format of an entry in the configuration file is: Command Name, Start Command, End Command, Flags, Reserved regsec For example: PubSub Broker, strmqbrk -p blue.queue.manager, endmqbrk -i -m blue.queue.manager, SUFFIX ROOT STARTUP SHUTDOWN COMMAND, 1 Ensures that the security permissions assigned to the MQSeries registry keys are correct. 44 MQSeries V5.2 Release Guide

53 Custom services Return codes 0 Command completed normally 3 Failed to initialize COM library 4 Failed to initialize MQSeries COM components 5 Failed to create channel initiator 6 Failed to create service 7 Failed to configure service 8 Invalid Port Type specified for crtlsr Browsing the dead-letter header You can browse the header information for messages on the dead-letter queue with the MQSeries Explorer interface. The information is presented on the MQDLH page of the Message Property Sheet. For a description of the header information, and of the conditions under which the MQDLH page is displayed, see the online help for the Message Property Sheet. Guidelines for Windows 2000 This information applies only when you are running MQSeries V5.2 in a Windows 2000 environment. MQSeries for Windows NT and Windows 2000 V5.2 runs on either platform but the operation of MQSeries security can be affected by differences between Windows 2000 and Windows NT. MQSeries security relies on calls to the operating system API for information about user authorizations and group memberships. Some functions do not behave identically on Windows 2000 and on Windows NT. This section includes descriptions of how those differences might affect MQSeries security when you are running MQSeries V5.2 in a Windows 2000 environment. For further information about MQSeries security, refer to the MQSeries System Administration book. When you get a group not found error This problem can arise because MQSeries loses access to the local mqm group when Windows 2000 servers are promoted to, or demoted from, domain controllers. The symptom is an error indicating the lack of a local mqm group, for example: > crtmqm qm0 AMQ8066: Local mqm group not found. You should be aware that altering the state of a machine between server and domain controller can affect the operation of MQSeries. This is because MQSeries makes use of a locally defined mqm group. When a server is Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only 45

54 Windows 2000 promoted to be a domain controller, the scope changes from local to domain local. When the machine is demoted to server, all domain local groups are removed. This means that changing a machine from server to domain controller, and back to server causes access to a local mqm group to be lost. To remedy this problem, recreate the local mqm group using the standard Windows 2000 management tools. Because all group membership information is lost, you must reinstate privileged MQSeries users in the newly created local mqm group. If the machine is a domain member you must also add the domain mqm group to the local mqm group to grant privileged domain MQSeries user IDs the required level of authority. When you have problems with MQSeries and domain controllers Note: This section describes the problems that can arise with security settings when Windows 2000 servers are promoted to domain controllers. This section applies also when creating the default configuration fails under Windows During the promotion of Windows 2000 servers to domain controllers, you are presented with the option to select a default or nondefault security setting relating to user and group permissions. This option controls whether arbitrary users are able to retrieve group memberships from the active directory. Because MQSeries relies on group membership information to implement its security policy, it is important that the user ID that is performing MQSeries operations is able to determine the group memberships of other users. When a domain is created using the default security option, it is possible for the default user ID created by MQSeries during the installation process (MUSR_MQADMIN) to obtain group memberships for other users as required. The product then installs normally, including the creation of default objects, and the queue manager is able to determine the access authority of local and domain users if required. When a domain is created using the nondefault security option, the user ID created by MQSeries during the installation (MUSR_MQADMIN) is not always able to determine the required group memberships. In this case, the following information applies: Windows 2000 domain with nondefault security permissions When the MQSeries installation is performed by a local user, the local user (MUSR_MQADMIN) created is able to retrieve the group membership information of the installing user, and so installation can complete normally, including the creation of default objects. However, note that the queue manager will be unable to determine access authority of domain users (if required). 46 MQSeries V5.2 Release Guide

55 Windows 2000 When the MQSeries installation is performed by a domain user, the local user (MUSR_MQADMIN) created is unable to retrieve the group membership information of the installing user. This prevents the creation of default objects, and the resulting installation is incomplete. Additional steps are then required to complete the installation. You can use the Active Directory Delegation of Control Wizard to grant permission to a nominated group to the property Read group membership. Specifically, it can be used to allow Domain mqm group members permission to read group membership information of an arbitrary user. To allow MQSeries to retrieve group membership information for an arbitrary domain user, MQSeries must be configured to run under a suitably authorized domain user. This is because local users on servers in a domain cannot be given rights to access objects in Active Directory on the domain controller. The domain user configured for MQSeries should belong to the Domain mqm group. In summary, for MQSeries on a Windows 2000 domain with the domain controller created using the nondefault user and group permission setting: v Active Directory at the domain controller must be configured to allow group memberships to be read. v MQSeries Services (COM server) must be configured to run under a domain user. Allowing Domain mqm group members to read group membership This section tells you how to use the Active Directory Wizard to allow Domain mqm group members to read group membership information for an arbitrary user. In Active Directory Users and Computers, right click the domain name, for example mqdev.hursley.ibm.com: 1. Click Delegate Control, then click Next. 2. Click Groups and Users: a. Click Add. b. Highlight Domain mqm and click Add. 3. Click OK. 4. Highlight the Domain mqm selection and click Next. 5. Select the Create a custom task to delegate check box and click Next. 6. Check Only the following objects in the folder and then search under object types for User objects (the list is alphabetical, so go to the last one). 7. Check User Objects and click Next. 8. Check Property-specific and then search down to: Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only 47

56 Windows 2000 Read Group Membership Read groupmembershipsam (the list is sorted alphabetically on the second word). Select both of these check boxes, then click Next. 9. Click Finish. Configuring MQSeries Services to run under a domain user You can change the user account under which MQSeries Services runs to be other than the default MUSR_MQADMIN. To do this, first create the new domain user account that you wish to use. Then, on each MQSeries server running MQSeries V5.2, use the following command to configure the MQSeries Services to run under the user ID you require, and also to allocate the correct security rights and group memberships to this user account: AMQMSRVN-regserver -user [domain]\[userid] - password [password] Note that checking Password never expires when you create a user ID for use by MQSeries Services will prevent the need to reconfigure the services owing to password expiry. When MQSeries appears to halt when reporting an error Windows 2000 can inherit permissions differently from Windows NT. This might cause MQSeries to lose write access to queue manager error logs, depending on the access rights that have been allocated to the parent directory into which MQSeries is installed. To remedy this problem, ensure that all appropriate users of the product have write access to the queue manager error directories. When Default Configuration gives errors For default configuration to work correctly, set up the computer name and DNS domain in the following manner: 1. Right click the My Computer icon. 2. Click Properties. 3. Click the Network Identification tab on the System Properties panel. 4. Click Properties and type the computer name. 5. Click More and type the DNS domain name. 6. Click OK to retain the updates. When you have problems with a Multilanguage system This section tells you what to do if you get: v Some English messages when using MQSeries on a Windows 2000 Multilanguage system v?????? on the installation panels when installing MQSeries on a Windows 2000 DBCS Multilanguage system 48 MQSeries V5.2 Release Guide

57 Windows 2000 To install and use MQSeries on a Windows 2000 Multilanguage system, set up the local and system locale values in the following manner: 1. Select the Control Panel. 2. Click Regional Options. 3. On the Regional Options panel, update both Your locale and the setting for the required language. 4. Click Set default and set the System locale to the required language. 5. Click Apply. 6. Reboot the system. MQSeries should now install and run correctly. Applying security template files Windows 2000 supports text-based security template files which you can use to apply uniform security settings to one or more computers with the Security Configuration and Analysis MMC snap-in. In particular, Windows 2000 supplies several templates that include a range of security settings with the aim of providing specific levels of security; these include compatible, basic, secure, and highly-secure. Be aware that applying one of these templates might affect the security settings applied to MQSeries files and directories. If you want to use the highly-secure template, configure your machine before you install MQSeries. If you apply the highly-secure template to a machine on which MQSeries is already installed, all the permissions you have specifically set on the MQSeries files and directories are removed. This means that you lose Administrator and mqm group access and, when applicable, Everyone group access from the error directories. Note Refer to the MQSeries Web site for the latest Frequently Asked Questions (FAQs). Chapter 2. New function in MQSeries for Windows NT and Windows 2000 V5.2 only 49

58 Windows MQSeries V5.2 Release Guide

59 Chapter 3. New function in V5.2 UNIX systems only This chapter introduces the new function that applies to the following products: v MQSeries for AIX, V5.2 v MQSeries for HP-UX, V5.2 v MQSeries for Linux, V5.2 v MQSeries for Sun Solaris, V5.2 The general discussion that introduces the section UNIX signal handling on MQSeries V5.2 products on page 52 also applies to the MQSeries for AS/400, V5.2 product. For more information on the functions that apply to your product, refer to the sections: v New function for UNIX systems v UNIX signal handling on MQSeries V5.2 products on page 52 v New function for Sun Solaris only on page 57 v New function for AIX only on page 78 New function for UNIX systems This section describes the changes in MQSeries V5.2 that apply to more than one of the UNIX products. Threaded applications applies to all the UNIX products. Support for Websphere as an XA coordinator on page 52 applies to the AIX, HP-UX, and Sun Solaris products only. The section UNIX signal handling on MQSeries V5.2 products on page 52 applies to all the UNIX products. Threaded applications If you are writing multithreaded MQSeries applications that create new processes, note that calls to create a new process using the fork system call must be followed by an exec system call to execute a program. MQSeries V5.2 does not support the use of the fork system call unless it is followed by an exec system call. You can refer to the MQSeries Application Programming Guide for more information about writing multithreaded MQSeries applications. Note, however, that this book does not discuss using the fork system call to create a new process. Copyright IBM Corp. 1999,

60 All UNIX systems Support for Websphere as an XA coordinator MQSeries V5.2 supports Websphere as a transaction coordinator in the following environments: AIX, HP-UX, and Sun Solaris. Refer to the Websphere documentation for more information on connecting Websphere to MQSeries. For more information about the MQSeries application adaptor, and about how to write Component Broker applications please see the WebSphere Application Server Enterprise Edition Component Broker MQSeries Application Adaptor Development Guide SC UNIX signal handling on MQSeries V5.2 products Note This section is a complete replacement for the section UNIX Signal handling on MQSeries Version 5 products in the MQSeries Application Programming Guide. Changes have been made to the following: v The description of the libmqm_r library on page 53 in this book, in particular the behavior for SIGALRM. Furthermore, MQSeries V5.2 does not need to run clean up code in the event of abnormal termination. v The handling of a synchronous signal in Unthreaded applications on page 54. v The section Threaded applications on page 54. v The section Fastpath (trusted) applications on page 55. In general, UNIX and AS/400 systems have moved from a nonthreaded (process) environment to a multithreaded environment. In the nonthreaded environment, some functions could be implemented only by using signals, though most applications did not need to be aware of signals and signal handling. In the multithreaded environment, thread-based primitives support some of the functions that used to be implemented in the nonthreaded environments using signals. In many instances, signals and signal handling, although supported, do not fit well into the multithreaded environment and various restrictions exist. This can be particularly problematic when you are integrating application code with different middleware libraries (running as part of the application) in a multithreaded environment where each is trying to handle signals. The traditional approach of saving and restoring signal handlers (defined per process), which worked when there was only one thread of execution within a process, does not work in a multithreaded 52 MQSeries V5.2 Release Guide

61 UNIX signal handling environment: many threads of execution could be trying to save and restore a process-wide resource, with unpredictable results. For a standard application, MQSeries supports both nonthreaded and threaded application environments on AIX, AS/400, HP-UX, and Linux. All MQSeries applications in the Sun Solaris environment are threaded. MQSeries for Sun Solaris V2.2 supported only single-threaded applications (though there was no way to enforce this) and, because there was only one thread of execution, was able to make use of the traditional signal handling functions. In MQSeries for Sun Solaris, V5.0, and subsequent releases, true multithreaded applications are supported and so the signal behavior has changed. The library libmqm is provided for migration of nonthreaded applications from Version 2 of MQSeries for AIX or MQSeries for HP-UX to Version 5. The goal of this library is to maintain the Version 2 behavior (including signals) for nonthreaded applications. Within an application in this environment there is only one thread of execution, which means that signal handlers can be saved and restored safely across MQSeries API calls (as can any middleware library that is part of the application). Therefore, if you have an application suite on V2 of MQSeries for AIX or MQSeries for HP-UX that uses signals, and you do not want to move to the threaded environment, the suite should run unchanged on V5 using the nonthreaded library, libmqm. The library libmqm_r is provided for threaded applications on MQSeries for AIX, MQSeries for HP-UX, and MQSeries for Linux. On AS/400 libmqm_r is provided as a service program. However, the behavior, particularly for signals, is different: v As in the nonthreaded environment, MQSeries still establishes signal handlers for synchronous terminating signals (SIGBUS, SIGFPE, SIGSEGV, SIGILL). v In the threaded environment MQSeries does not need to use the SIGALRM signal as it does in the nonthreaded environment. Note: Some system functions may use signals internally (for example, SIGALRM in a nonthreaded environment). For a particular operating system, some of these functions may have thread-safe equivalents or it may be stated that they are not multithread safe. Any non-thread-safe operating system call should be replaced if moving to a multithreaded environment. Chapter 3. New function in V5.2 UNIX systems only 53

62 UNIX signal handling Unthreaded applications Each MQI function sets up its own signal handler for the signals: SIGALRM SIGBUS SIGFPE SIGSEGV SIGILL Users handlers for these are replaced for the duration of the MQI function call. Other signals can be caught in the normal way by user-written handlers. If you do not install a handler, the default actions (for example, ignore, core dump, or exit) are left in place. Following the handling of a synchronous signal (SIGSEGV, SIGBUS, SIGFPE, SIGILL) by MQSeries it will attempt to pass the signal on to any signal handler registered prior to making the MQI function call. Note: On Sun Solaris all applications are threaded even if they use a single thread. Threaded applications A thread is considered to be connected to MQSeries from MQCONN (or MQCONNX) until MQDISC. Synchronous signals Synchronous signals arise in a specific thread. UNIX safely allows the setting up of a signal handler for such signals for the whole process. However, MQSeries sets up its own handler for the following signals, in the application process, while any thread is connected to MQSeries: SIGBUS SIGFPE SIGSEGV SIGILL If you are writing multithreaded applications, you should note that there is only one process-wide signal handler for each signal. When MQSeries sets up its own synchronous signal handlers it saves any previously registered handlers for each signal. Following the handling by MQSeries of one of the signals listed above, MQSeries attempts to call the signal handler that was in effect at the time of the first MQSeries connection within the process. The previously registered handlers are restored when all application threads have disconnected from MQSeries. 54 MQSeries V5.2 Release Guide

63 UNIX signal handling Because signal handlers are saved and restored by MQSeries, application threads ideally should not establish signal handlers for these signals while there is any possibility that another thread of the same process is also connected to MQSeries. Note: When an application, or a middleware library (running as part of an application), does establish a signal handler while a thread is connected to MQSeries, the application s signal handler must call the corresponding MQSeries handler during the processing of that signal. When establishing and restoring signal handlers, the general principle is that the last signal handler to be saved must be the first to be restored: v When an application establishes a signal handler after connecting to MQSeries, the previous signal handler must be restored before the application disconnects from MQSeries. v When an application establishes a signal handler before connecting to MQSeries, the application must disconnect from MQSeries before restoring its signal handler. Note: Failure to observe the general principle that the last signal handler to be saved must be the first to be restored can result in unexpected signal handling in the application and, potentially, the loss of signals by the application. Asynchronous signals MQSeries does not make use of any asynchronous signals in threaded applications unless they are client applications. Threaded client applications - additional considerations MQSeries handles the following signals during I/O to a server. These signals are defined by the communications stack. The application should not establish a signal handler for these signals while a thread is connected to a queue manager: SIGPIPE (for TCP/IP) Fastpath (trusted) applications Fastpath applications run in the same process as MQSeries and so are running in the multithreaded environment. In this environment MQSeries handles the synchronous signals SIGSEGV, SIGBUS, SIGFPE, and SIGILL. All other signals must not be delivered to the Fastpath application whilst it is connected to MQSeries. Instead they must be blocked or handled by the application. If a Fastpath application intercepts such an event the Queue Manager must be stopped and restarted, or it may be left in an undefined state. For a full list of the restrictions for Fastpath applications under MQCONNX see Connecting to a queue manager using the MQCONNX call Chapter 3. New function in V5.2 UNIX systems only 55

64 UNIX signal handling MQI function calls within signal handlers While you are in a signal handler, you cannot call an MQI function. If you call an MQI function, while another MQI function is active, MQRC_CALL_IN_PROGRESS is returned. If you call an MQI function, while no other MQI function is active, it is likely to fail because of the operating system restrictions on which calls can be issued from within a handler. In the case of C++ destructor methods, which may be called automatically during program exit, you may not be able to stop the MQI functions from being called. Therefore, ignore any errors about MQRC_CALL_IN_PROGRESS. If a signal handler calls exit(), MQSeries backs out uncommitted messages in syncpoint as normal and closes any open queues. Signals during MQI calls MQI functions do not return the code EINTR or any equivalent to application programs. If a signal occurs during an MQI call, and the handler calls return, the call continues to run as if the signal had not happened. In particular, MQGET cannot be interrupted by a signal to return control immediately to the application. If you want to break out of an MQGET, set the queue to GET_DISABLED; alternatively, use a loop around a call to MQGET with a finite time expiry (MQGMO_WAIT with gmo.waitinterval set), and use your signal handler (in a nonthreaded environment) or equivalent function in a threaded environment to set a flag which breaks the loop. In the AIX environment, MQSeries requires that system calls interrupted by signals are restarted. You must establish the signal handler with sigaction(2) and set the SA_RESTART flag in the sa_flags field of the new action structure. The default behavior is that calls are not restarted (the SA_RESTART flag is not set). User exits and installable services User exits and installable services that run as part of an MQSeries process in a multithreaded environment have the same restrictions as for Fastpath applications. They should be considered as permanently connected to MQSeries and so not use signals or non-threadsafe operating system calls. 56 MQSeries V5.2 Release Guide

65 New function for Sun Solaris only Sun Solaris This section introduces the new function that applies only to MQSeries for Sun Solaris, V5.2. Sun Workshop C++ Compiler 5.0 and 6.0 MQSeries V5.2 supports Version 5.0 and Version 4.2 of the Sun Workshop C++ Compiler and the Forte C++ 6 (Sun WorkShop 6 C++) compiler. Refer to the MQSeries Using C++ book for information about compiling and linking programs with the compiler you are using. The instructions for the Forte C++ 6 (Sun WorkShop 6 C++) compiler are the same as for Version 5.0 of the Sun Workshop C++ Compiler. Communications support extended to include SNAP IX This section gives an example of how to set up communication links from MQSeries for Sun Solaris using SNAP IX V6.2 or later. See Chapter 18 in the MQSeries Intercommunication book for a description of the existing support for SunLink Version 9.1. Note the following with regard to that Chapter: v The section Configuration parameters for an LU 6.2 connection applies only to SunLink Version 9.1. v The section Establishing a connection using SunLink Version 9.1 is unchanged. v The sections Configuration parameters for an LU 6.2 connection using SNAP IX on page 58 and Establishing a session using SNAP IX on page 63 are added. v The section Establishing a TCP connection is unchanged. v In the section MQSeries for Sun Solaris configuration, the existing MQSeries for Sun Solaris sender-channel definitions using SNA applies only to SunLink Version 9.1. v MQSeries for Sun Solaris sender-channel definitions using SNAP-IX SNA on page 77 is added to the section MQSeries for Sun Solaris configuration. You determine the MQSeries library loaded to support SNA with the MQCommLibrary parameter in the qm.ini file. With MQSeries for Sun Solaris, V5.2, the LU62 stanza applies. MQCommLibrary is the only attribute that can be specified: MQCommLibrary=amqcc62a amqcc62s This attribute specifies the MQSeries library loaded to support SNA for MQSeries for Sun Solaris, V5.2. SNAP IX support is provided if amqcc62a is loaded. This is the default if this attribute is not specified. SunLink Version 9.1 support is provided if amqcc62s is loaded. Chapter 3. New function in V5.2 UNIX systems only 57

66 Sun Solaris Refer to the MQSeries System Administration book for a full description of the LU62 stanza in the qm.ini file. Configuration parameters for an LU 6.2 connection using SNAP IX Table 2 presents a worksheet listing all the parameters needed to set up communication from Sun Solaris using SNAP IX to one of the other MQSeries platforms. The worksheet shows examples of the parameters, which have been tested in a working environment, and leaves space for you to fill in your own values. An explanation of the parameter names follows the worksheet. Use the worksheet in this chapter in conjunction with the worksheet in the chapter of the MQSeries Intercommunication book for the platform to which you are connecting. Configuration worksheet: Use this worksheet to record the values you use for your configuration. Where numbers appear in the Reference column they indicate that the value must match that in the appropriate worksheet elsewhere in the MQSeries Intercommunication book. The examples that follow in this chapter refer back to the values in the ID column. The entries in the Parameter Name column are explained in Explanation of terms on page 61. Table 2. Configuration worksheet for SNAP IX ID Parameter Name Ref. Example User Value Parameters for local node 1 Configuration file name sna_node.cfg 2 Control point name SOLARXPU 3 Node ID to send 05D Network name NETID 5 Local APPC LU SOLARXLU 6 APPC mode #INTER 7 Invokable TP MQSERIES 8 Local MAC address CC8A 9 Port name MQPORT 10 Command path /opt/mqm/bin/amqcrs6a 11 Local queue manager SOLARIS Connection to an OS/2 system The values in this section of the table must match those used in the Table for OS/2 and LU6.2, as indicated. 12 Link station name OS2CONN 13 Network name 2 NETID 14 CP name 3 OS2PU 15 Remote LU 6 OS2LU 16 Application TP 8 MQSERIES 17 Mode name 17 #INTER 58 MQSeries V5.2 Release Guide

67 Table 2. Configuration worksheet for SNAP IX (continued) Sun Solaris and LU 6.2 ID Parameter Name Ref. Example User Value 18 CPI-C symbolic destination name OS2CPIC 19 Remote network address AFC5D83 20 Node ID to receive 4 05D Connection to a Windows NT or Windows 2000 system The values in this section of the table must match those used in the Table for Windows NT and LU6.2, as indicated. 12 Link station name NTCONN 13 Network name 2 NETID 14 CP name 3 WINNTCP 15 Remote LU 5 WINNTLU 16 Application TP 7 MQSERIES 17 Mode name 17 #INTER 18 CPI-C symbolic destination name NTCPIC 19 Remote network address AA5FAB9 20 Node ID to receive 4 05D 30F65 Connection to an AIX system The values in this section of the table must match those used in the Table for AIX and LU6.2, as indicated. 12 Link station name AIXCONN 13 Network name 1 NETID 14 CP name 2 AIXPU 15 Remote LU 4 AIXLU 16 Application TP 6 MQSERIES 17 Mode name 14 #INTER 18 CPI-C symbolic destination name AIXCPIC 19 Remote network address Node ID to receive Connection to an AT&T GIS UNIX system The values in this section of the table must match those used in the table the Table for AT&T GIS UNIX and LU6.2, as indicated. 12 Link station name GISCONN 13 Network name 2 NETID 14 CP name 3 GISPU 15 Remote LU GISLU 16 Application TP 5 MQSERIES 17 Mode name 7 #INTER 18 CPI-C symbolic destination name GISCPIC 19 Remote network address E86B Chapter 3. New function in V5.2 UNIX systems only 59

68 Sun Solaris and LU 6.2 Table 2. Configuration worksheet for SNAP IX (continued) ID Parameter Name Ref. Example User Value 20 Node ID to receive 9 03E Connection to an HP UX system The values in this section of the table must match those used in the Table for HP UX and LU6.2, as indicated. 12 Link station name HPUXCONN 13 Network name 2 NETID 14 CP name 3 HPUXPU 15 Remote LU 7 HPUXLU 16 Application TP 8 MQSERIES 17 Mode name 17 #INTER 18 CPI-C symbolic destination name HPUXCPIC 19 Remote network address FC5D83 20 node ID to receive 6 05D Connection to an AS/400 system The values in this section of the table must match those used in the Table for AS/400 and LU6.2, as indicated. 12 Link station name AS4CONN 13 Network name 1 NETID 14 CP name 2 AS400PU 15 Remote LU 3 AS400LU 16 Application TP 8 MQSERIES 17 Mode name 17 #INTER 18 CPI-C symbolic destination name AS4CPIC 19 Remote network address A5962EF Connection to an OS/390 or MVS/ESA system without CICS The values in this section of the table must match those used in the Table for OS/390 and LU6.2, as indicated. 12 Link station name MVSCONN 13 Network name 2 NETID 14 CP name 3 MVSPU 15 Remote LU 4 MVSLU 16 Application TP 7 MQSERIES 17 Mode name 10 #INTER 18 CPI-C symbolic destination name MVSCPIC 19 Remote network address Connection to a VSE/ESA system The values in this section of the table must match those used in the Table for VSE/ESA and LU6.2, as indicated. 12 Link station name VSECONN 60 MQSeries V5.2 Release Guide

69 Sun Solaris and LU 6.2 Table 2. Configuration worksheet for SNAP IX (continued) ID Parameter Name Ref. Example User Value 13 Network name 1 NETID 14 CP name 2 VSEPU 15 Remote LU 3 VSELU 16 Application TP 4 MQ01 MQ01 17 Mode name #INTER 18 CPI-C symbolic destination name VSECPIC 19 Remote network address Explanation of terms 1 Configuration file name This is the unique name of the SNAP IX configuration file. The default for this name is sna_node.cfg. Although it is possible to edit this file it is strongly recommended that configuration is done using xsnadmin. 2 Control point name This is the unique Control point name for this workstation. In the SNA network, the Control point is an addressable location (PU type 2.1). Your network administrator will assign this to you. 3 Node ID to send This is the unique ID of this workstation. On other platforms this is often referred to as the Exchange ID or XID. Your network administrator will assign this ID for you. 4 Network name This is the unique ID of the network to which you are connected. It is an alphanumeric value and can be 1-8 characters long. The network name works with the Control point name to uniquely identify a system. Your network administrator will tell you the value. 5 Local APPC LU An LU manages the exchange of data between transactions. The local APPC LU name is the name of the LU on your system. Your network administrator will assign this to you. 6 APPC mode This is the name given to the set of parameters that control the APPC conversation. This name must be defined at each partner system. Your network administrator will assign this to you. 7 Invokable TP MQSeries applications trying to converse with this workstation will specify a symbolic name for the program to be run at the receiving Chapter 3. New function in V5.2 UNIX systems only 61

70 Sun Solaris and LU 6.2 end. This will have been defined on the channel definition at the sender. For simplicity, wherever possible use a transaction program name of MQSERIES, or in the case of a connection to VSE/ESA, where the length is limited to 4 bytes, use MQTP. See the MQSeries Intercommunication book for more information. 8 Local MAC address This is the network address of the token-ring card. The address to be specified is found in the ether value displayed in response to the ifconfig tr0 command issued at a root level of authority. (Tr0 is the name of the machine s token-ring interface.) If you do not have the necessary level of authority, your Sun Solaris system administrator can tell you the value. 9 Port name This is a meaningful symbolic name that is used to associate the definitions with a network interface (in this case, a Token-Ring adapter). A separate Port must be defined for each physical device attached to the workstation. 10 Full path to executable This is the path and name of the script file that invokes the MQSeries program to run. 11 Local queue manager This is the name of the queue manager on your local system. 10 Link station name This is a meaningful symbolic name by which the connection to a peer or host node is known. It defines a logical path to the remote system. Its name is used only inside SNAP IX and is specified by you. The connection must be associated with an existing Link and owned by one local node. You must define one connection for each partner or host system. 18 CPI-C symbolic destination name This is a name given to the definition of a partner node. You choose the name. It need be unique only on this machine. Later you can use this name in the MQSeries sender channel definition. 20 Node ID to receive This is the unique ID of the partner workstation with which you will be communicating. On other platforms this is often referred to as the Exchange ID or XID. For a connection to a host system any values except 000 FFFFF and FFF FFFFF may be specified. Your network administrator will assign this ID for you. 62 MQSeries V5.2 Release Guide

71 Establishing a session using SNAP IX The following information guides you through the tasks you must perform to create the SNA infrastructure that MQSeries requires. This example creates the definitions for a partner node and LU on OS/2. Use sna start followed by xsnaadmin to type the SNAP IX configuration panels. You need root authority to use xsnaadmin. SNAP IX configuration: SNAP IX configuration involves the following steps: 1. Defining a local node 2. Adding a Token Ring Port 3. Defining a local LU The SNAP IX main menu, from which you start, is shown here: Using SNAP IX Chapter 3. New function in V5.2 UNIX systems only 63

72 Using SNAP IX Defining a local node: 1. From the SNAP IX main menu, click the Services pull-down: 2. Click Configure node parameters. The following panel is displayed: 3. Complete the Control point name with the values Network name ( 4 ) and Control point name ( 2 ). 4. Type the Control point name ( 2 ) inthecontrol point alias field. 5. Type the Node ID ( 3 ). 6. Click End node. 7. Click OK. A default independent local LU is defined. 64 MQSeries V5.2 Release Guide

73 Using SNAP IX Adding a Token Ring Port: 1. From the main SNAP IX menu, click Connectivity and dependent LUs. 2. Click Add. The following panel is displayed: 3. Click Token Ring Card and click OK. The following panel is displayed: 4. Type the SNA port name ( 9 ). 5. Type a Description and click OK to take the default values. Chapter 3. New function in V5.2 UNIX systems only 65

74 Using SNAP IX Defining a local LU: 1. From the main SNAP IX menu, click Independent local LUs. 2. Click Add. The following panel is displayed: 3. Type the LU name ( 5 ) and click OK. APPC configuration: APPC configuration involves the following steps: 1. Defining a remote node 2. Defining a partner LU 3. Defining a link station 4. Defining a mode 5. Adding CPI-C information 6. Adding a TP definition Defining a remote node: 1. From the main SNAP IX menu, click Remote systems. 2. Click Add. The following panel is displayed: 3. Select the Define remote node check box and click OK. The following panel is displayed: 66 MQSeries V5.2 Release Guide

75 Using SNAP IX 4. Type the Node s SNA network name ( 13 ) and a Description. 5. Click OK. 6. A default partner LU with the same name is generated and a message is displayed. 7. Click OK. Defining a partner LU: 1. From the main SNAP IX menu, click Remote systems and click the remote node. 2. Click Add. The following panel is displayed: 3. Select thedefine partner LU on node node name check box. 4. Click OK. The following panel is displayed: Chapter 3. New function in V5.2 UNIX systems only 67

76 Using SNAP IX 5. Type the partner LU name ( 15 ) and click OK. Defining a link station: 1. From the main SNAP IX menu, click Connectivity and dependent LUs. 2. Click the MQPORT port. 3. Click Add. The following panel is displayed: 4. Select the Add link station to port MQPORT check box. 5. Click OK. The following panel is displayed: 68 MQSeries V5.2 Release Guide

77 Using SNAP IX 6. Type the Name of the link station ( 12 ). 7. Set the value of Activation to On demand. 8. Select the Independent only check box. 9. Click Remote node and select the value of the remote node ( 14 ). 10. Click OK. 11. Set the value of Remote node type to End or LEN node. 12. Type the value for MAC address ( 19 ) and click Advanced. The following panel is displayed: Chapter 3. New function in V5.2 UNIX systems only 69

78 Using SNAP IX 13. Select the Request CP-CP sessions. check box 14. Select the Reactivate link station after failure. check box 15. Click OK to exit the Advanced panel. 16. Click OK again. Defining a mode: 1. From the SNAP IX main menu, click the Services pull-down: The following panel is displayed: 2. Click APPC. The following panel is displayed: 70 MQSeries V5.2 Release Guide

79 Using SNAP IX 3. Click Modes. The following panel is displayed: 4. Click Add. The following panel is displayed: Chapter 3. New function in V5.2 UNIX systems only 71

80 Using SNAP IX 5. Type the Name to be given to the mode ( 17 ). 6. Set the values of Initial session limit to 8, Min con. winner sessions to 4, and Auto-activated sessions to Click OK. 8. Click Done. Adding CPI-C information: 1. From the SNAP IX main menu, click the Services pull-down: 72 MQSeries V5.2 Release Guide

81 Using SNAP IX 2. Click APPC. The following panel is displayed: 3. Click CPI-C. The following panel is displayed: 4. Click Add. The following panel is displayed: Chapter 3. New function in V5.2 UNIX systems only 73

82 Using SNAP IX 5. Type the Name ( 18 ). Select the Application TP check box and type the value ( 16 ). Select the Use PLU alias check box and type the name ( 15 ). Type the Mode name ( 17 ). 6. Click OK. 74 MQSeries V5.2 Release Guide

83 Using SNAP IX Adding a TP definition using SNAP IX Release 6: To add a TP definition: 1. Click the Services pull-down and click APPC as for CPI-C information. 2. Click Transaction Programs. The following panel is displayed: 3. Click Add. The following panel is displayed: Chapter 3. New function in V5.2 UNIX systems only 75

84 Using SNAP IX 4. Type TP name ( 7 ) intheapplication TP field. 5. Clear the Queue incoming Allocates check box. 6. Type Full path to executable ( 10 ). 7. Type -m Local queue manager ( 11 ) inthearguments field. 8. Type mqm in the User ID and Group ID fields. 9. Type environment variables APPCLLU=local LU ( 5 ) and APPCTPN=Invokable TP ( 7 ) separated by the pipe character in the Environment field. 10. Click OK to save your definition. 76 MQSeries V5.2 Release Guide

85 SNAP IX operation: The SNAP IX control daemon is started with the sna start command. Depending on the options selected at installation, it may already be running. The xsnaadmin utility controls SNAP IX resources. Logging and tracing are controlled from here. Log and trace files can be found in the /var/opt/sna directory. The logging files sna.aud and sna.err can be read using a standard editor such as vi. In order to read the trace files sna1.trc and sna2.trc they must first be formatted by running the command snatrcfmt -f sna1.trc -o sna1 which produces a sna1.dmp file that can be read using a normal editor. The configuration file itself is editable but this is not a recommended method of configuring SNAP IX. The APPCLLU environment variables must be set before starting a sender channel from the Sun Solaris system. The command can be either entered interactively or added to the logon profile. Depending on the level of BOURNE shell or KORN shell program being used, the command will be: export APPCLLU=SOLARXLU 5 newer level or APPCLLU=SOLARXLU 5 older level export Using SNAP IX What next?: The connection is now established. You are ready to complete the configuration. Go to MQSeries for Sun Solaris configuration in Chapter 18 of the MQSeries Intercommunication book. MQSeries for Sun Solaris sender-channel definitions using SNAP-IX SNA def ql (OS2) + F usage(xmitq) + replace def qr (OS2.REMOTEQ) + rname(os2.localq) + rqmname(os2) + xmitq(os2) + replace def chl (SOLARIS.OS2.SNA) chltype(sdr) + trptype(lu62) + conname('os2cpic') + 14 xmitq(os2) + replace D E C F G F Chapter 3. New function in V5.2 UNIX systems only 77

86 AIX New function for AIX only This section introduces the new function that applies only to MQSeries for AIX, V5.2. Support for draft 10 threads Version 5.2 of MQSeries for AIX uses the POSIX standard threading library (which was not available on AIX V4.2) to match the implementation on other UNIX platforms. Existing MQSeries appplications built on AIX 4.2 using the draft 7 level of POSIX threads are not affected by this new implementation and will continue to run unchanged. However, MQSeries exits and installable services should be recompiled and relinked using the xlc_r compiler on AIX 4.3 to use the final level of the pthread standard definition (also known as the draft 10 level). It is recommended that any new threaded applications on AIX 4.3 also be written to use this level of the pthreads standard. Enhanced support for Communications Server for AIX V5 Communications Server for AIX V5 support has been enhanced to enable you to use the graphical interface to configure transaction programs invokable by MQSeries. This description should be read in conjunction with Chapter 14 of the MQSeries Intercommunication book. Note: MQSeries no longer supports Communications Server for AIX V4. The section Defining a transaction program in Chapter 14 of the MQSeries Intercommunication book refers to MQSeries versions earlier than V5.2. For V5.2, you define a transaction program as follows: From the main window, click Services, APPC, and Transaction programs... The following panel is displayed: 78 MQSeries V5.2 Release Guide

87 AIX 1. Type TP name ( 6 ) intheapplication TP field. 2. Clear the Queue incoming Allocates check box. 3. Type the Full path to executable ( 7 ). 4. Type m Local queue manager in the Arguments field. 5. Type mqm in the User ID and Group ID fields. 6. Enter environment variables APPCLLU=local LU ( 4 ) and APPCTPN=Invokable TP ( 6 ) separated by the pipe character in the Environment field. 7. Click OK. Refer to Explanation of terms in Chapter 14 of the MQSeries Intercommunication book for a description of the terms marked with a reference number. Chapter 3. New function in V5.2 UNIX systems only 79

APOGEE Insight_KR_Base_3P11

APOGEE Insight_KR_Base_3P11 Technical Specification Sheet Document No. 149-332P25 September, 2010 Insight 3.11 Base Workstation 그림 1. Insight Base 메인메뉴 Insight Base Insight Insight Base, Insight Base Insight Base Insight Windows

More information

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

Page 2 of 6 Here are the rules for conjugating Whether (or not) and If when using a Descriptive Verb. The only difference here from Action Verbs is wh

Page 2 of 6 Here are the rules for conjugating Whether (or not) and If when using a Descriptive Verb. The only difference here from Action Verbs is wh Page 1 of 6 Learn Korean Ep. 13: Whether (or not) and If Let s go over how to say Whether and If. An example in English would be I don t know whether he ll be there, or I don t know if he ll be there.

More information

Page 2 of 5 아니다 means to not be, and is therefore the opposite of 이다. While English simply turns words like to be or to exist negative by adding not,

Page 2 of 5 아니다 means to not be, and is therefore the opposite of 이다. While English simply turns words like to be or to exist negative by adding not, Page 1 of 5 Learn Korean Ep. 4: To be and To exist Of course to be and to exist are different verbs, but they re often confused by beginning students when learning Korean. In English we sometimes use the

More information

Remote UI Guide

Remote UI Guide Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................

More information

- 2 -

- 2 - - 1 - - 2 - - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - - 9 - - 10 - - 11 - - 12 - - 13 - - 14 - - 15 - - 16 - - 17 - - 18 - - 19 - - 20 - - 21 - - 22 - - 23 - - 24 - - 25 - - 26 - - 27 - - 28 - - 29 - - 30 -

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

°í¼®ÁÖ Ãâ·Â

°í¼®ÁÖ Ãâ·Â Performance Optimization of SCTP in Wireless Internet Environments The existing works on Stream Control Transmission Protocol (SCTP) was focused on the fixed network environment. However, the number of

More information

휠세미나3 ver0.4

휠세미나3 ver0.4 andromeda@sparcs:/$ ls -al dev/sda* brw-rw---- 1 root disk 8, 0 2014-06-09 18:43 dev/sda brw-rw---- 1 root disk 8, 1 2014-06-09 18:43 dev/sda1 brw-rw---- 1 root disk 8, 2 2014-06-09 18:43 dev/sda2 andromeda@sparcs:/$

More information

Solaris Express Developer Edition

Solaris Express Developer Edition Solaris Express Developer Edition : 2008 1 Solaris TM Express Developer Edition Solaris OS. Sun / Solaris, Java, Web 2.0,,. Developer Solaris Express Developer Edition System Requirements. 768MB. SPARC

More information

#Ȳ¿ë¼®

#Ȳ¿ë¼® http://www.kbc.go.kr/ A B yk u δ = 2u k 1 = yk u = 0. 659 2nu k = 1 k k 1 n yk k Abstract Web Repertoire and Concentration Rate : Analysing Web Traffic Data Yong - Suk Hwang (Research

More information

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper Windows Netra Blade X3-2B( Sun Netra X6270 M3 Blade) : E37790 01 2012 9 Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs,

More information

Something that can be seen, touched or otherwise sensed

Something that can be seen, touched or otherwise sensed Something that can be seen, touched or otherwise sensed Things about an object Weight Height Material Things an object does Pen writes Book stores words Water have Fresh water Rivers Oceans have

More information

step 1-1

step 1-1 Written by Dr. In Ku Kim-Marshall STEP BY STEP Korean 1 through 15 Action Verbs Table of Contents Unit 1 The Korean Alphabet, hangeul Unit 2 Korean Sentences with 15 Action Verbs Introduction Review Exercises

More information

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드]

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드] 전자회로 Ch3 iode Models and Circuits 김영석 충북대학교전자정보대학 2012.3.1 Email: kimys@cbu.ac.kr k Ch3-1 Ch3 iode Models and Circuits 3.1 Ideal iode 3.2 PN Junction as a iode 3.4 Large Signal and Small-Signal Operation

More information

CD-RW_Advanced.PDF

CD-RW_Advanced.PDF HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5

More information

chapter4

chapter4 Basic Netw rk 1. ก ก ก 2. 3. ก ก 4. ก 2 1. 2. 3. 4. ก 5. ก 6. ก ก 7. ก 3 ก ก ก ก (Mainframe) ก ก ก ก (Terminal) ก ก ก ก ก ก ก ก 4 ก (Dumb Terminal) ก ก ก ก Mainframe ก CPU ก ก ก ก 5 ก ก ก ก ก ก ก ก ก ก

More information

Output file

Output file 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 An Application for Calculation and Visualization of Narrative Relevance of Films Using Keyword Tags Choi Jin-Won (KAIST) Film making

More information

0125_ 워크샵 발표자료_완성.key

0125_ 워크샵 발표자료_완성.key WordPress is a free and open-source content management system (CMS) based on PHP and MySQL. WordPress is installed on a web server, which either is part of an Internet hosting service or is a network host

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING

More information

K7VT2_QIG_v3

K7VT2_QIG_v3 1......... 2 3..\ 4 5 [R] : Enter Raid setup utility 6 Press[A]keytocreateRAID RAID Type: JBOD RAID 0 RAID 1: 2 7 " RAID 0 Auto Create Manual Create: 2 RAID 0 Block Size: 16K 32K

More information

untitled

untitled Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.

More information

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서 PowerChute Personal Edition v3.1.0 990-3772D-019 4/2019 Schneider Electric IT Corporation Schneider Electric IT Corporation.. Schneider Electric IT Corporation,,,.,. Schneider Electric IT Corporation..

More information

thesis

thesis CORBA TMN Surveillance System DPNM Lab, GSIT, POSTECH Email: mnd@postech.ac.kr Contents Motivation & Goal Related Work CORBA TMN Surveillance System Implementation Conclusion & Future Work 2 Motivation

More information

04-다시_고속철도61~80p

04-다시_고속철도61~80p Approach for Value Improvement to Increase High-speed Railway Speed An effective way to develop a highly competitive system is to create a new market place that can create new values. Creating tools and

More information

Backup Exec

Backup Exec (sjin.kim@veritas.com) www.veritas veritas.co..co.kr ? 24 X 7 X 365 Global Data Access.. 100% Storage Used Terabytes 9 8 7 6 5 4 3 2 1 0 2000 2001 2002 2003 IDC (TB) 93%. 199693,000 TB 2000831,000 TB.

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat Sun Server X3-2( Sun Fire X4170 M3) Oracle Solaris : E35482 01 2012 9 Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including

More information

DE1-SoC Board

DE1-SoC Board 실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically

More information

thesis

thesis ( Design and Implementation of a Generalized Management Information Repository Service for Network and System Management ) ssp@nile nile.postech.ac..ac.kr DPE Lab. 1997 12 16 GMIRS GMIRS GMIRS prototype

More information

` Companies need to play various roles as the network of supply chain gradually expands. Companies are required to form a supply chain with outsourcing or partnerships since a company can not

More information

<32382DC3BBB0A2C0E5BED6C0DA2E687770>

<32382DC3BBB0A2C0E5BED6C0DA2E687770> 논문접수일 : 2014.12.20 심사일 : 2015.01.06 게재확정일 : 2015.01.27 청각 장애자들을 위한 보급형 휴대폰 액세서리 디자인 프로토타입 개발 Development Prototype of Low-end Mobile Phone Accessory Design for Hearing-impaired Person 주저자 : 윤수인 서경대학교 예술대학

More information

슬라이드 1

슬라이드 1 / 유닉스시스템개요 / 파일 / 프로세스 01 File Descriptor file file descriptor file type unix 에서의파일은단지바이트들의나열임 operating system 은파일에어떤포맷도부과하지않음 파일의내용은바이트단위로주소를줄수있음 file descriptor 는 0 이나양수임 file 은 open 이나 creat 로 file

More information

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2 FMX FMX 20062 () wwwexellencom sales@exellencom () 1 FMX 1 11 5M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2 FMX FMX D E (one

More information

10X56_NWG_KOR.indd

10X56_NWG_KOR.indd 디지털 프로젝터 X56 네트워크 가이드 이 제품을 구입해 주셔서 감사합니다. 본 설명서는 네트워크 기능 만을 설명하기 위한 것입니다. 본 제품을 올바르게 사 용하려면 이 취급절명저와 본 제품의 다른 취급절명저를 참조하시기 바랍니다. 중요한 주의사항 이 제품을 사용하기 전에 먼저 이 제품에 대한 모든 설명서를 잘 읽어 보십시오. 읽은 뒤에는 나중에 필요할 때

More information

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS ( PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (http://ddns.hanwha-security.com) Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

歯1.PDF

歯1.PDF 200176 .,.,.,. 5... 1/2. /. / 2. . 293.33 (54.32%), 65.54(12.13%), / 53.80(9.96%), 25.60(4.74%), 5.22(0.97%). / 3 S (1997)14.59% (1971) 10%, (1977).5%~11.5%, (1986)

More information

Microsoft PowerPoint - Ieee standard pptx

Microsoft PowerPoint - Ieee standard pptx 200511316 김형석 Test plan Test design specification Test case specification Test procedure specification Test item transmittal report Test log Test incident report Test summary report Purpose -The purpose

More information

<B3EDB9AEC1FD5F3235C1FD2E687770>

<B3EDB9AEC1FD5F3235C1FD2E687770> 경상북도 자연태음악의 소박집합, 장단유형, 전단후장 경상북도 자연태음악의 소박집합, 장단유형, 전단후장 - 전통 동요 및 부녀요를 중심으로 - 이 보 형 1) * 한국의 자연태 음악 특성 가운데 보편적인 특성은 대충 밝혀졌지만 소박집합에 의한 장단주기 박자유형, 장단유형, 같은 층위 전후 구성성분의 시가( 時 價 )형태 등 은 밝혀지지 않았으므로

More information

05Àå

05Àå CHAPTER 05 NT,, XP,. NT NTFS, XP. D,,. XP x NT,,, ( x, x ). NT/ /XP,.. PC NT NT. + Guide to Software: Understanding and Installing Windows 2000 and Windows NT + SOFTWARE Guide to Software 3/e SOFTWARE

More information

¹Ìµå¹Ì3Â÷Àμâ

¹Ìµå¹Ì3Â÷Àμâ MIDME LOGISTICS Trusted Solutions for 02 CEO MESSAGE MIDME LOGISTICS CO., LTD. 01 Ceo Message We, MIDME LOGISTICS CO., LTD. has established to create aduance logistics service. Try to give confidence to

More information

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer Domino, Portal & Workplace WPLC FTSS Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer ? Lotus Notes Clients

More information

solution map_....

solution map_.... SOLUTION BROCHURE RELIABLE STORAGE SOLUTIONS ETERNUS FOR RELIABILITY AND AVAILABILITY PROTECT YOUR DATA AND SUPPORT BUSINESS FLEXIBILITY WITH FUJITSU STORAGE SOLUTIONS kr.fujitsu.com INDEX 1. Storage System

More information

untitled

untitled PowerBuilder 連 Microsoft SQL Server database PB10.0 PB9.0 若 Microsoft SQL Server 料 database Profile MSS 料 (Microsoft SQL Server database interface) 行了 PB10.0 了 Sybase 不 Microsoft 料 了 SQL Server 料 PB10.0

More information

06_ÀÌÀçÈÆ¿Ü0926

06_ÀÌÀçÈÆ¿Ü0926 182 183 184 / 1) IT 2) 3) IT Video Cassette Recorder VCR Personal Video Recorder PVR VCR 4) 185 5) 6) 7) Cloud Computing 8) 186 VCR P P Torrent 9) avi wmv 10) VCR 187 VCR 11) 12) VCR 13) 14) 188 VTR %

More information

SMB_ICMP_UDP(huichang).PDF

SMB_ICMP_UDP(huichang).PDF SMB(Server Message Block) UDP(User Datagram Protocol) ICMP(Internet Control Message Protocol) SMB (Server Message Block) SMB? : Microsoft IBM, Intel,. Unix NFS. SMB client/server. Client server request

More information

00 SPH-V6900_....

00 SPH-V6900_.... SPH-V6900 사용설명서 사용전에 안전을 위한 경고 및 주의사항을 반드시 읽고 바르게 사용해 주세요. 사용설명서의 화면과 그림은 실물과 다를 수 있습니다. 사용설명서의 내용은 휴대전화의 소프트웨어 버전 또는 KTF 사업자의 사정에 따라 다를 수 있으며, 사용자에게 통보없이 일부 변경될 수 있습니다. 휴대전화의 소프트웨어는 사용자가 최신 버전으로 업그레이드

More information

소프트웨어개발방법론

소프트웨어개발방법론 사용사례 (Use Case) Objectives 2 소개? (story) vs. 3 UC 와 UP 산출물과의관계 Sample UP Artifact Relationships Domain Model Business Modeling date... Sale 1 1..* Sales... LineItem... quantity Use-Case Model objects,

More information

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for 2003 Development of the Software Generation Method using Model Driven Software Engineering Tool,,,,, Hoon-Seon Chang, Jae-Cheon Jung, Jae-Hack Kim Hee-Hwan Han, Do-Yeon Kim, Young-Woo Chang Wang Sik, Moon

More information

LXR 설치 및 사용법.doc

LXR 설치 및 사용법.doc Installation of LXR (Linux Cross-Reference) for Source Code Reference Code Reference LXR : 2002512( ), : 1/1 1 3 2 LXR 3 21 LXR 3 22 LXR 221 LXR 3 222 LXR 3 3 23 LXR lxrconf 4 24 241 httpdconf 6 242 htaccess

More information

11¹Ú´ö±Ô

11¹Ú´ö±Ô A Review on Promotion of Storytelling Local Cultures - 265 - 2-266 - 3-267 - 4-268 - 5-269 - 6 7-270 - 7-271 - 8-272 - 9-273 - 10-274 - 11-275 - 12-276 - 13-277 - 14-278 - 15-279 - 16 7-280 - 17-281 -

More information

민속지_이건욱T 최종

민속지_이건욱T 최종 441 450 458 466 474 477 480 This book examines the research conducted on urban ethnography by the National Folk Museum of Korea. Although most people in Korea

More information

6자료집최종(6.8))

6자료집최종(6.8)) Chapter 1 05 Chapter 2 51 Chapter 3 99 Chapter 4 151 Chapter 1 Chapter 6 7 Chapter 8 9 Chapter 10 11 Chapter 12 13 Chapter 14 15 Chapter 16 17 Chapter 18 Chapter 19 Chapter 20 21 Chapter 22 23 Chapter

More information

Chap7.PDF

Chap7.PDF Chapter 7 The SUN Intranet Data Warehouse: Architecture and Tools All rights reserved 1 Intranet Data Warehouse : Distributed Networking Computing Peer-to-peer Peer-to-peer:,. C/S Microsoft ActiveX DCOM(Distributed

More information

슬라이드 제목 없음

슬라이드 제목 없음 (JTC1/SC6) sjkoh@knu.ac.kr JTC1 JTC1/SC6/WG7 ECTP/RMCP/MMC (JTC1/SC6) 2/48 JTC1 ISO/IEC JTC1 Joint Technical Committee 1 ( ) ISO/TC 97 ( ) IEC/TC 83 ( ) Information Technology (IT) http://www.jtc1.org

More information

본문01

본문01 Ⅱ 논술 지도의 방법과 실제 2. 읽기에서 논술까지 의 개발 배경 읽기에서 논술까지 자료집 개발의 본래 목적은 초 중 고교 학교 평가에서 서술형 평가 비중이 2005 학년도 30%, 2006학년도 40%, 2007학년도 50%로 확대 되고, 2008학년도부터 대학 입시에서 논술 비중이 커지면서 논술 교육은 학교가 책임진다. 는 풍토 조성으로 공교육의 신뢰성과

More information

4 5 4. Hi-MO 애프터케어 시스템 편 5. 오비맥주 카스 카스 후레쉬 테이블 맥주는 천연식품이다 편 처음 스타일 그대로, 부탁 케어~ Hi-MO 애프터케어 시스템 지속적인 모발 관리로 끝까지 스타일이 유지되도록 독보적이다! 근데 그거 아세요? 맥주도 인공첨가물이

4 5 4. Hi-MO 애프터케어 시스템 편 5. 오비맥주 카스 카스 후레쉬 테이블 맥주는 천연식품이다 편 처음 스타일 그대로, 부탁 케어~ Hi-MO 애프터케어 시스템 지속적인 모발 관리로 끝까지 스타일이 유지되도록 독보적이다! 근데 그거 아세요? 맥주도 인공첨가물이 1 2 On-air 3 1. 이베이코리아 G마켓 용평리조트 슈퍼브랜드딜 편 2. 아모레퍼시픽 헤라 루즈 홀릭 리퀴드 편 인쇄 광고 올해도 겨울이 왔어요. 당신에게 꼭 해주고 싶은 말이 있어요. G마켓에선 용평리조트 스페셜 패키지가 2만 6900원! 역시 G마켓이죠? G마켓과 함께하는 용평리조트 스페셜 패키지. G마켓의 슈퍼브랜드딜은 계속된다. 모바일 쇼핑 히어로

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

Interstage5 SOAP서비스 설정 가이드

Interstage5 SOAP서비스 설정 가이드 Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

#중등독해1-1단원(8~35)학

#중등독해1-1단원(8~35)학 Life Unit 1 Unit 2 Unit 3 Unit 4 Food Pets Camping Travel Unit 1 Food Before You Read Pre-reading Questions 1. Do you know what you should or shouldn t do at a traditional Chinese dinner? 2. Do you think

More information

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770> 327 Journal of The Korea Institute of Information Security & Cryptology ISSN 1598-3986(Print) VOL.24, NO.2, Apr. 2014 ISSN 2288-2715(Online) http://dx.doi.org/10.13089/jkiisc.2014.24.2.327 개인정보 DB 암호화

More information

- i - - ii - - iii - - iv - - v - - vi - - 1 - - 2 - - 3 - 1) 통계청고시제 2010-150 호 (2010.7.6 개정, 2011.1.1 시행 ) - 4 - 요양급여의적용기준및방법에관한세부사항에따른골밀도검사기준 (2007 년 11 월 1 일시행 ) - 5 - - 6 - - 7 - - 8 - - 9 - - 10 -

More information

Chap06(Interprocess Communication).PDF

Chap06(Interprocess Communication).PDF Interprocess Communication 2002 2 Hyun-Ju Park Introduction (interprocess communication; IPC) IPC data transfer sharing data event notification resource sharing process control Interprocess Communication

More information

2009년 국제법평론회 동계학술대회 일정

2009년 국제법평론회 동계학술대회 일정 한국경제연구원 대외세미나 인터넷전문은행 도입과제와 캐시리스사회 전환 전략 일시 2016년 3월 17일 (목) 14:00 ~17:30 장소 전경련회관 컨퍼런스센터 2층 토파즈룸 주최 한국경제연구원 한국금융ICT융합학회 PROGRAM 시 간 내 용 13:30~14:00 등 록 14:00~14:05 개회사 오정근 (한국금융ICT융합학회 회장) 14:05~14:10

More information

<30353132BFCFB7E15FC7D1B1B9C1A4BAB8B9FDC7D0C8B85F31352D31BCF6C1A4C8AEC0CE2E687770>

<30353132BFCFB7E15FC7D1B1B9C1A4BAB8B9FDC7D0C8B85F31352D31BCF6C1A4C8AEC0CE2E687770> 지상파 방송의 원격송신과 공중송신권 침해여부에 관한 사례연구 Case Study on Copyright Infringement of Remote Transmission of Television Program 최정열(Choe, Jeong-Yeol) * 목 차 Ⅰ. 서론 Ⅱ. 사실 관계 및 재판의 경과 1. 원격시청기기 및 그 사용방법 등 2. 피고의 서비스 3.

More information

2 min 응용 말하기 01 I set my alarm for 7. 02 It goes off. 03 It doesn t go off. 04 I sleep in. 05 I make my bed. 06 I brush my teeth. 07 I take a shower.

2 min 응용 말하기 01 I set my alarm for 7. 02 It goes off. 03 It doesn t go off. 04 I sleep in. 05 I make my bed. 06 I brush my teeth. 07 I take a shower. 스피킹 매트릭스 특별 체험판 정답 및 스크립트 30초 영어 말하기 INPUT DAY 01 p.10~12 3 min 집중 훈련 01 I * wake up * at 7. 02 I * eat * an apple. 03 I * go * to school. 04 I * put on * my shoes. 05 I * wash * my hands. 06 I * leave

More information

Chapter 1

Chapter 1 3 Oracle 설치 Objectives Download Oracle 11g Release 2 Install Oracle 11g Release 2 Download Oracle SQL Developer 4.0.3 Install Oracle SQL Developer 4.0.3 Create a database connection 2 Download Oracle 11g

More information

<31325FB1E8B0E6BCBA2E687770>

<31325FB1E8B0E6BCBA2E687770> 88 / 한국전산유체공학회지 제15권, 제1호, pp.88-94, 2010. 3 관내 유동 해석을 위한 웹기반 자바 프로그램 개발 김 경 성, 1 박 종 천 *2 DEVELOPMENT OF WEB-BASED JAVA PROGRAM FOR NUMERICAL ANALYSIS OF PIPE FLOW K.S. Kim 1 and J.C. Park *2 In general,

More information

<BFA9BAD02DB0A1BBF3B1A4B0ED28C0CCBCF6B9FC2920B3BBC1F62E706466>

<BFA9BAD02DB0A1BBF3B1A4B0ED28C0CCBCF6B9FC2920B3BBC1F62E706466> 001 002 003 004 005 006 008 009 010 011 2010 013 I II III 014 IV V 2010 015 016 017 018 I. 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 III. 041 042 III. 043

More information

vm-웨어-앞부속

vm-웨어-앞부속 VMware vsphere 4 This document was created using the official VMware icon and diagram library. Copyright 2009 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright

More information

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

<3130C0E5>

<3130C0E5> Redundancy Adding extra bits for detecting or correcting errors at the destination Types of Errors Single-Bit Error Only one bit of a given data unit is changed Burst Error Two or more bits in the data

More information

Social Network

Social Network Social Network Service, Social Network Service Social Network Social Network Service from Digital Marketing Internet Media : SNS Market report A social network service is a social software specially focused

More information

00½ÃÀÛ 5š

00½ÃÀÛ 5š The Career of Christian Counselor and the Management of Counseling Center Yeo Han Koo 1) 1 17 2011 29 2) 3) 30 4) 5) 6) 7) 2 3 1999 99 2006 23 45 2007 17 19 4 17 2011 95 148 5 100 2014 26 6 29 17 2004

More information

Journal of Educational Innovation Research 2018, Vol. 28, No. 3, pp DOI: NCS : * A Study on

Journal of Educational Innovation Research 2018, Vol. 28, No. 3, pp DOI:   NCS : * A Study on Journal of Educational Innovation Research 2018, Vol. 28, No. 3, pp.157-176 DOI: http://dx.doi.org/10.21024/pnuedi.28.3.201809.157 NCS : * A Study on the NCS Learning Module Problem Analysis and Effective

More information

H3050(aap)

H3050(aap) USB Windows 7/ Vista 2 Windows XP English 1 2 3 4 Installation A. Headset B. Transmitter C. USB charging cable D. 3.5mm to USB audio cable - Before using the headset needs to be fully charged. -Connect

More information

우리들이 일반적으로 기호

우리들이 일반적으로 기호 일본지방자치체( 都 道 府 縣 )의 웹사이트상에서 심벌마크와 캐릭터의 활용에 관한 연구 A Study on the Application of Japanese Local Self-Government's Symbol Mark and Character on Web. 나가오카조형대학( 長 岡 造 形 大 學 ) 대학원 조형연구과 김 봉 수 (Kim Bong Su) 193

More information

untitled

untitled SAS Korea / Professional Service Division 2 3 Corporate Performance Management Definition ý... is a system that provides organizations with a method of measuring and aligning the organization strategy

More information

PRO1_02E [읽기 전용]

PRO1_02E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_02E1 Information and 2 STEP 7 3 4 5 6 STEP 7 7 / 8 9 10 S7 11 IS7 12 STEP 7 13 STEP 7 14 15 : 16 : S7 17 : S7 18 : CPU 19 1 OB1 FB21 I10 I11 Q40 Siemens AG

More information

사용시 기본적인 주의사항 경고 : 전기 기구를 사용할 때는 다음의 기본적인 주의 사항을 반드시 유의하여야 합니다..제품을 사용하기 전에 반드시 사용법을 정독하십시오. 2.물과 가까운 곳, 욕실이나 부엌 그리고 수영장 같은 곳에서 제품을 사용하지 마십시오. 3.이 제품은

사용시 기본적인 주의사항 경고 : 전기 기구를 사용할 때는 다음의 기본적인 주의 사항을 반드시 유의하여야 합니다..제품을 사용하기 전에 반드시 사용법을 정독하십시오. 2.물과 가까운 곳, 욕실이나 부엌 그리고 수영장 같은 곳에서 제품을 사용하지 마십시오. 3.이 제품은 OPERATING INSTRUCTIONS OPERATING INSTRUCTIONS 사용자설명서 TourBus 0 & TourBus 5 사용시 기본적인 주의사항 경고 : 전기 기구를 사용할 때는 다음의 기본적인 주의 사항을 반드시 유의하여야 합니다..제품을 사용하기 전에 반드시 사용법을 정독하십시오. 2.물과 가까운 곳, 욕실이나 부엌 그리고 수영장 같은 곳에서

More information

Sena Device Server Serial/IP TM Version

Sena Device Server Serial/IP TM Version Sena Device Server Serial/IP TM Version 1.0.0 2005. 3. 7. Release Note Revision Date Name Description V1.0.0 2005-03-7 HJ Jeon Serial/IP 4.3.2 ( ) 210 137-130, : (02) 573-5422 : (02) 573-7710 email: support@sena.com

More information

PRO1_04E [읽기 전용]

PRO1_04E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_04E1 Information and S7-300 2 S7-400 3 EPROM / 4 5 6 HW Config 7 8 9 CPU 10 CPU : 11 CPU : 12 CPU : 13 CPU : / 14 CPU : 15 CPU : / 16 HW 17 HW PG 18 SIMATIC

More information

1217 WebTrafMon II

1217 WebTrafMon II (1/28) (2/28) (10 Mbps ) Video, Audio. (3/28) 10 ~ 15 ( : telnet, ftp ),, (4/28) UDP/TCP (5/28) centralized environment packet header information analysis network traffic data, capture presentation network

More information

Intra_DW_Ch4.PDF

Intra_DW_Ch4.PDF The Intranet Data Warehouse Richard Tanler Ch4 : Online Analytic Processing: From Data To Information 2000. 4. 14 All rights reserved OLAP OLAP OLAP OLAP OLAP OLAP is a label, rather than a technology

More information

<3136C1FD31C8A320C5EBC7D52E687770>

<3136C1FD31C8A320C5EBC7D52E687770> 고속도로건설에 따른 지역간 접근성 변화분석 A study on the impact of new highway construction on regional accessibility The purpose of this is to analyse the interregional accessibility changes due to highway construction.

More information

No Slide Title

No Slide Title Copyright, 2001 Multimedia Lab., CH 3. COM object (In-process server) Eun-sung Lee twoss@mmlab.net Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea 0. Contents 1.

More information

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5] The Asian Journal of TEX, Volume 3, No. 1, June 2009 Article revision 2009/5/7 KTS THE KOREAN TEX SOCIETY SINCE 2007 2008 ko.tex Installing TEX Live 2008 and ko.tex under Ubuntu Linux Kihwang Lee * kihwang.lee@ktug.or.kr

More information

SRC PLUS 제어기 MANUAL

SRC PLUS 제어기 MANUAL ,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO

More information

목 차

목      차 Oracle 9i Admim 1. Oracle RDBMS 1.1 (System Global Area:SGA) 1.1.1 (Shared Pool) 1.1.2 (Database Buffer Cache) 1.1.3 (Redo Log Buffer) 1.1.4 Java Pool Large Pool 1.2 Program Global Area (PGA) 1.3 Oracle

More information

10송동수.hwp

10송동수.hwp 종량제봉투의 불법유통 방지를 위한 폐기물관리법과 조례의 개선방안* 1) 송 동 수** 차 례 Ⅰ. 머리말 Ⅱ. 종량제봉투의 개요 Ⅲ. 종량제봉투의 불법유통사례 및 방지대책 Ⅳ. 폐기물관리법의 개선방안 Ⅴ. 지방자치단체 조례의 개선방안 Ⅵ. 결론 국문초록 1995년부터 쓰레기 종량제가 시행되면서 각 지방자치단체별로 쓰레기 종량제 봉투가 제작, 판매되기 시작하였는데,

More information

Microsoft PowerPoint - 27.pptx

Microsoft PowerPoint - 27.pptx 이산수학 () n-항관계 (n-ary Relations) 2011년봄학기 강원대학교컴퓨터과학전공문양세 n-ary Relations (n-항관계 ) An n-ary relation R on sets A 1,,A n, written R:A 1,,A n, is a subset R A 1 A n. (A 1,,A n 에대한 n- 항관계 R 은 A 1 A n 의부분집합이다.)

More information

untitled

untitled : 2009 00 00 : IMS - 1.0 : IPR. IMS,.,. IMS IMS IMS 1). Copyright IMS Global Learning Consortium 2007. All Rights Reserved., IMS Korea ( ). IMS,. IMS,., IMS IMS., IMS.,., 3. Copyright 2007 by IMS Global

More information

슬라이드 1

슬라이드 1 DHCP (Dynamic Host Configuration Protocol) Oct 2006 Technical Support Div. Tel : 031-739-6800 Mail : support@corecess.com DHCP Motivations Automatic network configuration for clients No administrator intervention

More information

Sun Java System Messaging Server 63 64

Sun Java System Messaging Server 63 64 Sun Java System Messaging Server 6.3 64 Sun Java TM System Communications Suite Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 820 2868 2007 7 Copyright 2007 Sun Microsystems,

More information

49-9분동안 표지 3.3

49-9분동안 표지 3.3 In the ocean, humans create many noises. These noises disturb the waters. People do not know that manmade sound harms the creatures living in the sea. In the end, disturbing the ocean affects each one

More information

Microsoft PowerPoint - CHAP-03 [호환 모드]

Microsoft PowerPoint - CHAP-03 [호환 모드] 컴퓨터구성 Lecture Series #4 Chapter 3: Data Representation Spring, 2013 컴퓨터구성 : Spring, 2013: No. 4-1 Data Types Introduction This chapter presents data types used in computers for representing diverse numbers

More information

삼교-1-4.hwp

삼교-1-4.hwp 5 19대 총선 후보 공천의 과정과 결과, 그리고 쟁점: 새누리당과 민주통합당을 중심으로* 윤종빈 명지대학교 논문요약 이 글은 19대 총선의 공천의 제도, 과정, 그리고 결과를 분석한다. 이론적 검증보다는 공천 과정의 설명과 쟁점의 발굴에 중점을 둔다. 4 11 총선에서 새누리당과 민주통합당의 공천은 기대와 달랐고 그 특징은 다음과 같이 요약될 수 있다. 첫째,

More information

ecorp-프로젝트제안서작성실무(양식3)

ecorp-프로젝트제안서작성실무(양식3) (BSC: Balanced ScoreCard) ( ) (Value Chain) (Firm Infrastructure) (Support Activities) (Human Resource Management) (Technology Development) (Primary Activities) (Procurement) (Inbound (Outbound (Marketing

More information