Front cover
IBM i 7.2 Technical Overview with
Technology Refresh Updates
Ryan Cooper
Dwight Harrison
Takahiro Ichikawa
Siripong Prukpaiboon
Edward Handy Satio
Jiri Sochr
Tom Vernaillen
Redbooks
International Technical Support Organization
IBM i 7.2 Technical Overview with Technology
Refresh Updates
October 2016
SG24-8249-01
Note: Before using this information and the product it supports, read the information in “Notices” on
page xi.
Second Edition (October 2016)
This edition applies to Version 7, Release 2, Modification 0, Technology Refresh 3 of IBM i (5770-SS1) and
related licensed programs.
© Copyright International Business Machines Corporation 2015, 2016. All rights reserved.
Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule
Contract with IBM Corp.
Contents
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
IBM Redbooks promotions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Now you can become a published author, too! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii
Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii
Stay connected to IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Chapter 1. Introduction to IBM i 7.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 IBM i 7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Technology Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Definition of a Technology Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Ordering and checking the installation status of a Technology Refresh . . . . . . . . . 4
1.3 Upgrading to or installing IBM i 7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Supported hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 IBM Pre-Upgrade Verification Tool for IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.3 POWER8 reference documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.4 POWER8 update access keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.5 Load source usable space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.6 HMC and central electrical complex firmware levels. . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.7 IBM i resave levels and their relationship to Technology Refresh . . . . . . . . . . . . . 7
1.3.8 Network installation support for SLIC updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Documentation and support locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.1 IBM Knowledge Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.2 IBM Redbooks publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.3 Announcements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.4 IBM developerWorks, blogs, and wikis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.5 IBM i technical support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Topics that are covered in this book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 Functions available from previous releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Chapter 2. Systems management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1 IBM Navigator for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2 Usability and performance improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.3 Searching for a task by keywords and CL commands . . . . . . . . . . . . . . . . . . . . . 16
2.1.4 Bookmarking your favorite tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.1.5 File systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.6 Target Systems and Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.7 PTF management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.8 Message and system monitors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.1.9 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.1.10 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.1.11 Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.1.12 Omnifind Text Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.1.13 Disk management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
© Copyright IBM Corp. 2015, 2016. All rights reserved. iii
2.1.14 Partition management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2.1.15 Support for additional system values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
2.1.16 Integrated server administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2.1.17 Database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
2.1.18 Printers and printer output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
2.2 IBM i Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
2.2.1 IBM i Access Client Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
2.2.2 IBM i Access for Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
2.2.3 IBM i Access for Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
2.2.4 IBM i Mobile Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
2.3 Application Runtime Expert for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.4 Journal management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.4.1 STRJRN parameter for restore CL commands . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.4.2 Deferred journal restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.4.3 Secure remote journal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.4.4 QJOSJRNE API change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
2.4.5 Journal conversion after an IBM i 7.2 installation . . . . . . . . . . . . . . . . . . . . . . . . 163
2.4.6 Journal limits changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.4.7 New journal entry types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.4.8 Displaying journal information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.4.9 Journal Sizing and Planning tool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.5 Work management enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.5.1 Temporary storage enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.5.2 PTF-related changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
2.5.3 IBM i command changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.5.4 API changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
2.6 Operating system limitation changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
2.7 IBM Advanced Job Scheduler for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
2.7.1 Advanced Job Scheduler properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
2.7.2 Work Flow Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
2.8 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2.8.1 Collection Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
2.8.2 Job Watcher metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Chapter 3. Cloud and virtualization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
3.1 Cloud and IBM i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
3.1.1 IBM PowerVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
3.1.2 OpenStack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3.1.3 IBM Power Virtualization Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3.1.4 IBM SmartCloud Entry for Power Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
3.1.5 IBM Cloud Manager with OpenStack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
3.1.6 IBM Power Systems Solution Edition for Cloud . . . . . . . . . . . . . . . . . . . . . . . . . 200
3.1.7 IBM i cloud offering summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
3.1.8 VMware vRealize Automation for Power. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
3.2 IBM Power Virtualization Performance for Power Systems . . . . . . . . . . . . . . . . . . . . 202
3.2.1 PowerVP components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
3.2.2 PowerVP dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
3.3 IBM i virtualization enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
3.3.1 Virtual Partition Manager GUI in IBM Navigator for i. . . . . . . . . . . . . . . . . . . . . . 205
3.3.2 iVirtualization release support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
3.3.3 Using solid-state drives for network storage spaces. . . . . . . . . . . . . . . . . . . . . . 205
3.3.4 Support of additional disks that are attached through VSCSI . . . . . . . . . . . . . . . 206
3.3.5 Less-complex assignment of tape and optical resources . . . . . . . . . . . . . . . . . . 206
iv IBM i 7.2 Technical Overview with Technology Refresh Updates
3.3.6 Defining system resource usage during storage space creation . . . . . . . . . . . . 207
3.4 Live Partition Mobility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
3.5 Licensing and service provider accommodations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Chapter 4. Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
4.1 Single sign-on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
4.2 Password rule and user profile enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
4.3 Intrusion detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
4.4 Vector Scalar eXtension and cryptographic acceleration . . . . . . . . . . . . . . . . . . . . . . 214
4.5 Cryptographic key management enhancements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
4.6 Cryptography enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.6.1 Default value for the QSSLPCL system value . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.6.2 Cipher specification list changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
4.6.3 Elliptic Curve Cryptography. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
4.6.4 Multiple server certificates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
4.6.5 Digital Certification Manager local certificate authority . . . . . . . . . . . . . . . . . . . . 220
4.6.6 Default cipher specification list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
4.6.7 Signature and hash algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
4.7 DB2 security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
4.8 Networking security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Chapter 5. Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
5.1 Domain Name System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
5.1.1 Domain Name System Security Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
5.1.2 IBM i resolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
5.2 Simple Network Management Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
5.2.1 Configuring storage pools and disk block sizes . . . . . . . . . . . . . . . . . . . . . . . . . 227
5.2.2 SNMP enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
5.2.3 GetBulk operation support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
5.2.4 SNMP manager APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
5.3 SR-IOV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
5.4 System SSL enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
5.5 Virtual private networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
5.5.1 New commands for VPN management and configuration . . . . . . . . . . . . . . . . . 230
5.5.2 Internet Key Exchange version 2 protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
5.5.3 New cryptographic algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
5.6 Virtual local area network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
5.6.1 VLAN configuration by using IBM Navigator for i . . . . . . . . . . . . . . . . . . . . . . . . 242
5.6.2 VLAN configuration by using CL commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
5.7 Retrieving and updating TCP/IP information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
5.7.1 Retrieve TCP/IP Information (RTVTCPINF) CL command . . . . . . . . . . . . . . . . . 244
5.7.2 Update TCP/IP Information (UPDTCPINF) CL command. . . . . . . . . . . . . . . . . . 244
5.8 IPv6 proxy neighbor discovery for virtual Ethernet and PPP . . . . . . . . . . . . . . . . . . . 245
5.9 Single sign-on for FTP and TELNET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
5.10 Virtual Network Interface Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
5.10.1 Configuring the quality of service priority for a virtual Ethernet adapter . . . . . . 246
5.10.2 Viewing the vNIC properties by using the HMC . . . . . . . . . . . . . . . . . . . . . . . . 247
5.10.3 Configuring the quality of service by using IBM Navigator for i. . . . . . . . . . . . . 248
5.11 Ethernet device server support (WAN over LAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Chapter 6. High availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
6.1 Introduction to IBM PowerHA SystemMirror for i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
6.2 IBM PowerHA SystemMirror for i enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
6.2.1 PowerHA SystemMirror for i packaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Contents v
6.2.2 DS8000 HyperSwap support with PowerHA for i 7.2 Express Edition . . . . . . . . 254
6.2.3 Support for SVC/Storwize Global Mirror with Change Volumes . . . . . . . . . . . . . 257
6.2.4 GUI changes in IBM Navigator for i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
6.2.5 Minimum cluster and PowerHA versions for upgrading nodes to IBM i 7.2 . . . . 258
6.2.6 DS8000 IASP-based HyperSwap Technology Preview . . . . . . . . . . . . . . . . . . . 259
6.3 Administrative domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
6.3.1 Increased administrative domain limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
6.3.2 Synchronization of object authority and ownership. . . . . . . . . . . . . . . . . . . . . . . 262
6.4 Independent Auxiliary Storage Pools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
6.4.1 DSPASPSTS improvements for better monitoring of vary-on time . . . . . . . . . . . 263
6.4.2 Reduced UID/GID processing time during vary-on . . . . . . . . . . . . . . . . . . . . . . . 264
6.4.3 IASP assignment for consolidated backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
6.5 Support for SAN Volume Controller and Storwize HyperSwap volumes. . . . . . . . . . . 267
Chapter 7. Backup and recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
7.1 Hardware support and connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
7.1.1 Support for IBM 3592-E08 tape drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
7.1.2 Support for LTO Ultrium 7 tape drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
7.1.3 SAN multipath and automatic fail-over support for tape drives . . . . . . . . . . . . . . 272
7.2 General save and restore functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
7.2.1 Better control over journaling during restoration of objects. . . . . . . . . . . . . . . . . 273
7.2.2 Faster configuration of independent disk pools with CFGDEVASP . . . . . . . . . . 273
7.2.3 Spooled file save enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
7.2.4 Select parameter (SELECT) added to various commands and APIs . . . . . . . . . 275
7.2.5 TCP/IP configuration data that is saved automatically . . . . . . . . . . . . . . . . . . . . 276
7.2.6 Better IFS save performance with Asynchronous Bring . . . . . . . . . . . . . . . . . . . 276
7.2.7 Modifications of the SAVE and RESTORE menus . . . . . . . . . . . . . . . . . . . . . . . 276
7.2.8 Removal of obsolete functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7.2.9 Improving single object restore performance . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7.3 Backup, Recovery, and Media Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7.3.1 BRMS Enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7.3.2 Usability improvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
7.3.3 Backup function enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
7.3.4 Recovery function enhancements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
7.3.5 Media services enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
7.3.6 Maintenance enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
7.3.7 BRMS GUI in IBM Navigator for i enhancements . . . . . . . . . . . . . . . . . . . . . . . . 302
7.3.8 Migration enhancements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
7.3.9 Miscellaneous BRMS enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Chapter 8. IBM DB2 for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
8.1 Introduction to DB2 for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
8.2 Separation of duties concept. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
8.2.1 QIBM_DB_SECADM function usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
8.2.2 Row and Column Access Control support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
8.3 DB2 security enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
8.3.1 QIBM_DB_ZDA and QIBM_DB_DDMDRDA function usage IDs . . . . . . . . . . . . 333
8.3.2 Authorization list detail added to authorization catalogs . . . . . . . . . . . . . . . . . . . 333
8.3.3 New user-defined table function: QSYS2.GROUP_USERS(). . . . . . . . . . . . . . . 334
8.3.4 New security view: QSYS2.GROUP_PROFILE_ENTRIES . . . . . . . . . . . . . . . . 334
8.3.5 New attribute column in the SYSIBM.AUTHORIZATIONS catalog. . . . . . . . . . . 334
8.3.6 New QSYS2.SQL_CHECK_AUTHORITY() UDF . . . . . . . . . . . . . . . . . . . . . . . . 335
8.3.7 Refined object auditing control on QIBM_DB_OPEN exit program . . . . . . . . . . 335
vi IBM i 7.2 Technical Overview with Technology Refresh Updates
8.3.8 Simplified DDM/DRDA authentication management by using group profiles . . . 336
8.3.9 IBM InfoSphere Guardium V9.0 and IBM Security Guardium V10 . . . . . . . . . . . 337
8.4 DB2 functional enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
8.4.1 OFFSET and LIMIT clauses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
8.4.2 CREATE OR REPLACE table SQL statement . . . . . . . . . . . . . . . . . . . . . . . . . . 340
8.4.3 DB2 JavaScript Object Notation store. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8.4.4 Remote 3-part name support on ASSOCIATE LOCATOR . . . . . . . . . . . . . . . . . 344
8.4.5 Flexible views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8.4.6 Increased time stamp precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
8.4.7 Named and default parameter support for UDF and UDTFs . . . . . . . . . . . . . . . 346
8.4.8 Function resolution by using casting rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
8.4.9 Use of ARRAYs within scalar UDFs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
8.4.10 Built-in global variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
8.4.11 Expressions in PREPARE and EXECUTE IMMEDIATE statements . . . . . . . . 352
8.4.12 Autonomous procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
8.4.13 New SQL TRUNCATE statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
8.4.14 New LPAD() and RPAD() built-in functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
8.4.15 Pipelined table functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
8.4.16 Regular expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
8.4.17 JOB_NAME and SERVER_MODE_JOB_NAME built-in global variables . . . . 359
8.4.18 RUNSQL control of output listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
8.4.19 LOCK TABLE ability to target non-*FIRST members . . . . . . . . . . . . . . . . . . . . 360
8.4.20 QUSRJOBI() retrieval of DB2 built-in global variables . . . . . . . . . . . . . . . . . . . 360
8.4.21 SQL functions (user-defined functions and user-defined table functions) parameter
limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
8.4.22 New binary scalar functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
8.4.23 Adding and dropping partitions spanning DDS logical files. . . . . . . . . . . . . . . . 361
8.4.24 Direct control of system names for global variables . . . . . . . . . . . . . . . . . . . . . 361
8.4.25 LOCK TABLE ability to target non-FIRST members . . . . . . . . . . . . . . . . . . . . . 362
8.5 DB2 for i services and catalogs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
8.5.1 DB2 for i catalogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
8.5.2 DB2 for i Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
8.5.3 IBM i Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
8.6 DB2 performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
8.6.1 SQE I/O cost model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
8.6.2 SQE support for native file opens, Query/400, and OPNQRYF . . . . . . . . . . . . . 378
8.6.3 PDI for DB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
8.6.4 Queries with a long IN predicate list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
8.6.5 Index advice and OR predicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
8.6.6 KEEP IN MEMORY for tables and indexes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
8.6.7 Collection Services enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
8.6.8 Enhanced index build logic for highly concurrent environments . . . . . . . . . . . . . 392
8.6.9 Accepting a priority change for a parallel index build . . . . . . . . . . . . . . . . . . . . . 392
8.6.10 SQE index merge ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
8.6.11 QSYS2.DATABASE_MONITOR_INFO view . . . . . . . . . . . . . . . . . . . . . . . . . . 393
8.6.12 QAQQINI memory preference by pool name . . . . . . . . . . . . . . . . . . . . . . . . . . 394
8.6.13 Index statistical catalogs enhancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
8.6.14 QSYS2.CLEAR_PLAN_CACHE() procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 396
8.6.15 Encoded vector indexes only access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
8.6.16 STRDBMON command filtering improvement . . . . . . . . . . . . . . . . . . . . . . . . . 396
8.7 Database engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
8.7.1 IBM System i Navigator DB2 related functions . . . . . . . . . . . . . . . . . . . . . . . . . . 398
8.7.2 IBM Navigator for i: DB2 related functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Contents vii
8.7.3 Queued exclusive locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
8.7.4 CREATE TABLE AS SELECT from a remote database . . . . . . . . . . . . . . . . . . . 409
8.7.5 Live movement of tables and indexes to SSD . . . . . . . . . . . . . . . . . . . . . . . . . . 410
8.7.6 Range partitioned tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
8.8 DB2 Web Query for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
8.9 OmniFind Text Search Server for DB2 for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Chapter 9. Application development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
9.1 Languages and compilers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
9.1.1 Command Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
9.1.2 ILE RPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
9.1.3 ILE COBOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
9.1.4 ILE C/C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
9.1.5 System APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
9.2 Java on IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
9.2.1 IBM Developer Kit for Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
9.2.2 IBM Toolbox for Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
9.3 Rational Tools for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
9.3.1 IBM Rational Developer for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
9.3.2 IBM Rational Application Developer for WebSphere Software . . . . . . . . . . . . . . 451
9.3.3 IBM Rational Business Developer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
9.3.4 IBM Rational Team Concert for i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
9.3.5 IBM Rational Host Access Transformation Services. . . . . . . . . . . . . . . . . . . . . . 457
9.3.6 IBM Rational Application Management Toolset for i . . . . . . . . . . . . . . . . . . . . . . 460
9.3.7 ARCAD Pack for Rational . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
9.4 Portable Applications Solutions Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
9.5 Ruby on Rails for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
9.6 Zend and PHP on IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
9.6.1 What is new in Zend Server V8 and V8.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
9.6.2 Zend Server Basic Edition for IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
9.6.3 Zend Server Professional and Enterprise Edition for IBM i. . . . . . . . . . . . . . . . . 466
9.6.4 Zend Studio for IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
9.6.5 Zend DBi and PHP database support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
9.7 Mobile application development for IBM i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
9.8 Open Source for IBM i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
9.8.1 Node.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
9.8.2 Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
9.8.3 GNU Compiler Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
9.9 Samba on IBM i. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Chapter 10. IBM i server functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
10.1 IBM HTTP Server for i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
10.1.1 Licensed program requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
10.1.2 Upgraded to Apache 2.4.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
10.1.3 IBM Web Administration for i for managing a WebSphere Application Server
installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
10.2 IBM i Integrated Web Application and Web Services Server . . . . . . . . . . . . . . . . . . 480
10.2.1 IBM i Integrated Web Application Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
10.2.2 IBM i Integrated Web Services Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
10.3 IBM WebSphere Application Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
10.3.1 Supported WebSphere Application Server versions on IBM i 7.2. . . . . . . . . . . 484
10.3.2 WebSphere Application Server Liberty Core packaging . . . . . . . . . . . . . . . . . . 485
10.3.3 WebSphere Application Server Liberty Profile . . . . . . . . . . . . . . . . . . . . . . . . . 486
viii IBM i 7.2 Technical Overview with Technology Refresh Updates
10.3.4 Installation of WebSphere Application Server to IBM i . . . . . . . . . . . . . . . . . . . 486
10.3.5 Upgrading to IBM i 7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
10.4 IBM Social Collaboration products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
10.5 IBM Printing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
10.5.1 CPYSPLF CL command now supports the PDF format . . . . . . . . . . . . . . . . . . 487
10.5.2 Controlling the method of sending spooled files from list panels . . . . . . . . . . . 488
10.5.3 Changes to TrueType and OpenType fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
10.5.4 New bar code types for the printer DDS BARCODE keyword . . . . . . . . . . . . . 488
10.5.5 Color image support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
10.5.6 Color management support added to Print Services Facility for IBM i . . . . . . . 489
10.5.7 Host print transform now supports color images. . . . . . . . . . . . . . . . . . . . . . . . 490
10.5.8 AFP color and grayscale solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
Contents ix
x IBM i 7.2 Technical Overview with Technology Refresh Updates
Notices
This information was developed for products and services offered in the US. This material might be available
from IBM in other languages. However, you may be required to own a copy of the product or product version in
that language in order to access it.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult
your local IBM representative for information on the products and services currently available in your area. Any
reference to an IBM product, program, or service is not intended to state or imply that only that IBM product,
program, or service may be used. Any functionally equivalent product, program, or service that does not
infringe any IBM intellectual property right may be used instead. However, it is the user’s responsibility to
evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document. The
furnishing of this document does not grant you any license to these patents. You can send license inquiries, in
writing, to:
IBM Director of Licensing, IBM Corporation, North Castle Drive, MD-NC119, Armonk, NY 10504-1785, US
INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION “AS IS”
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A
PARTICULAR PURPOSE. Some jurisdictions do not allow disclaimer of express or implied warranties in
certain transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made
to the information herein; these changes will be incorporated in new editions of the publication. IBM may make
improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time
without notice.
Any references in this information to non-IBM websites are provided for convenience only and do not in any
manner serve as an endorsement of those websites. The materials at those websites are not part of the
materials for this IBM product and use of those websites is at your own risk.
IBM may use or distribute any of the information you provide in any way it believes appropriate without
incurring any obligation to you.
The performance data and client examples cited are presented for illustrative purposes only. Actual
performance results may vary depending on specific configurations and operating conditions.
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm the
accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the
capabilities of non-IBM products should be addressed to the suppliers of those products.
Statements regarding IBM’s future direction or intent are subject to change or withdrawal without notice, and
represent goals and objectives only.
This information contains examples of data and reports used in daily business operations. To illustrate them
as completely as possible, the examples include the names of individuals, companies, brands, and products.
All of these names are fictitious and any similarity to actual people or business enterprises is entirely
coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs in
any form without payment to IBM, for the purposes of developing, using, marketing or distributing application
programs conforming to the application programming interface for the operating platform for which the sample
programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore,
cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are
provided “AS IS”, without warranty of any kind. IBM shall not be liable for any damages arising out of your use
of the sample programs.
© Copyright IBM Corp. 2015, 2016. All rights reserved. xi
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines
Corporation, registered in many jurisdictions worldwide. Other product and service names might be
trademarks of IBM or other companies. A current list of IBM trademarks is available on the web at “Copyright
and trademark information” at http://www.ibm.com/legal/copytrade.shtml
The following terms are trademarks or registered trademarks of International Business Machines Corporation,
and might also be trademarks or registered trademarks in other countries.
AIX® InfoSphere® PureFlex®
Bluemix® Jazz™ PureSystems®
CICS® Lotus® Rational®
Concert™ Lotus Notes® Rational Team Concert™
DB2® Notes® Redbooks®
developerWorks® OmniFind® Redbooks (logo) ®
Domino® OS/400® S-TAP®
DS8000® POWER® Sametime®
Easy Tier® Power Systems™ Storwize®
FICON® POWER6® System i®
FlashCopy® POWER6+™ System Storage®
Guardium® POWER7® System z®
HyperSwap® POWER7+™ SystemMirror®
i5/OS™ POWER8® Systems Director VMControl™
IBM® PowerHA® Tivoli®
IBM Connections™ PowerVM® WebSphere®
IBM Flex System® PowerVP™ XIV®
IBM SmartCloud® Print Services Facility™ z/OS®
IBM z™ ProtecTIER® z/VM®
The following terms are trademarks of other companies:
SoftLayer, and SoftLayer device are trademarks or registered trademarks of SoftLayer, Inc., an IBM Company.
Linux is a trademark of Linus Torvalds in the United States, other countries, or both.
LTO, Ultrium, the LTO Logo and the Ultrium logo are trademarks of HP, IBM Corp. and Quantum in the U.S.
and other countries.
Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States,
other countries, or both.
Java, and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its
affiliates.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Other company, product, or service names may be trademarks or service marks of others.
xii IBM i 7.2 Technical Overview with Technology Refresh Updates
IBM REDBOOKS
IBM Redbooks promotions
Find and read thousands of
IBM Redbooks publications
Search, bookmark, save and organize favorites
Get up-to-the-minute Redbooks news and announcements
Link to the latest Redbooks blogs and videos
Get the latest version of the Redbooks Mobile App
Download
Android
iOS
Now
Promote your business
in an IBM Redbooks
publication
®
Place a Sponsorship Promotion in an IBM
®
Redbooks publication, featuring your business
or solution with a link to your web site.
Qualified IBM Business Partners may place a full page
promotion in the most popular Redbooks publications.
Imagine the power of being seen by users who download ibm.com/Redbooks
millions of Redbooks publications each year! About Redbooks Business Partner Programs
THIS PAGE INTENTIONALLY LEFT BLANK
Preface
This IBM® Redbooks® publication provides a technical overview of the features, functions,
and enhancements that are available in IBM i 7.2, including all the available Technology
Refresh (TR) levels, from TR1 to TR3. This publication provides a summary and brief
explanation of the many capabilities and functions in the operating system. It also describes
many of the licensed programs and application development tools that are associated with
IBM i.
The information that is provided in this book is useful for clients, IBM Business Partners, and
IBM service professionals that are involved with planning, supporting, upgrading, and
implementing IBM i 7.2 solutions.
Authors
This book was produced by a team of specialists from around the world working at the
International Technical Support Organization, Rochester Center.
Ryan Cooper is an IBM Power Systems™ Engineer for Sirius
Computer Solutions, which is headquartered in San Antonio,
TX. He works in the Managed Services practice of the
company, where Sirius provides system management and
technical support for customers running various platforms,
including IBM i running on IBM Power Systems. He has also
assisted IBM in the development of Power Systems
certification tests as a subject matter expert (SME).
Dwight Harrison is an IBM i hardware remote support
specialist at the IBM i Global Support Center in Rochester,
Minnesota. After serving in the United States Marine Corps, he
started his IBM career in January 1970 in Rochester,
Minnesota. One year later, he transferred to Omaha, Nebraska,
as a customer engineer. In January 1984, he transferred back
to the Rochester site as a lab technician. In August 1987, he
transferred back to North Platte, Nebraska, as a remote
customer engineer where he installed and serviced the AS/400
until January 1993, when he accepted a position in the IBM i
Global Support Center in Rochester, Minnesota. From 1993 to
present, he assists with worldwide IBM i hardware support. He
has helped author several System Handbooks, System
Builders, and other IBM Redbooks publications.
© Copyright IBM Corp. 2015, 2016. All rights reserved. xv
Takahiro Ichikawa is an Advisory IT Specialist for IBM
PowerSystems and IBM i. He joined IBM Japan Systems
Engineering Co., Ltd., which is a subsidiary of IBM Japan, as
IBM i Advanced Technical Support in 2006. He has 8 years of
experience with IBM i support and solution implementation.
From 2006 to present, he assists with many of projects that are
related to Power Systems and IBM i as a SME. His areas of
expertise include virtualization, external storage, high
availability, performance analysis, IBM WebSphere®
Application Server for IBM i, IBM WebSphere MQ for IBM i, and
overall IBM i operations. He holds a bachelor’s degree in
computer engineering from Waseda University, Japan.
Siripong Prukpaiboon is an IT Specialist for IBM i, IBM
z/OS®, and HP-Nonstop (TANDEM) at IBM Thailand. He
started his career with IBM in 2006. His area of expertise
includes iSeries and Power Systems hardware, IBM i problem
determination, performance analysis and tuning, external and
internal storage solutions, and security. He holds a Master of
Science degree in Innovation Management and Bachelor of
Engineering degree in Electrical Engineering from
Chulalongkorn University.
Edward Handy Satio is an IT Specialist for IBM i and Power
Systems at IBM Indonesia. His area of expertise includes IBM i
on external storage, high availability, performance analysis and
tuning, and IBM i problem determination. He supports IBM i
and Power Systems implementation projects, technical
support, and consultancy in Indonesia. He is also one of
technical advocates for an IBM regional customer. He holds a
Bachelor of Computer Science degree in Artificial Intelligence
and a Bachelor of Applied Science degree in Computational
Mathematics, both from Universitas Pelita Harapan. Apart from
IBM publications, he has several technical publications that are
related to artificial intelligence.
xvi IBM i 7.2 Technical Overview with Technology Refresh Updates
Jiri Sochr is an Open Group Master Certified IT Specialist at
IBM Innovation Centre Central Europe in Brno, Czech
Republic. He provides third-level support for IBM i customers in
Europe. Jiri is a Senior SME in the EMEA Technical Leadership
Team. He has more than 25 years experience in AS/400,
iSeries, IBM i, and IBM Power Systems hardware, IBM i
software products, application development, workload
management, security, performance, and external and internal
storage solutions. He has a broad knowledge of other IBM
platforms and products. He specializes in IBM i complex
problem determination and multiplatform solutions. He also
works as an IT Architect for projects where IBM i is part of the
whole solution. Jiri holds a doctoral degree in Natural Sciences
from the Faculty of Mathematics and Physics, Charles
University, Prague, Czech Republic. Jiri joined IBM in 2009.
Before joining IBM, he worked for an IBM Business Partner
company as an IBM i systems engineer and technical leader.
Tom Vernaillen is a Senior IT Specialist in Belgium. His areas
of expertise include IBM i problem determination, network
connectivity, and communications, including TCP/IP. He has
participated in previous ITSO residencies, preparing technical
overview presentation material and writing TCP/IP
communications-related IBM Redbooks publications for IBM i.
He is an Enhanced Technical Support remote Account
Advocate for several IBM Power Systems customers.
This second edition of this IBM Redbooks project was led by:
Debbie Landon
International Technical Support Organization, Rochester Center
Thanks to the authors of the first edition of this book, which was published in October 2015:
Justin C. Haase, Sirius Computer Solutions
Dwight Harrison, IBM USA
Yohichi Nakamura, IBM Japan
Edward Handy Satio, IBM Indonesia
Jiri Sochr, IBM Czech Republic
Tom Vernaillen, IBM Belgium
Marcin Wilk, IBM Poland
Thanks to the following people for their contributions to this project:
Craig Aldrich, Robert Bestgen, David Bhaskaran, Jeff Block, John Broich, David Charron,
Jim Chen, Jenny Dervin, Scott Forstie, Mark Goff, Michael Groeschel, Bruce Hansel,
Joe Kochan, Daniel Laun, Terry Luebbe, Tim Mullenbach, Matthew Neill, Brian Nordland,
Chad Olstad, Lora Powell, Scott Prunty, Carol Ramler, Marilin Rodriguez, Tim Rowe,
Mike Russell, Mike Schambureck, Curt Schemmel, Dennis Schroeder, Robert Seemann,
Ellie Streifel, Jim Tilbury, Jeff Uehling, Nancy Uthke-Schmucki, Duane Wenzel, Kris Whitney,
Steve Will, Jill Wilson, Don Zimmerman
IBM Rochester
Preface xvii
Cheng Min Chi, Zhang Gan, Xiang Kun Kong, Xiao Qing Lv, Sowjanya Rao, Jian Sang, Pan
Wang, Shuang Hong Wang, Zhao Bo Wang, Hai Bo Yu, Chang Zhang, Ming Jing Zhang,
Chang Qing Zheng, Bing Zu
IBM China
Edmund Reinhardt and Alfonso Rodriguez
IBM Canada
Jay Johnson
Sirius Computer Solutions
Ann Lund
International Technical Support Organization, Rochester Center
Now you can become a published author, too!
Here’s an opportunity to spotlight your skills, grow your career, and become a published
author—all at the same time! Join an ITSO residency project and help write a book in your
area of expertise, while honing your experience using leading-edge technologies. Your efforts
will help to increase product acceptance and customer satisfaction, as you expand your
network of technical contacts and relationships. Residencies run from two to six weeks in
length, and you can participate either in person or as a remote resident working from your
home base.
Find out more about the residency program, browse the residency index, and apply online at:
ibm.com/redbooks/residencies.html
Comments welcome
Your comments are important to us!
We want our books to be as helpful as possible. Send us your comments about this book or
other IBM Redbooks publications in one of the following ways:
Use the online Contact us review Redbooks form found at:
ibm.com/redbooks
Send your comments in an email to:
[email protected]
Mail your comments to:
IBM Corporation, International Technical Support Organization
Dept. HYTD Mail Station P099
2455 South Road
Poughkeepsie, NY 12601-5400
xviii IBM i 7.2 Technical Overview with Technology Refresh Updates
Stay connected to IBM Redbooks
Find us on Facebook:
http://www.facebook.com/IBMRedbooks
Follow us on Twitter:
http://twitter.com/ibmredbooks
Look for us on LinkedIn:
http://www.linkedin.com/groups?home=&gid=2130806
Explore new Redbooks publications, residencies, and workshops with the IBM Redbooks
weekly newsletter:
https://www.redbooks.ibm.com/Redbooks.nsf/subscribe?OpenForm
Stay current on recent Redbooks publications with RSS Feeds:
http://www.redbooks.ibm.com/rss.html
Preface xix
xx IBM i 7.2 Technical Overview with Technology Refresh Updates
1
Chapter 1. Introduction to IBM i 7.2
This chapter introduces IBM i 7.2. Subsequent chapters in this book provide in-depth
information about specific functional areas of IBM i and associated licensed programs. As a
technical overview document, detailed instructions or examples are beyond the scope of this
publication. The purpose of this document is to consolidate into a single reference a summary
of information that is related to IBM i 7.2.
This chapter describes the following topics:
1.1, “IBM i 7.2” on page 2
1.2, “Technology Refresh” on page 2
1.3, “Upgrading to or installing IBM i 7.2” on page 5
1.4, “Documentation and support locations” on page 8
1.5, “Topics that are covered in this book” on page 11
1.6, “Functions available from previous releases” on page 12
A valuable starting point for readers of this publication, and anyone that is involved with the
installation or an upgrade from a previous release of the IBM i operating system, is the IBM i
Memo to Users. It is available in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgmtu.htm
More detailed information about IBM i 7.2 enhancements can be found at these websites:
IBM i 7.2 IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/ic-homepage.htm
IBM developerWorks® IBM i Technology Updates wiki:
https://ibm.biz/BdsdpH
Planning to upgrade to IBM i 7.2:
http://www.ibm.com/systems/support/i/planning/upgrade/v7r2/index.html
Customer notices and information for IBM i 7.2:
http://www.ibm.com/systems/support/planning/notices72.html
© Copyright IBM Corp. 2015, 2016. All rights reserved. 1
1.1 IBM i 7.2
On May 2, 2014, IBM i 7.2 was made generally available. This release is the 23rd major
release of the IBM i family of operating systems. Previous releases included IBM i5/OS™ and
IBM OS/400®. The following are the release dates for the subsequent IBM i 7.2 Technology
Refresh dates:
On October 6, 2014, IBM i 7.2 Technology Refresh 1 was announced.
On April 28, 2015, IBM i 7.2 Technology Refresh 2 was announced.
On October 5, 2015 IBM i 7.2 Technology Refresh 3 (TR3) was announced.
For more information about the dates of support for the various IBM i releases, see the
following website:
http://www.ibm.com/systems/support/i/planning/upgrade/suptschedule.html
1.2 Technology Refresh
IBM i 7.2 continues to use the Technology Refresh concept for product updates throughout
the life of the operating system.
For more information about the Technology Refresh PTF Group, and many more details
regarding the Technology Refresh concept, see this website:
http://www.ibm.com/systems/support/i/planning/techrefresh/index.html
1.2.1 Definition of a Technology Refresh
The Technology Refresh concept was introduced in IBM i 7.1. Technology Refresh allows for
updates to the operating system that affect mainly the System Licensed Internal Code (SLIC),
I/O, and virtualization functions. These updates are delivered by using a PTF Group, but
provide changes and enhancements that are normally reserved for SLIC updates or even full
releases.
Technology Refresh: A collection of OS software for “new function enablement” that is
packaged together, tested together, and delivered as a single PTF Group.
Additionally, new and updated products within the OS are bundled together and delivered at
approximately the same time as a Technology Refresh. These new and updated products
also use PTF Groups. This concept allows for major enhancements to occur during the same
time frame as the Technology Refresh release.
By implementing Technology Refresh, IBM i became even more flexible and responsive to a
changing environment without adding the burden of installing and qualifying a new release to
keep systems up-to-date. The Technology Refresh makes it possible to implement new
hardware and software features in a way that is relatively seamless by using a familiar PTF
application process. By simply ordering and applying the current Technology Refresh PTF
Group, the system is updated and the new or updated features are ready to use.
Review the cover letters and online documentation for all PTF Groups and Technology
Refreshes to ensure that you are ordering all the necessary fixes to acquire the new
functions.
2 IBM i 7.2 Technical Overview with Technology Refresh Updates
Important: Large enhancements to parts of IBM i are released at the same time as
Technology Refreshes, but they typically do not depend on each other. For example, if you
ordered only the new Technology Refresh PTF Group, you dot not receive the
improvements to IBM DB2® for i or for BRMS. Updates to DB2 for i are included in the
Database PTF Group. Updates to BRMS are handled within the Backup and Recovery
Solutions PTF Group. Schedules of releases have the potential to vary in cadence among
PTF Group releases and Technology Refreshes.
Similar to firmware updates, Technology Refreshes are cumulative. All the new and updated
features that are introduced in earlier Technology Refreshes are included in later ones, and
only the most current version is orderable. Previous versions become unavailable for ordering
after a new Technology Refresh is released.
Figure 1-1 shows a representation of how Technology Refreshes relate to the IBM i operating
system, and how the Technology Refresh PTF Group is ordered. The figure indicates how the
contents of Technology Refresh 1 are included in Technology Refresh 2, and likewise how the
contents of Technology Refresh 1 and 2 are included with Technology Refresh 3. This pattern
continues through all iterations of Technology Refreshes for the current release of the IBM i
version that supports Technology Refreshes.
Note: To order the newest Technology Refresh, you must order the IBM i 7.2 Technology
Refresh PTF Group SF99717.
Technology Refresh 3
Technology Refresh 2
Technology Refresh 1
Base OS
IBM i 7.2 Technology Refresh PTF Group
SF99717
Figure 1-1 Graphical representation of the cumulative structure of Technology Refreshes
Chapter 1. Introduction to IBM i 7.2 3
Here are some notable examples of previous Technology Refreshes:
IBM i 7.1 TR4: Support for Live Partition Mobility (LPM)
IBM i 7.1 TR8: Increased number of disks for VSCSI connections from 16 to 32
IBM i 7.1 TR9: Support for IBM i 7.1 on POWER8® Enterprise Systems hardware
IBM i 7.2 TR1: Support for IBM i 7.2 on POWER8 Enterprise Systems hardware
1.2.2 Ordering and checking the installation status of a Technology Refresh
To order the most recent Technology Refresh PTF Group for IBM i 7.2, use the group
identifier SF99717. All Technology Refreshes are ordered by using the PTF Group. Future
Technology Refresh packages are orderable by using the SF99717 identifier, but contain
additional fixes to support the level of the most recent Technology Refresh.
Important: It is not possible to remove an installed Technology Refresh level without
performing a reinstallation of the Licensed Internal Code. This is colloquially known as
“slipping the SLIC.” For more information, see 1.3.7, “IBM i resave levels and their
relationship to Technology Refresh” on page 7.
Always review cover letters for the Technology Refresh PTF Group, and any other PTFs,
before applying the Technology Refresh to your system to ensure that there are no special
instructions for which you should account.
To order fixes, go to the IBM Fix Central website:
http://www.ibm.com/support/fixcentral
You can review your installed Technology Refresh level by using the Work with PTF Groups
(WRKPTFGRP) Command Language (CL) command and looking at the installed level of
SF99717. See Figure 1-2.
Work with PTF Groups
System: RCHESP1
Type options, press Enter.
1=Order 4=Delete 5=Display 6=Print 8=Display special handling PTFs
9=Display related PTF groups 10=Display PTF apply information
Opt PTF Group Level Status
SF99776 1 Installed
SF99775 3 Installed
SF99766 2 Installed
SF99766 3 Installed
SF99747 8 Installed
SF99747 9 Installed
SF99720 14101 Installed
SF99720 14276 Installed
SF99719 20 Installed
SF99719 22 Installed
SF99718 8 Installed
SF99718 9 Installed
SF99717 1 Installed
More...
F3=Exit F6=Print F11=Display descriptions F12=Cancel
F22=Display entire field
Figure 1-2 Work with PTF Groups display showing IBM i 7.2 Technology Refresh 1 installed
4 IBM i 7.2 Technical Overview with Technology Refresh Updates
Releases of software enhancements that are produced at the same approximate time as
Technology Refreshes are orderable and viewable in the same manner. Ordering is
performed by using the appropriate PTF Group identifier. Examples of some IBM i 7.2 PTF
Group identifiers are shown in Example 1-1.
Example 1-1 List of various IBM i 7.2 PTF Group packages
SF99480 - WebSphere App Server v8.
SF99481 - WebSphere App Server v8.5
SF99702 - DB2 for IBM i
SF99713 - IBM HTTP Server for i
SF99714 - Performance tools for IBM i
SF99715 - Backup Recovery Solutions
SF99716 - Java
SF99717 - Technology Refresh
SF99718 - Group Security
SF99719 - Group Hiper
SF99720 - IBM i 7.2 Cumulative PTF Package
SF99721 - All PTF Groups Except Cumulative PTF Package
SF99747 - DB2 Web Query for i v2.1.0
SF99759 - IBM MQ for IBM i - v7.1.0/v8.0.0
SF99766 - Print PTF Group
SF99767 - TCP/IP PTF Group
SF99775 - Hardware and Related PTFs
SF99776 - High Availability for IBM i
1.3 Upgrading to or installing IBM i 7.2
Upgrading from IBM i 7.1 and 6.1 to 7.2 are both supported paths. If a system is running at a
release older than 6.1, upgrading to either IBM i 6.1 or 7.1 is required before performing the
upgrade to IBM i 7.2.
1.3.1 Supported hardware
IBM i 7.2 runs on many different models of IBM Power Systems. There are various
prerequisites that must be met to ensure a successful installation or upgrade.
Note: IBM i 7.2 is not supported on any POWER5 or POWER5+ system.
Here is the supported hardware for running IBM i 7.2:
POWER8 Enterprise Systems models (Requires IBM i 7.2 with TR1)
– E880 9119-MHE
– E870 9119-MME
POWER8 Scale-out Power Systems models
– S814 8286-41A
– S824 8286-42A
IBM Power System S822
– S822 8284-22A
Chapter 1. Introduction to IBM i 7.2 5
POWER7/7+
– IBM POWER7+™ 750/760 (these models do not support native I/O)
– Power 710, 720, 730, 740, 770, 780, and 795
– IBM PureFlex® p260/p460
POWER6/6+
– IBM POWER6+™ JS23, JS43, 520, 550, and 560
– IBM POWER6® JS12, JS22, 520, 550, 570, and 595
Note: IBM i 7.2 provides no support for IOPs or for HSL connectivity.
Make sure to review the Memo to Users for IBM i 7.2 for further details about the hardware
requirements and supported combinations, especially as they relate to POWER6 hardware.
The Memo to Users for IBM i 7.2 also includes many useful links showing where to begin
planning for your particular upgrade strategy. The Memo to Users for IBM i 7.2 is available in
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgmtu.htm
Additional information about hardware and firmware prerequisites can be found in the IBM i -
Hardware and Firmware enhancements topic in the IBM developerWorks, IBM i Technology
Updates wiki, found at:
https://ibm.biz/Bdsdp4
1.3.2 IBM Pre-Upgrade Verification Tool for IBM i
Use of the Pre-Upgrade Verification Tool for IBM i is optional, but can provide excellent
benefits. It can help in determining whether needed prerequisite fixes are on the system, and
ensure that all pre-upgrade steps have been taken in an effort to ensure the smoothest and
fastest upgrade possible.
The IBM Pre-Upgrade Verification Tool for IBM i is available at the following website:
http://www.ibm.com/support/docview.wss?uid=nas8N1014074
1.3.3 POWER8 reference documentation
For more information about POWER8 Enterprise Servers, see IBM Power Systems E870 and
E880 Technical Overview and Introduction, REDP-5137.
For more information about POWER8 Scale-out systems, see IBM Power Systems S814 and
S824 Technical Overview and Introduction, REDP-5097.
For specific IBM i information relating to hardware, see the IBM i - Hardware and Firmware
enhancements topic in the IBM developerWorks, IBM i Technology Updates wiki, found at:
https://ibm.biz/Bdsdpi
6 IBM i 7.2 Technical Overview with Technology Refresh Updates
1.3.4 POWER8 update access keys
POWER8 servers include an update access key that is checked when system firmware
updates are applied to the system. Update access keys include an expiration date. System
firmware updates are not processed if the calendar date has passed the update access key’s
expiration date.
As these update access keys expire, they must be replaced by using either the Hardware
Management Console (HMC), the Advanced Management Interface (ASMI) on the service
processor, or directly by running the update_flash command.
For more information about the management of POWER8 update access keys, see the
following website:
http://www.ibm.com/support/docview.wss?uid=isg3T1020902
1.3.5 Load source usable space
Starting with IBM i 7.2 Technology Refresh 1, the minimum load source requirements have
changed:
Minimum of 35 GB for 520-byte sectors (IBM DS8000®, virtual disks with VIOS as server)
Minimum of 41 GB (to get 35 GB useable space) for 512-byte sectors (SAN Volume
Controller, IBM Storwize®, virtual disks with VIOS VSCSI, or IBM i as server)
Minimum of 70 GB for native-attached SAS (Both 520-byte or 4-K sectors)
Review the calculation data on the IBM i and Related Software wiki to ensure that the
appropriate space exists on your system:
http://www.ibm.com/developerworks/ibmi/software
1.3.6 HMC and central electrical complex firmware levels
Be sure to validate that your central electrical complex and HMCs are at an appropriate
version to run IBM i 7.2. Central electrical complex firmware requirements and compatible
HMC releases can be found at the following links:
IBM i Server Firmware and HMC Code wizards:
http://www-912.ibm.com/s_dir/slkbase.NSF/DocNumber/408316083
IBM Power code matrix:
https://www-304.ibm.com/webapp/set2/sas/f/power5cm/home.html
1.3.7 IBM i resave levels and their relationship to Technology Refresh
Resaves of IBM i are created from time to time because of new hardware releases and other
issues that require addressing by IBM i development. Resaves are also produced when a new
Technology Refresh is released. In the normal course of business, using a resave to install a
Technology Refresh is not required. However, there might be situations where using a new
resave might be necessary.
For the most current information regarding IBM i 7.2 resave levels and information about
determining what is installed on a particular system, see the following IBM i Resaves
Information for IBM i 7.2 website:
http://www.ibm.com/systems/support/i/planning/resave/v7r2.html
Chapter 1. Introduction to IBM i 7.2 7
1.3.8 Network installation support for SLIC updates
Replacing the Licensed Internal Code from an image that is in a Network File System (NFS)
is supported on IBM i 7.2.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahc/restor.htm
1.4 Documentation and support locations
Systems used to ship with large volumes of paper-based reference documentation. Over the
past several years, there has been a move to online access of support information. Even
more recently, tools such as wikis have made documentation much more fluid and immediate.
1.4.1 IBM Knowledge Center
Reference documentation can be found at the IBM Knowledge Center, formerly known as the
IBM Information Center. The IBM Knowledge Center for IBM i is at the following website:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i/welcome
Navigation and search in the IBM Knowledge Center has been improved over the previous
IBM Information Center. Figure 1-3 shows an example view of the IBM Knowledge Center for
IBM i 7.2.
Figure 1-3 IBM Knowledge Center for IBM i 7.2
8 IBM i 7.2 Technical Overview with Technology Refresh Updates
1.4.2 IBM Redbooks publications
IBM Redbooks publications are another source of technical documentation for IBM i, and
many other IBM products and solutions.
The following links are specific to the IBM Power Systems and IBM i IBM Redbooks
publications:
IBM Power Systems IBM Redbooks portal:
http://www.redbooks.ibm.com/portals/power
IBM i specific IBM Redbooks publications:
https://ibm.biz/BdsdpY
1.4.3 Announcements
Another communication method that the IBM i team uses is the Request for Announcement
(RFA). The RFA is the formal document that contains information about a function that is
being delivered to the market.
For more information and to search for various RFAs, see the IBM Offering Information
website:
http://www.ibm.com/common/ssi/
1.4.4 IBM developerWorks, blogs, and wikis
The IBM i zone in IBM developerWorks and social media is part of the platform strategy for
getting information to IBM Business Partners and clients quickly. The information in
developerWorks is for everyone, not just developers. The IBM developerWorks IBM i website
can be found at:
http://www.ibm.com/developerworks/ibmi/
With developerWorks, if there is new information to share with IBM customers, it can be
shared immediately. Here are different ways that information is delivered through
developerWorks:
Article-based information
Much of the information about developerWorks is in the form of short articles that define a
task or technology. The content provides not only information about a topic, but also tries
to answer the question, “Why is this topic important to me?”. These articles are written by
many developers.
Technology Updates wiki
The IBM i Technology Updates page in developerWorks is the home for detailed
information about the functions that are delivered with each new Technology Refresh, and
the functions that are delivered through other means between releases. The technology
updates section is organized for easy navigation, searches, and subscription. At the
bottom of these pages is a button that allows you to subscribe to the page so that you are
notified when updates are made to it. Because this page is updated every time a new PTF
Group is updated, you can track and monitor new enhancements and fixes as they are
delivered. To view the page, go to the following website:
https://ibm.biz/BdXiJG
Chapter 1. Introduction to IBM i 7.2 9
Community and Forums
– The Community section is a list of links to help you connect to various items. There are
blogs from experts in the development lab, and blogs from others in the industry. These
are short articles on a wide array of topics, all aimed at communicating with IBM i users
throughout the world. Here are some of the blogs:
• You and i, IBM i Trends and Strategies: Steve Will’s blog on IBM i. Steve is the Chief
Architect for IBM i and is responsible for strategy and planning that is related to the
operating system and its related products and solutions. You can find this blog at
the following website:
http://ibmsystemsmag.com/Blogs/You-and-i/
Steve also uses Twitter to notify followers whenever his blog has something new,
what is going on in IBM i development, and to point to a webcast, article, or blog
that might be useful. Follow @Steve_Will_IBMi on Twitter.
• i Can, Technical Tips for i: Dawn May’s blog on IBM i. She is a senior technical staff
member at IBM and is the technical lead for the IBM i Systems Software
Development organization. You can find this blog at the following website:
http://ibmsystemsmag.blogs.com/i_can/
• DB2 for i: Mike Cain’s blog on insights and perspectives that are related to data
management by using DB2 for i. He is a team leader of the IBM DB2 for i Center of
Excellence. You can find this blog at the following website:
http://db2fori.blogspot.com/
• Open Your i: Brian May is an IBM Champion for Power Systems and writes about a
wide range of topics that are focused on his experience running various
applications on IBM i. Topics include open source applications, application
modernization, integration with other platforms/languages, and more. You can find
this blog at the following website:
http://iprodeveloper.com/blog/open-your-i
– The forums target different topical categories and give you an opportunity to ask IBM i
developers questions. These forums are monitored by experts in the development lab.
IBM developerWorks has many links to other topic and technology areas that IBM i users
need, and is organized to help you get the information that you need when you need it. It also
is a great place for helping you stay informed about what is happening with IBM i.
1.4.5 IBM i technical support
IBM i technical support can be reached online or by telephone to open service requests. Use
the IBM support website at the following link, or contact 800-IBM-SERV toll-free in the US:
http://www.ibm.com/support
10 IBM i 7.2 Technical Overview with Technology Refresh Updates
1.5 Topics that are covered in this book
Here are brief descriptions of the different topics that are covered in this book:
Systems management
Chapter 2, “Systems management” on page 13 covers various system management
topics, including IBM Navigator for i, Advanced Job Scheduler, improved mobile access,
and other work management topics.
Cloud and virtualization
Chapter 3, “Cloud and virtualization” on page 195 covers items pertaining to virtualization
and cloud implementations, including IBM PowerVP™, SmartCloud Entry, and
iVirtualization.
Security
Chapter 4, “Security” on page 209 covers enhancements to security in IBM i 7.2, and
methods that can be used to implement these new features to help make your system
more secure.
Networking
Many new functions were added to networking in IBM i 7.2. Chapter 5, “Networking” on
page 225 covers these enhancements, and describes how they can be put in place to help
improve your environment.
High availability
Chapter 6, “High availability” on page 251 covers IBM PowerHA® and improvements to
processes relating to other high availability software products.
Backup and recovery
IBM i 7.2 provides another leap forward in functionality for Backup, Recovery, and Media
Services (BRMS). Improvements to base save and restore operations also have been
implemented. Chapter 7, “Backup and recovery” on page 269 describes these
enhancements and provide examples.
DB2 for i
Significant enhancements are introduced for DB2 for i in IBM i 7.2. Chapter 8, “IBM DB2
for i” on page 321 covers security, performance, and usability improvements. Additionally,
an overview of the Row and Column Access Control (RCAC) enhancement and links to
more specific documentation about this significant new feature is provided.
Application development
Chapter 9, “Application development” on page 415 covers free-form RPG, mobile access
and data consumption improvements, PHP, WebSphere, Liberty, and other new items.
IBM i server enhancements
Chapter 10, “IBM i server functions” on page 475 covers topics that did not fit specifically
in any of the previous chapters of this book, and includes the following topics:
– 10.1, “IBM HTTP Server for i” on page 476
– 10.2, “IBM i Integrated Web Application and Web Services Server” on page 480
– 10.3, “IBM WebSphere Application Server” on page 484
– 10.4, “IBM Social Collaboration products” on page 487
– 10.5, “IBM Printing” on page 487
Chapter 1. Introduction to IBM i 7.2 11
1.6 Functions available from previous releases
This publication supports improved features and functions that are available at IBM i 7.2.
Certain things that are listed in this book might be possible by using previous releases of
IBM i. For example, running on a Power Systems E880 server is supported at IBM i 7.1 if
Technology Refresh 9 is installed. Additionally, some features of BRMS, DB2 for i, and IBM
Navigator for i have been added to IBM i 7.1 and 6.1. However, many other features, such as
Row and Column Access Control, are available in IBM i 7.2 only.
This document is not meant as a reference guide for cross-release compatibility, and
statements of the existence of a feature or requirement in IBM i 7.2 does not necessarily
confirm or deny their existence in any other release.
12 IBM i 7.2 Technical Overview with Technology Refresh Updates
2
Chapter 2. Systems management
This chapter covers various IBM i system management topics, including IBM Navigator for i,
Advanced Job Scheduler, improved mobile access, and other work management topics.
This chapter describes the following topics:
2.1, “IBM Navigator for i” on page 14
2.2, “IBM i Access” on page 118
2.3, “Application Runtime Expert for i” on page 162
2.4, “Journal management” on page 162
2.5, “Work management enhancements” on page 167
2.6, “Operating system limitation changes” on page 182
2.7, “IBM Advanced Job Scheduler for i” on page 182
2.8, “Performance” on page 191
For more information about the IBM i 7.2 system management enhancements, see the IBM i
Technology Updates developerWorks wiki, found at:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 13
2.1 IBM Navigator for i
The IBM Navigator for i is a web console interface. Using it, you can perform key tasks to
administer your IBM i system. Most tasks that are available in the IBM System i® Navigator
Windows client application are also supported within IBM Navigator for i. There are also
additional functions that are available in IBM Navigator for i that are not found in the System i
Navigator Windows client.
Unlike the Windows client application, nothing needs to be installed on your workstation for
you to use IBM Navigator for i. The web application is part of the base IBM i operating system,
and can easily be accessed by pointing your web browser to the following URL:
http://system:2001
The following IBM Navigator for i topics are covered in this section:
2.1.1, “Requirements” on page 14
2.1.2, “Usability and performance improvements” on page 15
2.1.3, “Searching for a task by keywords and CL commands” on page 16
2.1.4, “Bookmarking your favorite tasks” on page 16
2.1.5, “File systems” on page 17
2.1.6, “Target Systems and Groups” on page 21
2.1.7, “PTF management” on page 22
2.1.8, “Message and system monitors” on page 49
2.1.9, “Performance” on page 67
2.1.10, “Security” on page 92
2.1.11, “Network” on page 93
2.1.12, “Omnifind Text Search” on page 94
2.1.13, “Disk management” on page 95
2.1.14, “Partition management” on page 100
2.1.15, “Support for additional system values” on page 102
2.1.16, “Integrated server administration” on page 103
2.1.17, “Database” on page 115
2.1.18, “Printers and printer output” on page 115
For more information about IBM Navigator for i, see the following websites:
IBM i 7.2 IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzat10/rzatgdirectorove
rview.htm?lang=en
IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/IBM%20Navigator%20for%20i
2.1.1 Requirements
IBM Navigator for i is installed as part of the IBM i operating system. It is part of SS1 option 3.
The following list of IBM i license programs is recommended for use with IBM Navigator for i:
5770SS1 option 1, Extended Base Support
5770SS1 option 3, Extended Base Directory Support
5770SS1 option 12, Host Servers
5770SS1 option 30, Qshell
14 IBM i 7.2 Technical Overview with Technology Refresh Updates
5770SS1 option 33, Portable App Solutions Environment
5770DG1 *BASE, IBM HTTP Server for i
5770JV1 *BASE, IBM Developer Kit for Java
5770JV1 option 11, Java SE 6 32-bit
5770JV1 option 12, Java SE 6 64-bit
5770PT1 option 1, Manager Feature (provides access to PDI Disk Watcher, Database and
PEX packages, and Batch model)
5770PT1 option 3, Job Watcher (provides access to PDI Job Watcher package)
The actual PTFs are all packaged and delivered as part of the HTTP PTF Group. There are
also many other PTF Groups that are required to ensure that all parts of the IBM Navigator for
i interface functions correctly:
SF99713 level 9: HTTP Server PTF Group
SF99714 level 2: Performance Tools PTF Group
SF99702 level 8: Database PTF Group
SF99716 level 7: Java PTF Group
For the list of required PTFs for IBM Navigator for i, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20Navigator%20for%20i
2.1.2 Usability and performance improvements
By using Dojo technology, there are now significant improvements in IBM i 7.2 within the
workspace for the following areas:
Navigation area
Similar to the IBM i Navigator client application, the task categories can now be opened to
display any resource containers in the navigation area. It is now much easier and quicker
to access tasks.
Common list view
Common list views now use new Dojo tables that make it easier and quicker to filter lists,
scroll through large lists, and select items in the list to perform related actions.
Handling of tabs
After multiple tasks are selected, resulting in multiple tabs in the console workspace, data
is no longer refreshed each time that you click back to a previous tab.
Chapter 2. Systems management 15
2.1.3 Searching for a task by keywords and CL commands
On the Welcome page within IBM Navigator for i, it is now possible to simply enter a keyword
as a search argument and the related CL commands are automatically shown. Simply
clicking the corresponding CL command redirects you to the corresponding task within the
navigation pane, as shown in Figure 2-1. This is a quick way to access a particular task
without having to navigate to it by using the navigation hierarchy.
Note: You can also type in a phrase that describes what you want to find (for example,
create a user) or a system value (for example, qpwdlvl).
Figure 2-1 Search a task by keyword
2.1.4 Bookmarking your favorite tasks
There is now a new Favorites node in the navigation area. These favorites are saved and
shown by user profile and system. It is possible to save a particular list view as a favorite.
Favorites can also be organized by category.
Most likely, there are a few specific areas of the IBM i systems management that you use
often during your daily job. For example, if you are interested in the jobs for a specific user,
click Users and Groups → Users, find the user profile in which you are interested, right-click
that user profile, and select User Objects → Jobs. From the Actions menu, select Save as
Favorite, and specify a name for the task (TOMV_jobs in this example) and the category
(SYSMGMT in this example) that you want.
16 IBM i 7.2 Technical Overview with Technology Refresh Updates
The task, TOMV_jobs, is now displayed in the SYSMGMT category under Favorites in the
navigation area, as shown in Figure 2-2.
Figure 2-2 Save an action as a favorite
2.1.5 File systems
The following new file systems actions were added to IBM Navigator for i for IBM i 7.2,
allowing users to do the following tasks:
Upload files to an IBM i directory.
Download files from an IBM i directory.
Edit certain types of files.
Go to an Integrated File System folder.
Chapter 2. Systems management 17
Uploading files to an IBM i directory
In IBM i 7.2, by using the File System task in IBM Navigator for i, users can now upload files
from their PC or a mapped drive to an IBM i directory, as shown in Figure 2-3.
Figure 2-3 Upload files to an IBM i directory
18 IBM i 7.2 Technical Overview with Technology Refresh Updates
Downloading files from an IBM i directory
A similar interface is available for downloading files from an IBM i directory to the user’s
wanted location, as shown in Figure 2-4.
Figure 2-4 Download files from an IBM i directory
Chapter 2. Systems management 19
Editing certain types of files
Another feature that is now available with IBM i 7.2 is the ability to edit files by using the IBM
Navigator for i interface. To do this task, you must first specify the file types that you want to
be able to edit. Complete the following steps, as shown in Figure 2-5:
1. From the main IFS list, select Properties from the Actions drop-down menu.
2. On the Integrated File System Properties window, enter the file extensions that you want
to be able to edit and click OK.
Figure 2-5 Specify the file types to be able to edit
The user now sees the Edit action appear for these types of files when right-clicking them
within the IBM Navigator for i. Selecting the Edit action opens the Edit window, as shown in
Figure 2-6. The user now has full edit functionality for that specific file.
Figure 2-6 Edit a file in the IBM i Integrated File System
20 IBM i 7.2 Technical Overview with Technology Refresh Updates
Goto Integrated File System Folder function
The Goto Integrated File System Folder function was added in IBM i 7.2. You can use it to go
quickly to a specific folder within the Integrated File System. All the previous selections are
saved by user profile and system within the IBM Navigator for i environment.
Within IBM Navigator for i in IBM i 7.2, it is now possible to enter directly a specific Integrated
File System path, as shown in Figure 2-7. This task saves you time because you do not have
to drill down the entire Integrated File System path.
Figure 2-7 Go to a specific IBM i directory in the Integrated File System
2.1.6 Target Systems and Groups
Target Systems and Groups is a new navigation node in the IBM Navigator for i, as shown in
Figure 2-8.
A new interface is available to specify the target system to manage and to be able to group
similar target systems into groups. A specific target system can be part of several systems
groups. You can select to manage another IBM i 7.2 system. IBM i 7.1 and IBM i 6.1 systems
are also supported.
In the example that is shown in Figure 2-8, one System group is defined (ITSO residency IBM
i 7.2 Technical Overview) with the following two target systems:
One running IBM i 7.2
One running IBM i 7.2 with TR1 installed
Figure 2-8 Target Systems and Groups option
Chapter 2. Systems management 21
2.1.7 PTF management
Within IBM Navigator for i in IBM i 7.2, it is now possible to perform program temporary fix
(PTF) management-related functions. Program Temporary Fixes is a new section under the
Configuration and Service task navigation area, as shown in Figure 2-9, and you can perform
the following tasks:
Display PTFs: Display PTFs for a specified product.
Display PTF Groups: Display all group PTFs on an IBM i system.
Load PTFs: Load selected PTFs.
Apply PTFs: Apply selected PTFs.
Install PTFs: Install selected PTFs.
Remove PTFs: Remove selected PTFs.
Cleanup PTFs: Delete PTF save files and cover letters for selected PTFs or all PTFs for
selected products.
Figure 2-9 Program Temporary Fixes tasks
The following topics are covered in this section:
“Working with PTFs for a specific licensed product” on page 23
“Working with PTF groups” on page 31
“Working with individual PTFs” on page 36
“Comparing PTFs and PTF groups on different systems” on page 44
22 IBM i 7.2 Technical Overview with Technology Refresh Updates
Working with PTFs for a specific licensed product
On the Display PTFs window, when you right-click one of the licensed products that are
installed on the system, you have the following options available, as shown in Figure 2-10:
Open
Install PTFs
Remove PTFs
Cleanup PTFs
Send
Send and Install
Figure 2-10 Display PTF options
Displaying PTFs
To display PTFs for a specific licensed product, click Open and the results, as shown in
Figure 2-11, are displayed.
Figure 2-11 Display PTFs for a specific licensed product
Chapter 2. Systems management 23
Installing PTFs
To install PTFs for a specific licensed product, select Install PTFs and complete the following
steps:
1. In the Install PTFs window (Figure 2-12), click Next.
Figure 2-12 Install PTFs
2. As shown in Figure 2-13 on page 25, specify the installation source and the installation
type and click Next.
24 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-13 Install PTF options
Removing PTFs
To remove PTFs for a specific licensed product, click Remove PTFs and complete the
following steps:
1. In the Remove PTFs window that opens (Figure 2-14), click OK to confirm the removal of
the PTFs for the selected licensed product.
Figure 2-14 Remove PTFs for a selected licensed product
Chapter 2. Systems management 25
Note: Specifying to include the removal of dependent PTFs for all PTFs is not valid and
results in an error.
2. In the Confirm Remove window that opens (Figure 2-15), click Remove to confirm the
removal of all PTFs for the selected license product. This action starts the removal
process of all PTFs for the specified licensed program.
Figure 2-15 Confirm to remove PTFs for a selected licensed product
Cleaning up PTFs
To clean up PTFs for a specific licensed product, click Clean up PTFs, as shown in
Figure 2-16, and complete the following steps:
1. Click OK in the Clean up PTFs window.
Figure 2-16 Clean up PTFs for a selected licensed product
2. In the Confirm Clean Up PTFs window that opens (Figure 2-17 on page 27), click Clean
up to start the cleanup process of the PTFs for the selected licensed program. This action
removes all save files and cover letters from the system for the selected licensed program.
26 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-17 Confirm to clean up PTFs for a selected licensed product
Sending PTFs
It is now possible within IBM Navigator for i to send PTFs from one system to a target system
or a system group (as described in 2.1.6, “Target Systems and Groups” on page 21).
To send PTFs for a specific licensed product, complete the following steps:
1. From the Display PTFs window, right-click the selected license product and click Send, as
shown in Figure 2-18.
Figure 2-18 Send PTFs
Chapter 2. Systems management 27
2. The Send PTF wizard starts, as shown in Figure 2-19. Select the target system that you
want the PTFs to be sent to on the left side of the window, click Add, and then click Next.
Note: Send PTFs can also be applied to a specific product option.
Figure 2-19 Send PTF Wizard: add the target system
28 IBM i 7.2 Technical Overview with Technology Refresh Updates
3. The target system is added, as shown in Figure 2-20. Click Next.
Figure 2-20 Send PTF Wizard: target system added
4. As shown in Figure 2-21, you have the following options when sending PTFs:
– Send requisite PTFs, which is the recommended way.
– Send PTFs, even though they are already installed on the target system.
– Send the cover letters.
– Override the save files if they exist on the target system.
Click Next.
Figure 2-21 Send PTF Wizard: specify how to send PTFs options
Chapter 2. Systems management 29
5. A summary of the selected options is displayed (Figure 2-22). Click Finish.
Figure 2-22 Send PTF Wizard: summary of the selected options
6. The window that is shown in Figure 2-23 shows you the progress of sending the PTFs.
The following actions are being completed:
– Copying the PTFs to an image on the local IBM i system.
– Sending the PTF package.
– Cleaning up on the local IBM i system.
Note: If there is a failure, you can display the log by clicking View Log in the
Descriptions column.
Figure 2-23 Send PTFs progress
Sending and installing PTFs
It is also possible within IBM Navigator for i to first send PTFs from one system to a target
system or a system group (as described in 2.1.6, “Target Systems and Groups” on page 21)
and then immediately afterward install those PTFs on the target system or system group.
To send and install PTFs for a specific licensed product, select Send and Install, as shown in
Figure 2-24 on page 31.
30 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-24 Send and Install PTFs option
The process is the same as described in “Sending PTFs” on page 27 except that afterward
those PTFs are also immediately installed on the target system or system group. The result is
shown in Figure 2-25.
Note: The Send and Install PTFs option can also be applied to a specific product option.
Figure 2-25 Send and Install PTFs progress
Note: If there is a failure, you can display the log by clicking View Log in the Descriptions
column.
Working with PTF groups
In the Display PTFs groups window, when you right-click one of the PTF groups that are
listed, you have the following options available, as shown in Figure 2-10 on page 23:
Open
Send
Send and Install
Sending a PTF group
It is now possible within IBM Navigator for i to send a PTF group from one system to a target
system or system group (as described in 2.1.6, “Target Systems and Groups” on page 21).
Chapter 2. Systems management 31
To send a PTF group, complete the following steps:
1. From the Display PTF groups window, right-click a PTF group and click Send, as shown in
Figure 2-26.
Figure 2-26 Send a PTF group
2. The Send PTF group Wizard starts, as shown in Figure 2-27. Select the target system that
you want the group PTF to be sent to from the left side of the window, click Add, and click
Next.
Figure 2-27 Send PTF group Wizard
32 IBM i 7.2 Technical Overview with Technology Refresh Updates
3. The target system is added, as shown in Figure 2-28. Click Next.
Figure 2-28 Send PTF group Wizard: add a target system
4. As shown in Figure 2-29, specify how to replace existing PTF groups with the same
names on the target system and which related PTF groups to send from the source
system. Click Next.
Figure 2-29 Send PTF group Wizard: available options
Chapter 2. Systems management 33
5. A summary of the selected options to be accounted for when sending the PTF group is
shown in Figure 2-30. Click Finish.
Figure 2-30 Send PTF group Wizard: summary of selected options
6. Figure 2-31 shows the progress of sending the PTF group. The following actions are
completed:
– Copying the group PTF to an image on the local IBM i system
– Sending the PTF group
– Cleaning up on the local IBM i system
Note: If there is a failure, you can display the log by clicking View Log in the
Descriptions column.
Figure 2-31 Send PTF group progress
34 IBM i 7.2 Technical Overview with Technology Refresh Updates
Sending and installing PTF groups
From the Display PTF groups window, it is possible to send a PTF group to a target system or
a system group and immediately install this group PTF on the target system or system group.
To send and install a PTF group, right-click a specific PTF group, as shown in Figure 2-32,
and click Send and Install.
Figure 2-32 Send and Install PTF group option
The process is the same as described in“Sending a PTF group” on page 31, except that
afterward the PTF group is immediately installed on the target system or system group.
Note: In the Send and Install PTF group Wizard, there is an additional option to be
specified to either immediately install the group PTF or at the next IPL of the target system.
The result is shown in Figure 2-33.
Figure 2-33 Send and Install PTF group Wizard: progress and results
Note: If there is a failure, you can display the log by clicking View Log in the Descriptions
column.
Chapter 2. Systems management 35
Working with individual PTFs
Depending on its status, you can perform the following tasks on an individual PTF level.
These tasks are similar to the actions that can be performed on all PTFs for a specific
licensed program, as described in “Working with PTFs for a specific licensed product” on
page 23.
Load a PTF.
Apply a PTF temporarily or permanently.
Remove a PTF temporarily or permanently.
Clean up a PTF.
Send a PTF.
Send and install a PTF.
Display the properties of a PTF.
Loading a PTF
To load an individual PTF for a specific licensed program, complete the following steps:
1. From the IBM Navigator for i Display PTFs window (Figure 2-34), right-click a specific PTF
and click Load.
2. In the Load PTF window, click OK, which starts loading the selected individual PTF for the
licensed program.
Figure 2-34 Load an individual PTF
36 IBM i 7.2 Technical Overview with Technology Refresh Updates
Applying a PTF
To apply an individual PTF for a specific licensed program, run the following steps:
1. From the IBM Navigator for i Display PTFs window (Figure 2-35), right-click a specific PTF,
and click Apply.
2. In the Apply PTF window, specify the extent of change (temporarily applied or
permanently applied) and whether to apply the prerequisite PTFs. Click OK.
Figure 2-35 Apply an individual PTF
Removing a PTF
To remove an individual PTF for a specific licensed program, complete the following steps:
1. From the IBM Navigator for i Display PTFs window (Figure 2-35), right-click a specific PTF
and click Remove.
2. In the Remove PTFs window, click OK. You also have the possibility to specify that you
want to remove dependent PTFs.
Figure 2-36 Remove an individual PTF
Chapter 2. Systems management 37
3. In the Confirm Remove window (Figure 2-37), click Remove to confirm the removal of the
individual PTF from the licensed program. This temporarily removes the individual PTF
from the specified licensed program.
Figure 2-37 Confirm to remove an individual PTF
Cleaning up a PTF
To clean up an individual PTF for a specific licensed program, complete the following steps:
1. From the IBM Navigator for i Display PTFs window (Figure 2-38), right-click a specific PTF
and click Clean up.
Figure 2-38 Clean up an individual PTF
2. In the Clean up PTFs window, click OK.
3. In the Confirm Clean up window, click Clean up to confirm the cleanup of the individual
PTF from the licensed program, as shown in Figure 2-39, which deletes the save file and
the cover letter for the individual PTF.
Figure 2-39 Confirm the cleanup of an individual PTF
38 IBM i 7.2 Technical Overview with Technology Refresh Updates
Displaying PTF properties
To display the properties of an individual PTF, right-click the specific PTF, and click
Properties, as shown in Figure 2-40.
Figure 2-40 Display PTF properties
Chapter 2. Systems management 39
The PTF Properties window opens, as shown in Figure 2-41. Notice the following tabs that
you can click to get additional information about this PTF:
General information
PTF objects
Prerequisite PTFs
Superseded PTFs
Symptom strings
Exit programs
APARs fixed
Cover letter
Dependent PTFs
Preconditions
Figure 2-41 Display properties of a PTF
40 IBM i 7.2 Technical Overview with Technology Refresh Updates
Sending a PTF
To send an individual PTF for a specific licensed program to a target system or system group,
right-click the specific PTF and click Send, as shown in Figure 2-42.
Figure 2-42 Send an individual PTF
The Send PTF Wizard opens, as shown in Figure 2-19 on page 28. To send an individual
PTF, complete the steps in “Sending PTFs” on page 27.
Chapter 2. Systems management 41
Installing a PTF
To install an individual PTF on the system, complete the following steps:
1. From IBM Navigator for i, click Configuration and Service → All Tasks → Program
Temporary Fix → Install PTFs.
2. In the Install PTFs window (Figure 2-43), select the PTF IDs option and click Next.
Figure 2-43 Install an individual PTF
3. In the Install PTFs by PTFs IDs window (Figure 2-44), specify a specific PTF ID to be
installed and from where this PTF is to be installed. Click Next.
Figure 2-44 Install an individual PTF: select the PTF ID
42 IBM i 7.2 Technical Overview with Technology Refresh Updates
4. In the Summary window that is shown in Figure 2-45, click Finish to start the PTF
installation process.
Figure 2-45 Install an individual PTF by PTF ID
Sending and installing a PTF
To send and install an individual PTF for a specific licensed program to a target system or
system group, right-click the specific PTF and click Send and Install, as shown in
Figure 2-46.
Figure 2-46 Send and install an individual PTF
Chapter 2. Systems management 43
This action starts the Send PTFs Wizard, as described in “Sending PTFs” on page 27. The
process is the same as described in “Sending PTFs” on page 27 except that afterward the
PTF is immediately installed on the target system or system group.
Sending and installing PTFs and PTF groups to multiple systems: Similar to what was
described for sending and installing PTFs in “Sending and installing PTFs” on page 30, you
can also send and install PTFs or PTF groups to multiple systems.
Comparing PTFs and PTF groups on different systems
Within IBM Navigator for i, it is now possible to compare PTFs and PTF groups on different
systems. Complete the following steps:
1. From the Display PTFs window, on the Action menu, select Compare and Update, as
shown in Figure 2-47.
Figure 2-47 Select the Compare and update PTFs option
44 IBM i 7.2 Technical Overview with Technology Refresh Updates
2. The Compare and Update Wizard starts, as shown in Figure 2-48. This wizard can
compare the PTF and PTF group levels of a source system to the levels of one or more
target systems. Click Next.
Figure 2-48 Compare and Update Wizard
Chapter 2. Systems management 45
3. As shown in Figure 2-49, you have the following options available:
– Update the target system directly from the source system without viewing the compare
results.
– View compare results to see the difference for PTFs or PTF groups for each target
system.
– What types of PTFs or PTF groups would you like the compare to find.
Click Next.
Figure 2-49 Compare and Update Wizard: options
46 IBM i 7.2 Technical Overview with Technology Refresh Updates
4. In the Target Systems and Groups window (Figure 2-50), select the target system to
compare the PTFs or PTF groups with and click Next.
Figure 2-50 Compare and Update Wizard: add the target system
5. In the Select Products window (Figure 2-51), select one of the following options:
– All products: PTFs for all installed licensed programs are compared.
– Selected products: PTFs for the selected licensed programs are compared.
Click Next.
Figure 2-51 Compare and Update Wizard: select products to compare
Chapter 2. Systems management 47
6. On the Select the PTFs or PTF Groups you want to update window (Figure 2-52), click the
specified Target Systems and Groups link.
Figure 2-52 Compare and Update Wizard: link to target system results
7. As shown in Figure 2-53, the comparison results with missing PTFs and extra PTFs are
displayed.
Figure 2-53 Compare and Update Wizard: results for the target system
48 IBM i 7.2 Technical Overview with Technology Refresh Updates
The window that is shown in Figure 2-53 on page 48 shows the comparison results between
the source system and the specified target system (or system group). This result contains the
following information:
Missing PTFs: PTFs that are on the source system and not on the target system (or
system group).
Extra PTFs: PTFs that are on the target system (or system group) and not on the source
system.
Note: The extra PTFs or PTF groups that are listed are for display only and cannot be
sent and installed to the target system or system group.
Multi-system PTF comparison
With IBM Navigator for i in IBM i 7.2, you can compare and update PTFs between one source
system and multiple targets where the targets can be systems or system groups.
2.1.8 Message and system monitors
With IBM Navigator for i 7.2, you can define, run, and respond to message and system
monitors.
Message monitors
With IBM i 7.2 Navigator for i, you can create a message monitor to monitor any message
queue on the system. Message monitors can be used to monitor when an application
completes successfully or unsuccessfully or to monitor for other specific messages that are
critical to your business needs.
For each message queue, you can specify two separate and independent message sets to
monitor. For each message set, you can specify the following items:
A threshold that triggers an event.
An operating system command that runs when the event is triggered.
The following steps describe how to set up a message monitor to display any inquiry
messages in a message queue that occur on a system:
1. From IBM Navigator for i, click Monitors → Message Monitors.
2. From the Actions menu in the Message Monitors window, select Create New Message
Monitor, as shown in Figure 2-54.
Figure 2-54 Create a message monitor
Chapter 2. Systems management 49
3. In the Create New Message Monitor - General window that is shown in Figure 2-55, enter
a name and description for this monitor. Click Next.
Figure 2-55 Specify the monitor name
4. In the Create New Message Monitor - Message Queue window that is shown in
Figure 2-56, enter the following values:
– For Message Queue to Monitor, specify QSYSOPR.
– For Library, specify QSYS.
Click Next.
Figure 2-56 Specify the message queue to monitor
50 IBM i 7.2 Technical Overview with Technology Refresh Updates
5. In the Create New Message Monitor - Message Set window that is shown in Figure 2-57,
click Add in the Message Set 1 tab.
Figure 2-57 Create a message monitor: Message set 1
6. In the Add A Message Set window (Figure 2-58), click Add a user defined set of
messages and set the Message Type to Inquiry. Click OK.
Figure 2-58 Create message monitor: add a message set
Chapter 2. Systems management 51
7. Back in the Message Set 1 tab of the Message Set window (Figure 2-59), click Set the
message trigger and reset option and specify 1 for Trigger at the following message
count. Click Next.
Figure 2-59 Set the message trigger
52 IBM i 7.2 Technical Overview with Technology Refresh Updates
8. In the Create New Message Monitor Actions window (Figure 2-60), click Next.
Figure 2-60 Create a message monitor: set monitor actions information
Chapter 2. Systems management 53
9. In the Create New Message Monitor Actions Summary window (Figure 2-61), click Finish.
Figure 2-61 Create a message monitor summary
10.From the list of message monitors (Figure 2-62), right-click the new monitor and select
Start. The new message monitor now shows any inquiry messages that are sent to
QSYSOPR.
Figure 2-62 Start the message monitor
54 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: This message monitor responds to only inquiry messages sent to QSYSOPR.
However, you can include two different sets of messages in a single monitor. You can have
several message monitors that run at the same time. Message monitors can also run IBM i
commands when specific messages are received.
System monitors
To monitor effectively system performance, you must decide which aspects of system
performance you want to monitor. Performance metrics are performance measurements that
help you pinpoint different aspects of the system performance.
When configuring a system monitor with IBM i 7.2 in IBM Navigator for i, you can use any
metric, a group of metrics, or all the metrics, as listed in Table 2-1.
Table 2-1 System monitor metrics
Metric group Metric description
CPU utilization The percentage of available processing unit time that is consumed by jobs on the
system. You can select from the following types of CPU Utilization metrics for use
in your monitors:
CPU Utilization (Average)
CPU Utilization (Interactive Jobs)
CPU Utilization (Uncapped)
CPU Utilization (SQL)
Interactive response time The response time that interactive jobs experience on the system.
(average and maximum)
Transaction rate (interactive) The number of transactions per second completed on the system by interactive
jobs (Job type = 'I').
Batch logical database I/O The average number of logical database input/output (I/O) operations that are
performed by batch jobs (Job type = 'B') on the system.
Disk arm utilization The disk unit busy percentage.
(average and maximum)
Disk arm utilization for system, user, The disk unit busy percentage for all disks in the system ASP, user ASPs, or
and independent ASP independent ASPs.
(average and maximum)
Disk storage utilization The percentage of disk storage that is full on the system during the time data is
(average and maximum) collected.
Disk storage utilization for system, The percentage of disk storage that is full in the system ASP, user ASPs, or
user, and independent ASP independent ASPs during the time data is collected.
(average and maximum)
Disk response time - Read Read response time. Accumulated read response time for reported disk units in
microseconds.
Disk response time - Write Write response time. Accumulated write response time for reported disk units in
microseconds.
Communications Line Utilization The amount of data that was sent and received on all the system communication
(average and maximum) lines.
LAN utilization The amount of data that was sent and received on all local area network (LAN)
(average and maximum) communication lines.
Machine pool faults The number of faults per second occurring in the machine pool on the system.
Chapter 2. Systems management 55
Metric group Metric description
User pool faults The number of faults per second per pool.
(average and maximum)
Temporary storage used The total amount of temporary storage (megabytes) in use within the system.
This includes both system and user temporary storage.
Spool file creation rate The number of spool files that are created per second.
Shared processor pool utilization The amount of CPU that is consumed in the shared pool by all partitions that are
(virtual and physical) using the pool relative to the CPU that is available within the pool.
The system monitor within IBM Navigator for i uses data from Collection Services to track the
elements of system performance of specific interest to you.
Within IBM Navigator for i, you have the following system-monitor-related functions available:
Monitors:
– Create a system monitor or create one based on an existing monitor.
– Change the configuration of a system monitor.
– Delete a system monitor.
– Start and stop a system monitor.
Thresholds and event logs:
– Capture events and trigger actions when a threshold is reached.
– List the event log of a selected system monitor.
– List the event log of all system monitors.
– Display properties of an event log.
– Delete an event log.
Investigate monitor data by using Performance Data Investigator (PDI).
The following system monitor topics are covered in this section:
“Creating a system monitor” on page 57
“System monitor graphs in PDI” on page 61
“New PDI package” on page 62
“Collection Services system monitor support” on page 63
“Differences with Management Central monitors” on page 67
56 IBM i 7.2 Technical Overview with Technology Refresh Updates
Creating a system monitor
The following steps show you how to create a system monitor:
1. From IBM Navigator for i, click Monitors → System Monitors.
2. From the Actions menu in the System Monitors pane, select Create New System
Monitor, as shown in Figure 2-63.
Figure 2-63 Create a system monitor
3. In the Create New System Monitor - General window (Figure 2-64), enter a name and
description for this system monitor. Click Next.
Figure 2-64 Specify the system monitor name
Chapter 2. Systems management 57
4. In the Create New System Monitor - Metrics window (Figure 2-65), select the Disk
Storage Utilization (Average) metric and click Add. Then, click the Disk Storage
Utilization (Average) metric that is now listed in the right pane to configure it.
Figure 2-65 Create a system monitor: add a metric
58 IBM i 7.2 Technical Overview with Technology Refresh Updates
5. On the Configure Metric window that is shown in Figure 2-66, you can configure the
following settings for the selected metric:
– Collection interval.
– Threshold 1.
– Threshold 2.
Note: You must enable the thresholds by selecting Enable Threshold for each
threshold.
The threshold a setting for a metric that is being collected by a monitor with the following
details:
– You can use it to specify actions to be taken when a specified value (called the trigger
value) is reached or a second value (called the reset value) is reached.
– An event is added to the Event Log whenever the trigger value or the reset value is
reached.
– Set up to two thresholds for each metric that the monitor is collecting:
• Trigger: Considered bad (usually high but can be low).
• Reset: Considered good (opposite of trigger).
– When a threshold is reached, IBM Navigator for i captures the event and runs the
specified actions.
Click OK to return to the window that is shown in Figure 2-65 on page 58 and then click
Next.
Figure 2-66 Configure the system monitor metrics
Chapter 2. Systems management 59
6. In the Create New System Monitor - Summary window (Figure 2-67), click Finish.
Figure 2-67 Create a system monitor summary
7. The new system monitor is now displayed in the System Monitors window, as shown in
Figure 2-68. From the Actions menu in the System Monitors window, the following
functions are available:
– Investigate Monitor Data: Use PDI to graph the monitored metrics.
– Event Log: Show the Event Log list for this monitor.
– Start: Start this system monitor.
– Stop: Stop this system monitor.
– New Based On: Create a system monitor based on this system monitor.
– Delete: Delete this system monitor.
– Properties: Displays the attributes of the monitor.
Note: With IBM i 7.2 TR1, the following additional functions are available:
Support monitor auto-restart.
Support multiple users accessing monitors in the same system concurrently.
Support to modify an active monitor.
Figure 2-68 System Monitors: Actions menu
60 IBM i 7.2 Technical Overview with Technology Refresh Updates
System monitor graphs in PDI
From the System Monitor window, you can go to the system monitor Graphs directly in PDI by
right-clicking the select system monitor and selecting Investigate Monitor Data.
As shown in the Figure 2-69, this is the Disk Storage Utilization (Average) metric that was
created in Figure 2-65 on page 58.
Refresh button: The Refresh button is visible when displaying the currently active
collected monitor data. The current chart is refreshed with the current monitored data from
the active real-time collection.
Figure 2-69 System monitor for the Disk Storage Utilization (Average) metric
Chapter 2. Systems management 61
New PDI package
With IBM i 7.2, there is a new PDI package that is available, as shown in Figure 2-70.
Figure 2-70 Investigate Performance Data
This PDI package provides the following lightweight perspectives for system monitor metrics:
Batch Logical Database I/O Rate
Communications Line Utilization (Average)
Communications Line Utilization (Maximum)
CPU Utilization (Average)
CPU Utilization (Interactive Jobs)
CPU Utilization (SQL)
CPU Utilization (Uncapped)
Disk Arm Utilization (Average)
Disk Arm Utilization (Maximum)
Disk Arm Utilization for Independent ASP (Average)
Disk Arm Utilization for Independent ASP (Maximum)
Disk Arm Utilization for System ASP (Average)
Disk Arm Utilization for System ASP (Maximum)
Disk Arm Utilization for User ASP (Average)
Disk Arm Utilization for User ASP (Maximum)
Disk Storage Utilization (Average)
Disk Storage Utilization (Maximum)
Disk Storage Utilization for Independent ASP (Average)
Disk Storage Utilization for Independent ASP (Maximum)
Disk Storage Utilization for System ASP (Average)
Disk Storage Utilization for System ASP (Maximum)
62 IBM i 7.2 Technical Overview with Technology Refresh Updates
Disk Storage Utilization for User ASP (Average)
Disk Storage Utilization for User ASP (Maximum)
Interactive Response Time (Average)
Interactive Response Time (Maximum)
LAN Utilization (Average)
LAN Utilization (Maximum)
Machine Pool Faults Rate
Shared Processor Pool Utilization (Physical)
Shared Processor Pool Utilization (Virtual)
Spool File Creation Rate
Temporary Storage Utilization
Transaction Rate (Interactive)
User Pool Faults Rate (Average)
User Pool Faults Rate (Maximum)
Collection Services system monitor support
With IBM i 7.2, IBM i Collection Services is used to collect system monitor data 24 x 7.
System monitor metrics have the following characteristics:
They do not exist in raw collected performance data.
They are a function of selection, grouping, and other calculations, including rates,
percentages, and maximums.
IBM Navigator for i system monitor metrics are now produced by Collection Services and
exported to database files. They are no longer stored in private *MGTCOL files like they are in
Management Central. For more information, see “Differences with Management Central
monitors” on page 67.
These files contain metrics that are defined for system monitoring along with other supporting
data and include metrics that are supported by Management Central and more. Also, existing
Collection Services files can be used for drill-down and detailed data. Data is easily
accessible by the monitoring function and visualization tools (PDI), and data is also easily
accessible to any other consumers and can be used for more in-depth analysis as necessary.
When system monitor data collection is enabled, monitor metrics are exported by Collection
Services into a second Collection Services file-based collection for the active collection. A
second batch job (CRTPFRDTA2) is submitted to produce the system monitor collection.
System monitor file collections contain only database files that are related to the categories
that are selected for system monitoring.
The database file interval that is used by CRTPFRDTA2 is always 15 seconds. Data is
present based on the interval at which each category was collected. Also, system monitor file
collections have a separate retention (expiration) period than standard Collection Services file
collections.
Existing PDI perspectives can be used with this collection if all required data is present.
Here are the Collection Services system monitor files:
QAPMSMCMN (*CMNBASE)
– Lines and LANs metrics
– Still can exclude unwanted lines
– Includes line count, average and maximum utilization, average kilobits received and
sent, and the line with highest utilization
Chapter 2. Systems management 63
QAPMSMDSK (*DISK)
– Disk metrics, including all units, system ASP, user ASPs, and IASPs
– Includes number of entries in data, average and maximum busy and device name,
average and maximum capacity that is used, and device name
– Total capacity available and used
– For both reads and writes: Ops, average response and service time, maximum
response time, and maximum device name
QAPMSMJMI (*JOBMI)
– Interactive and batch job metrics depend on the MI
– Includes job count, total and maximum unscaled CPU consumed and percentage and
job, and interactive transaction rate
QAPMSMJOS (*JOBOS)
– Job metrics depend on the OS
– Includes job count, batch LIO rate, and average and maximum interactive response
time and job
– Spool file creation rate, count, and name of job created the most
QAPMSMPOL (*POOL)
– Pool metrics
– Includes machine pool fault rate, count of user pools, and average and maximum user
pool fault rate and pool
QAPMSMSYS (*SYSLVL)
– System metrics
– Scaled and unscaled: Configured, uncapped, and virtual CPU percentage
– Speed percent, and virtual and physical shared pool percentage
– Temporary storage that is used and percentage, and unscaled SQL CPU percentage
The same system monitor metric data can also be generated without starting a system
monitor within IBM Navigator for i.
System monitor files (QAPMSM*) can be generated for your Collection Services collection by
specifying the following options:
CRTPFRSUM(*ALL) on the Configure Performance Collection (CFGPFRCOL) CL command.
CRTPFRSUM(*ALL or *SYSMON) on the Create Performance Data (CRTPFRDTA) CL command
when running manually.
System monitor data collection can also be enabled through the Configure Performance
Collection (CFGPFRCOL) CL command by specifying ENBSYSMON(*YES). This does not start
any monitors.
Specify the categories that you want collected more frequently by using the SYSMONCGY
parameter of Configure Performance Collection (CFGPFRCOL) CL command. This command
starts the CRTPFRDTA2 job that creates the second database file collection starting with
an R.
64 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: When monitors override the settings of Collection Services to gather performance
data more frequently, the settings are not undone when a monitor stops. You must
manually change the Collection Services settings if you no longer want to collect the data
as often.
The following steps show you how to enable system monitor data collection from the
Performance tasks in IBM Navigator for i:
1. From IBM Navigator for i, click Performance → All Tasks → Collectors → Collection
Services → Configure Collection Services, as shown in Figure 2-71.
Figure 2-71 Configure Collection Services
Chapter 2. Systems management 65
2. In the Configure Collection Services - General window (Figure 2-72), select the Enable
system monitoring option.
Figure 2-72 Enable system monitoring
3. You can also configure data retention, as shown in Figure 2-73.
Figure 2-73 Configure data retention
4. It is also possible to configure the system monitor categories, as shown in Figure 2-74.
Figure 2-74 System monitor categories customization
66 IBM i 7.2 Technical Overview with Technology Refresh Updates
Differences with Management Central monitors
IBM Navigator for i system monitors and Management Central monitors are two separate
functions.
Management Central monitors (that uses the IBM i Navigator client) still work and run against
an IBM i 7.2 system.
Both system monitor functions have dependencies on Collection Services to control what
data is collected and at what interval:
Management Central uses application override support, which can allow any of the
Collection Services data categories to be collected more frequently than what is specified
for the configured collection profile.
IBM Navigator for i system monitors the usage of the new system monitoring settings that
are specified by the Configure Performance Collection (CFGPFRCOL) CL command or in the
Configure Collection Services GUI in IBM Navigator for i.
Management Central gets and stores the monitor data differently than the IBM Navigator for i
system monitoring support:
Management Central stores the monitor data in private *MGTCOL objects.
IBM Navigator for i system monitors the usage of the monitor data that is exported by
Collection Services into DB2 files with file names starting with QAPMSM*.
Note: IBM Navigator for i system monitor functions do not work when an IBM 6.1 or 7.1
target system is specified. The underlying Collection Services support is available only in
Version 7.2.
2.1.9 Performance
This section explains the enhancements in IBM Navigator for i that are related to performance
tasks. The IBM Navigator for i performance interface includes PDI, Collection Manager, and
web-based GUI interfaces for Collection Services, Job Watcher, and Disk Watcher. New
functions for Batch Model, System Monitor, and Performance Reports are described in this
section.
The following topics are covered in this section:
“Performance data reports” on page 67
“Drill-down information” on page 69
“System Information pane” on page 70
“Show SQL error messages option” on page 70
“Health indicators” on page 70
“Batch model” on page 70
“Performance perspectives” on page 76
Performance data reports
A performance data report can be generated for a set of PDI perspectives. You can view the
report in IBM Navigator for i or generate a PDF or compressed file. By using performance
data reports, you can efficiently export multiple charts or tables for a collection at one time.
Chapter 2. Systems management 67
For performance data reports, as shown in Figure 2-75, users can perform the following
operations:
Add a definition.
Delete a definition.
Add definitions by using existing definitions.
View report definitions.
Figure 2-75 Performance data reports tasks
68 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-76 shows an example of a performance data report definition.
Figure 2-76 Performance data report definition example
Drill-down information
In PDI, users are allowed to view additional information, which is shown in the blue title bar of
the window. This is referred to as drill-down information. To view the drill-down information,
users must select the intervals and do the drill-down action. Additional information in the blue
title bar for the drilled-down chart shows what parameters are used for that specific drill-down
information.
Figure 2-77 shows the drill-down information when selecting data in PDI.
Figure 2-77 Drill-down information in the Performance Data Investigator title bar
Chapter 2. Systems management 69
System Information pane
In the PDI perspectives display window, the Show System Information view option provides
more detailed information for the system from which the displayed collection came. This
includes information such as processor, memory, and partition specifications.
Figure 2-78 shows the System Information pane in PDI.
Figure 2-78 System Information pane in PDI
Show SQL error messages option
The Show SQL error messages option in the Options pane in PDI provides specific error
information about SQL errors when the Modify SQL function is used.
Health indicators
The Health Indicators perspective for database health was added to the Health Indicators
package.
For more information that is related to the health indicators, see Accessing IBM i Health
Indicators Using Performance Data Investigator, REDP-5150.
Batch model
IBM Navigator for i 7.2 provides the modeling tool for system utilization and run times of
IBM i batch workloads, which is useful for analyzing and predicting batch job performance on
IBM i, and helps users to know what improvements that they can do to meet a certain batch
window target.
Here are the functions of the batch model in IBM Navigator for i:
Helps users to optimize workloads by locating times during the batch window when more
efficient job scheduling can improve total system throughput.
Models workload increments.
Predicts the changes in throughput that results from hardware upgrades (processor or
disk).
Predicts run times for individual workloads and the overall batch window.
Models batch workloads that are CPU- or disk-intensive.
70 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: The batch model functions and content package require the installation of IBM
Performance Tools for i (5770-PT1) Option 1 - Manager Feature.
To open the batch model function in IBM Navigator for i, click Performance → All Tasks →
Sizing → Batch Model, as shown in Figure 2-79.
Figure 2-79 IBM Navigator for i Batch Model tasks
Note: You can also view any batch model collections in the main table under the Manage
Collections options. It is also possible to use the Create Batch Model function from the
Action menu under Manage Collections when selecting a valid CS collection.
Batch model collection is created based on existing performance data that is collected by
Collection Services. During the process of creating a batch model, the measured data is
analyzed and a model is built over the measured data.
Chapter 2. Systems management 71
To create a batch model, click Performance → All Tasks → Sizing → Batch Model →
Create Batch Model. The Create Batch Model window opens, as shown in Figure 2-80.
Specify the collection name and the library where the performance collection data is and click
OK.
Figure 2-80 Create a batch model
Note: The Create Batch Model action submits a batch job to create the model. It can
sometimes be a long-running operation. The creation is done when the status of the Batch
Model collection is in a Complete state.
To check the status of a batch model creation, click Performance → All Tasks → Sizing →
Batch Model → Batch Models. After the batch model creation finishes, it shows a Complete
status, as shown in Figure 2-81.
Figure 2-81 Completed batch model creation
72 IBM i 7.2 Technical Overview with Technology Refresh Updates
A batch model provides the facility to change the calibration of batch model measured data if
it was modeled incorrectly by the system. To do so, click Performance → All Tasks →
Sizing → Batch Model → Change Model Calibration. Specify the batch model name to be
changed and click OK. Users are allowed to change the storage and workload for batch
model calibration. See Figure 2-82.
Figure 2-82 Change a batch model calibration
Note: After changing the calibration of a batch model, users are required to perform a
Calibrate Batch Model action so that the system can re-create the model after the
calibration changes. To calibrate the batch model, click Performance → All Tasks →
Sizing → Batch Model → Calibrate Batch Model. Similar to creating a batch model,
calibrating a batch model submits a batch job to re-create the model and can be a
long-running operation.
You can use a batch model to change the batch model to model various “what if” scenarios.
Users can change a batch model to the following scenarios:
Overall system workload growth
Processor upgrade
Disk upgrade
Changes to individual workloads
To specify the above “what if” changes, click Performance → All Tasks → Sizing → Batch
Model → Batch Models, right-click the batch model result, and select Change Model. In the
Change Batch Model window (Figure 2-83), specify the changes to the batch model and then
click OK to apply the changes.
Figure 2-83 Change a batch model
Chapter 2. Systems management 73
As shown in Figure 2-84, you can start investigating the completed batch model by
right-clicking the batch model and selecting Investigate Results.
Figure 2-84 Start a batch model investigation
Figure 2-85 shows the investigation result of a batch model. The diagram shows the
Measured Workload Timeline Overview, which describes the measured performance data
that is collected in the Collection Services.
The diagram in Figure 2-85 shows the Modeled Workload Timeline Overview, which
describes the condition of the performance that is modeled with the specified scenario. This
diagram is based on PDI, so you can easily explore these diagrams and see the detail of the
modeled performance.
Figure 2-85 Batch model: Measured Workload Timeline Overview
Note: The thread-identifier-related information is available on tooltips.
74 IBM i 7.2 Technical Overview with Technology Refresh Updates
The diagram that is shown in Figure 2-86 shows the Modeled Workload Timeline Overview,
which describes the condition of the performance that is modeled with the specified scenario.
This diagram is based on PDI, so you can easily explore these diagrams and see the detail of
the modeled performance.
Figure 2-86 Batch model: Modeled Workload Timeline Overview
Note: The thread-identifier-related information is available on tooltips.
For more information about how to use batch model, see the How to use the Batch Model
performance tool developerWorks article, found at the following website:
https://www.ibm.com/developerworks/ibmi/library/i-how-to-use-the-batch-model-perfo
rmance-tool/
For more information about Batch Model, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahx/rzahxwebnavbatchmode
l.htm?lang=en
Chapter 2. Systems management 75
Performance perspectives
IBM Navigator for i provides the following new perspectives for displaying performance data
through PDI:
Disk Reads and Writes Detail
In IBM i 7.2, users can display the disk reads and writes details. To view this information,
click Performance → Investigate Data → Collection Services → Disk → Disk Reads
and Writes Detail, as shown in Figure 2-87.
Figure 2-87 Disk Read and Writes Detail option
76 IBM i 7.2 Technical Overview with Technology Refresh Updates
The Disk Reads and Writes Detail perspective contains interval measurements for Disk
Storage Systems. This perspective allows users to have the following views:
– Performance Data Investigator IBM i Model DSS
This table provides details about the disk reads and writes by interval, as shown in
Figure 2-88.
The following drilldowns are available:
• Disk I/O Rates Overview - Detailed
• Disk I/O Average Response Time Overview - Detailed
• Disk I/O Rates Overview with Cached Statistics - Detailed
• Disk I/O Total Response Time Overview - Detailed
• Disk I/O Total Service Time Overview - Detailed
Figure 2-88 Performance Data Investigator IBM i Model DSS
Chapter 2. Systems management 77
– Read/Write Rate and Response Time
This chart shows disk rate and response times, as shown in Figure 2-89. Read rate
and write rate are shown as bars. Average read response time and average write
response time are shown as lines.
The following drilldowns are available:
• Disk I/O Rates Overview - Detailed
• Disk I/O Average Response Time Overview - Detailed
• Disk I/O Rates Overview with Cached Statistics - Detailed
• Disk I/O Total Response Time Overview - Detailed
• Disk I/O Total Service Time Overview - Detailed
Figure 2-89 Read/Write ratio and Response Time
78 IBM i 7.2 Technical Overview with Technology Refresh Updates
– Read/Write Transfer Size and Rate
This chart shows transfer size versus read rate, as shown in Figure 2-90. Read transfer
size and write transfer size are shown as bars. Read rate and write rate are shown as
lines on the chart.
The following drilldowns are available:
• Disk I/O Rate Overview - Detailed
• Disk I/O Average Response Time Overview - Detailed
• Disk I/O Rates Overview with Cached Statistics - Detailed
• Disk I/O Response Time Overview - Detailed
• Disk I/O Total Service Time Overview - Detailed
Figure 2-90 Read/Write Transfer Size and Rate
Chapter 2. Systems management 79
– Installed Disk Hardware
This table provides installed disk hardware information, as shown in Figure 2-91:
• ASP number
• Disk unit type
• Feature code
• RAID type
• Disk unit count
• APS capacity
• Disk used %
• Average unit size
Figure 2-91 Installed Disk Hardware
Storage Allocation/Deallocation
In IBM i 7.2, users can display the storage allocation and deallocation from PDI. To view
this information, click Performance → Investigate Data → Collection Services →
Storage Allocation, as shown in Figure 2-92.
Figure 2-92 Storage Allocation tasks
80 IBM i 7.2 Technical Overview with Technology Refresh Updates
The storage Allocation/Deallocation perspective allows users to view the following
functions:
– Storage Allocation/ Deallocation Overview
This chart shows allocation and deallocation of the temporary and permanent storage
for all contributors over time for the selected collections. Use this chart to select a time
frame for further detailed investigation.
Figure 2-93 shows the Storage Allocation/Deallocation Overview.
Figure 2-93 Storage Allocation/Deallocation Overview perspective
Chapter 2. Systems management 81
– Storage Allocation/ Deallocation by Thread or Task
This chart shows allocation and deallocation of the temporary and permanent storage,
and the net frames that are requested by thread or task. Use this chart to select a
thread or task for viewing its storage statistics over time.
Figure 2-94 on page 83 shows the Storage Allocation/Deallocation by thread or task.
82 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-94 Storage Allocation/Deallocation by thread or task
Chapter 2. Systems management 83
Memory
IBM Navigator for i provides the capability to view system performance from a memory
point of view through PDI. To view the memory perspective, click Performance →
Investigate Data → Collection Services → Memory, as shown in Figure 2-95.
Figure 2-95 Memory perspective in PDI
84 IBM i 7.2 Technical Overview with Technology Refresh Updates
You can use memory perspective in PDI to view the following memory performance data:
– Memory Pool Sizes and Fault Rates
This chart shows the memory pool sizes and page fault rates for all memory pools on
the system over time for the selected collection or collections. Use this chart to select a
specific memory pool for further detailed investigation.
Figure 2-96 shows an example of viewing memory pool size and fault rates over time
from a system.
Figure 2-96 Memory pool sizes and fault rates in PDI
Chapter 2. Systems management 85
– Memory Pool Activity Levels
This chart shows the average memory activity levels and the number of transitions
from the active or wait states to the ineligible state per second for all memory pools on
the system over time for the selected collection or collections. Use this chart to select a
specific memory pool for further detailed investigation.
Figure 2-97 shows an example of viewing memory pool activity level over time from a
system.
Figure 2-97 Memory pool activity levels over time in PDI
86 IBM i 7.2 Technical Overview with Technology Refresh Updates
– DB and Non-DB Page Fault
This chart shows the database and non-database page fault rates for all memory pools
on the system over time for the selected collection or collections. Use this chart to
select a specific memory pool for further detailed investigation.
Figure 2-98 shows an example of viewing database and non-database page fault rates
over time in a system.
Figure 2-98 Database and non-database page faults overview in PDI
Chapter 2. Systems management 87
Java
IBM Navigator for i 7.2 provides the capability of viewing memory that is consumed by IBM
Technology for Java through the Java perspective in PDI. This ability enables users to
monitor and investigate the performance of their Java application over time.
To view the Java perspective, click Performance → Investigate Data → Collection
Services → Java, as shown in Figure 2-99.
Figure 2-99 Java perspective menu in PDI
88 IBM i 7.2 Technical Overview with Technology Refresh Updates
You can use Java perspectives to view the following charts:
– IBM Technology for Java Memory Overview
This chart shows garbage collection information, including heap sizes and other
general information that is related to JVM memory.
Figure 2-100 shows an example of memory that is consumed by Java over time.
Figure 2-100 Java memory graph in PDI
Chapter 2. Systems management 89
– IBM Technology for Java Memory by Job
This chart shows average and peak garbage collection information, including heap
sizes and other general information that is related to JVM memory by job.
Figure 2-101 shows the Java memory consumption per job.
Figure 2-101 Java memory by job in PDI
90 IBM i 7.2 Technical Overview with Technology Refresh Updates
Temporary storage
IBM Navigator for i also provides the capability of viewing temporary storage allocation
and deallocation through the Temporary Storage perspective in PDI. To view the
temporary storage perspective, click Performance → Investigate Data → Collection
Services → Storage Allocation → Temporary Storage, as shown in Figure 2-102.
Figure 2-102 Temporary Storage perspective in PDI
You can use Temporary Storage perspectives to view the following charts:
– Temporary Storage Allocation Accounting
This chart shows the amount of temporary storage that is charged to active and ended
jobs, the amount of user temporary storage, and the amount of temporary storage that
is used for database and non-database operations by the IBM i operating system
across the system over time for the selected collections. Use this chart to select a time
frame for further detailed investigation.
– Temporary Storage Allocation/Deallocation Overview
This chart shows allocation and deallocation of the temporary storage for all
contributors over time for the selected collections. Use this chart to select a time frame
for further detailed investigation.
– Temporary Storage Allocation/Deallocation by Job or Task
This chart shows allocation and deallocation of the temporary storage by job or task.
Use this chart to select a job or task for viewing its temporary storage statistics over
time.
– Temporary Storage Allocation/Deallocation by Thread or Task
This chart shows allocation and deallocation of the temporary storage by thread or
task. Use this chart to select a thread or task for viewing its temporary storage statistics
over time.
Chapter 2. Systems management 91
– Temporary Storage Allocation/Deallocation by Generic Job or Task
This chart shows allocation and deallocation of the temporary storage by generic job or
task. Use this chart to select a generic job or task for viewing its temporary storage
statistics over time.
– Temporary Storage Allocation/Deallocation by Job User Profile
This chart shows allocation and deallocation of the temporary storage by job user
profile. Use this chart to select a job user profile for viewing its temporary storage
statistics over time.
– Temporary Storage Allocation/Deallocation by Job Current User Profile
This chart shows allocation and deallocation of the temporary storage by job current
user profile. Use this chart to select a job current user profile for viewing its temporary
storage statistics over time.
– Temporary Storage Allocation/Deallocation by Subsystem
This chart shows allocation and deallocation of the temporary storage by subsystem.
Use this chart to select a subsystem for viewing its temporary storage statistics over
time.
– Temporary Storage Allocation/Deallocation by Server Type
This chart shows allocation and deallocation of the temporary storage by server type.
Use this chart to select a server type for viewing its temporary storage statistics over
time.
2.1.10 Security
In IBM i 7.2, the security wizard support can be enabled in IBM Navigator for i by clicking
Security → All Tasks → Configure, as shown in Figure 2-103.
Figure 2-103 Start the Security wizard
92 IBM i 7.2 Technical Overview with Technology Refresh Updates
This action starts the Security Wizard interface, as shown in Figure 2-104. You can use this
wizard to perform the following functions:
Create a set of security recommendations.
Create reports explaining the security recommendations.
Optionally, apply the recommendations to the system.
Figure 2-104 Security wizard
2.1.11 Network
Enterprise Identity Mapping (EIM) support can be enabled in IBM Navigator for i in IBM i 7.2
by clicking Network → Enterprise Identity Mapping, as shown in Figure 2-105.
Figure 2-105 Enterprise Identity Mapping
Chapter 2. Systems management 93
EIM allows administrators and application developers to solve the issue of managing multiple
user registries across the enterprise. The EIM migration is described in two parts:
EIM configuration
EIM domain management
EIM configuration
The EIM configuration includes the following items:
EIM configuration wizard
Configuration list
Configuration actions
The configuration wizard guides you through the configuration of the system to participate in
an EIM domain.
EIM domain management
The EIM domain management describes all objects and actions that are related to the EIM
domain, which includes the Domain folder actions, the User Registries subfolder actions, the
Identifier subfolder actions, the User Registry object actions, and the Identifier object actions.
2.1.12 Omnifind Text Search
The ability to search text from files in the integrated file system (IFS) and spooled files in
output queues was added to IBM Navigator for i for IBM i 7.2. To use this function, click
System → Search, as shown in Figure 2-106.
Figure 2-106 Omnifind Text Search
Note: The IBM OmniFind® product (5733-OMF) must be installed on the system to use
this function.
In IBM i 7.2, OmniFind supports indexing the files from the top level of the directories and
from the subdirectories of the directories recursively. From IBM Navigator for i, there is the
possibility to search text from IFS and spool files without needing to understand stored
procedures.
94 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about OmniFind Text Search, see 8.9, “OmniFind Text Search Server for
DB2 for i” on page 412 and IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzash/rzashkickoff.htm?lan
g=en
2.1.13 Disk management
In IBM Navigator for IBM i 7.2, the concurrent removal of disk units can be enabled from an
ASP and from an IASP that is varied on.
After selecting the disk unit, you are prompted to confirm its removal from the ASP, as shown
in Figure 2-107.
Figure 2-107 Confirmation of the concurrent removal of a disk unit from an ASP
Chapter 2. Systems management 95
After the removal is started, you can perform the following actions, as shown in Figure 2-108:
Pause
Resume
Cancel
Figure 2-108 Removal of disk units from ASP: available actions
You also can pause the disk unit removal process and afterward cancel the running process if
necessary, as shown in Figure 2-109.
Figure 2-109 Cancel the disk unit removal process
96 IBM i 7.2 Technical Overview with Technology Refresh Updates
As shown in Figure 2-110, a Solid State Drive column was added to the disk units list to
indicate whether the disk unit is a solid-state drive (SSD). Previously, you could not find the
SSD information from the type and model of some drives.
Figure 2-110 Solid State Drives column
In IBM Navigator for IBM i 7.2, some of the user access restrictions on IBM Navigator for i
were removed, which means users can have a different user ID and password for IBM i and
within System Service Tools (SST), as shown in Figure 2-111.
Figure 2-111 Service tools: disk management tasks access
Note: In IBM i 7.2 IBM Navigator for i, a user can access the disk management tasks in the
same way they do in IBM i Navigator, that is, by using a service tools user that is
independent from the IBM i profile that is used to sign on to the system.
If you have a matching service tools user ID and IBM i user ID, the sign-on window does
not open and you access the disk management functions as usual. If that fails, a sign-on
window opens asking for the service tool user ID and password.
The first time that you access disk management functions, if your service tools user ID and
password do not match your IBM i user ID and password, the sign-on window opens. After
you get access to the disk management functions, you do not need to sign on again, even
if you log out and log in. If your service tools user ID or password is changed or expired,
when you access disk management interface, an error message is displayed and the
sign-on window opens again.
Chapter 2. Systems management 97
As shown in Figure 2-112, the following actions were added for disk pools:
Start tracing.
Stop tracing.
Clear trace.
Start balance.
You can use these actions to trace the hot data on each disk unit in the specific disk pool and
balance them in the disk pool by different balance types.
Figure 2-112 Disk pool menu
98 IBM i 7.2 Technical Overview with Technology Refresh Updates
As shown in Figure 2-113, the rebuild disk unit data action is added for disk units, which users
can use to rebuild data on a failed disk unit within a parity set.
Figure 2-113 Rebuild disk unit data: failed disk within RAID protected set
The following options are available for the user, as shown in Figure 2-114:
Stop allocating data on specific disk units.
Resume allocating data on specific disk units.
Figure 2-114 Stop and resume allocating data to disk units
Chapter 2. Systems management 99
2.1.14 Partition management
Within IBM Navigator for i, you can now perform the following partition management tasks:
Create a partition.
Work with existing partitions.
Creating a partition
In IBM Navigator for i 7.2, you can create a partition, as shown in Figure 2-115, by clicking
Configuration and Service → Create Partition.
Figure 2-115 Create a partition
This starts the Create Partition Wizard, where you can define the partition properties
(Figure 2-116).
Figure 2-116 Create Partition Wizard
100 IBM i 7.2 Technical Overview with Technology Refresh Updates
From the Create Partition Wizard, you can define the following parameters for the partition:
General: Specify the partition ID, partition name, and partition type (IBM i or Linux).
Memory: Specify the memory to be assigned to the partition. The minimum memory that is
needed for a partition to complete successfully an IPL is 128 MB. The maximum allowed
memory is the current available memory. Partitions must have memory that is assigned in
multiples of the memory region size.
Processors: Specify the number of processors and the processing mode (dedicated or
shared processor pool).
Ethernet: Configure the virtual Ethernet setup.
Storage: Select the virtual disk to be assigned to the partition.
Note: Virtual Partition Manager (VPM) does not provide the function of assigning the
storage resource to the new partition, such as virtual disk, optical device, and physical
disks. You must use the Create Network Server Description (Create NWSD) CL command for
the new partition and then link the storage device to the new partition by using the Add
Server Storage Link (ADDNWSSTGL) CL command.
Working with partitions
You can work with the existing partitions within IBM Navigator for i, as shown in Figure 2-117.
Figure 2-117 Work with partitions in IBM Navigator for i
The following options are available for working with existing partitions on the system:
Delete
Power on
Power off
Vary off NWSDs
Vary on NWSDs
Properties
For more information about the partition management interface in IBM Navigator for i 7.2, see
the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/7.2%20Content%20and%20Changes
For more information about VPM, see Creating IBM i Client Partitions Using Virtual Partition
Manager, REDP-4806.
Chapter 2. Systems management 101
For more information about virtualization in IBM i 7.2, see 3.3.1, “Virtual Partition Manager
GUI in IBM Navigator for i” on page 205.
2.1.15 Support for additional system values
A limited number of system values were missing from the IBM Navigator for i interface. With
IBM i 7.2, those missing system values are added, including those dealing with network
attributes.
Click Configuration and Service → System Values, as shown in Figure 2-118. Right-click
the Network category and select Properties.
Figure 2-118 Display system values in IBM Navigator for i
102 IBM i 7.2 Technical Overview with Technology Refresh Updates
The Network Attributes System Values window opens, as shown in Figure 2-119.
Figure 2-119 Network attributes system values
2.1.16 Integrated server administration
The following enhancements that are related to the integrated server support were added to
IBM i 7.2:
“Resource allocation priority” on page 104
“4 K disk units sector support” on page 106
“Solid-state drive support” on page 108
“Restricted/allowed resources” on page 109
“Storage pool size limit” on page 111
“Windows Server 2012 support” on page 112
“Windows Server 2003 support removed” on page 113
“Creating quorum disks function removed” on page 113
“No support for IXS and IXA hardware” on page 113
“Integrated server cloning” on page 114
Chapter 2. Systems management 103
Resource allocation priority
The resource allocation priority is used to define the cost of the hosting IBM i resources when
formatting the storage spaces that are linked to the client servers.
In IBM i 7.2, when the resource allocation priority parameter is used the Create NWS Storage
Space (CRTNWSSTG) CL command, it defines a range of 1 - 9 to indicate how many resources
should be given to the process that zeros out the disk during a format request:
A lower value requires more time to complete a format, but consumes fewer resources
from the host system.
A higher value completes the format faster, but consumes more resources on the host
system.
See Figure 2-120.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . NWSSTG
Size . . . . . . . . . . . . . . NWSSIZE *CALC
From storage space . . . . . . . FROMNWSSTG *NONE
Format . . . . . . . . . . . . . FORMAT *NTFS
Auxiliary storage pool ID . . . ASP 1
ASP device . . . . . . . . . . . ASPDEV
Text 'description' . . . . . . . TEXT *BLANK
Additional Parameters
Data offset . . . . . . . . . . OFFSET *FORMAT
Sector size in bytes . . . . . . SCTSIZ 512
Preferred storage unit . . . . . UNIT *ANY
Resource allocation priority . . RSCALCPTY 9
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-120 CRTNWSSTG CL command: resource allocation priority
104 IBM i 7.2 Technical Overview with Technology Refresh Updates
If you want to perform this action in IBM Navigator for i, click Integrated Server
Administration → Servers → New Virtual Storage, as shown in Figure 2-121.
Figure 2-121 Resource allocation priority parameter in IBM Navigator for i
You can change the resource allocation priority parameter to a value 1 - 9. Similar to the
Create NWS Storage Space (CRTNWSSTG) CL command, a value of 1 completes the format
faster, but consumes more resources on the host system, and a value of 9 completes the
format slower, but consumes less resources on the host system.
Chapter 2. Systems management 105
4 K disk units sector support
Disk units with 4 K sectors are now supported when creating a virtual disk.
Here are the options for the Create NWS Storage Space (CRTNWSSTG) CL command for the
Sector size in bytes parameter:
512: Configure this storage for 512 bytes in each sector.
4096: Configure this storage for 4096 bytes in each sector.
Note: A sector size of 4096 cannot be specified when FORMAT(*FAT) or FORMAT(*FAT32) is
specified.
See Figure 2-122.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . NWSSTG
Size . . . . . . . . . . . . . . NWSSIZE *CALC
From storage space . . . . . . . FROMNWSSTG *NONE
Format . . . . . . . . . . . . . FORMAT *NTFS
Auxiliary storage pool ID . . . ASP 1
ASP device . . . . . . . . . . . ASPDEV
Text 'description' . . . . . . . TEXT *BLANK
Additional Parameters
Data offset . . . . . . . . . . OFFSET *FORMAT
Sector size in bytes . . . . . . SCTSIZ 512
Preferred storage unit . . . . . UNIT *ANY
Resource allocation priority . . RSCALCPTY 9
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-122 CRTNWSSTG CL command: sector size support parameter
106 IBM i 7.2 Technical Overview with Technology Refresh Updates
If you want to perform this action within IBM Navigator for i, click Integrated Server
Administration → Servers → New Virtual Storage, as shown in Figure 2-123.
Figure 2-123 Sector size in bytes parameter in IBM Navigator for i
Chapter 2. Systems management 107
Solid-state drive support
In IBM i 7.2, an SSD disk unit type can be selected as a preference when creating a network
server storage space, as shown in Figure 2-124.
The following options of the Create NWS Storage Space (CRTNWSSTG) CL command for the
Preferred storage unit parameter are available:
SSD: Solid-state drive storage media is preferred. Storage should be allocated from
solid-state drive storage media if available.
*ANY: No storage media is preferred. Storage is allocated from any available storage
media.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . NWSSTG
Size . . . . . . . . . . . . . . NWSSIZE *CALC
From storage space . . . . . . . FROMNWSSTG *NONE
Format . . . . . . . . . . . . . FORMAT *NTFS
Auxiliary storage pool ID . . . ASP 1
ASP device . . . . . . . . . . . ASPDEV
Text 'description' . . . . . . . TEXT *BLANK
Additional Parameters
Data offset . . . . . . . . . . OFFSET *FORMAT
Sector size in bytes . . . . . . SCTSIZ 512
Preferred storage unit . . . . . UNIT SSD
Resource allocation priority . . RSCALCPTY 9
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-124 CRTNWSSTG CL command: SSD support added
If you want to perform this action in IBM Navigator for i, click Integrated Server
Administration → Servers → New Virtual Storage, as shown in Figure 2-125 on page 109.
108 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-125 Preferred storage unit parameter in IBM Navigator for i
Restricted/allowed resources
In IBM i 7.2, you can select either restricted devices to restrict access or allowed device
resources to allow access for tape and optical device resource names, as shown in
Figure 2-126.
Create Network Server Desc (CRTNWSD)
Type choices, press Enter.
Virtual Ethernet path: VRTETHPTH
Port number . . . . . . . . .
Network server host adapter . *DFTSTGPTH
IP security rules:
Remote interface 1 rule . . . *DFTSECRULE
Remote interface 2 rule . . . *DFTSECRULE
Remote interface 3 rule . . . *DFTSECRULE
Remote interface 4 rule . . . *DFTSECRULE
+ for more values
Allowed device resources . . . . ALWDEVRSC *UNRSTD
+ for more values
Restricted device resources . . RSTDDEVRSC *NONE
+ for more values
Network server configuration: NWSCFG
Remote system name . . . . . . *DFT
Connection security name . . . *DFT
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Messages pending on other displays.
Figure 2-126 CRTNWD CL command: allowed and restricted tape or optical device resources
Chapter 2. Systems management 109
The following values are available for Allowed device resources (ALWDEVRSC):
*UNRSTD
*ALLTAPE
*ALLOPT
The following values are available for Restricted device resources (RSTDEVRSC):
*NONE
*ALL
*ALLTAPE
*ALLOPT
Note: ALWDEVRSC is mutually exclusive with RSTDDEVRSC. If a value other than *UNRSTD is
specified with ALWDEVRSC, *NONE must be specified with RSTDDEVRSC.
In IBM Navigator for i, click Integrated Server Administration → Servers → Your server.
From the list of server in right pane, select Properties from the Actions drop-down menu, as
shown in Figure 2-127.
Figure 2-127 Select server properties in IBM Navigator for i
110 IBM i 7.2 Technical Overview with Technology Refresh Updates
From the server Properties window, click Advanced in the System tab. In the Advanced
Properties window, under IBM i Devices, you can either restrict access or allow access for the
tape and optical devices, as shown in Figure 2-128.
Figure 2-128 Allow or restrict access to tape and optical devices
Storage pool size limit
In IBM i 7.2, the storage pool size limit is increased to use an 8-byte integer.
Note: The Retrieve System Status (QWCRSSTS) API change is supported within IBM
Navigator for i.
Chapter 2. Systems management 111
Windows Server 2012 support
Support is added for Windows Server 2012, including a new ReFS file system type for
storage and shared disk linking. See Figure 2-129.
ReFS is a new file system that was introduced in Microsoft Windows 2012 as the next
generation file system after NTFS. If you install an NWSD with Windows 2012, you can create
a network server storage space, which can be formatted as ReFS in Windows.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . NWSSTG
Size . . . . . . . . . . . . . . NWSSIZE *CALC
From storage space . . . . . . . FROMNWSSTG *NONE
Format . . . . . . . . . . . . . FORMAT *REFS
Auxiliary storage pool ID . . . ASP 1
ASP device . . . . . . . . . . . ASPDEV
Text 'description' . . . . . . . TEXT *BLANK
Additional Parameters
Data offset . . . . . . . . . . OFFSET *FORMAT
Sector size in bytes . . . . . . SCTSIZ 512
Preferred storage unit . . . . . UNIT *ANY
Resource allocation priority . . RSCALCPTY 9
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-129 Windows Server 2012 support
If you want to perform this action within IBM Navigator for i, click Integrated Server
Administration → Servers → New Virtual Storage, as shown in Figure 2-130 on page 113.
In the Planned file system parameter, you can select a format of NTFS, ReFS, FAT-32, FAT, or
Open source.
112 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-130 New ReFS file system for Windows 2012
Windows Server 2003 support removed
In IBM i 7.2, support for Windows Server 2003 was removed.
Note: No new integrated Windows Server 2003 (and R2) servers can be installed or
cloned in IBM i 7.2. Integrated Windows Server 2003 (and R2) servers that were installed
on prior IBM i releases and then migrated to IBM i 7.2 can continue to run as is, but without
service support. The suggested migration path for these servers is to upgrade to Windows
Server 2008 or newer version.
Creating quorum disks function removed
In IBM i 7.2, the ability to create quorum disks was removed.
No support for IXS and IXA hardware
With IBM i 7.2, Integrated xSeries Server (IXS) and System x servers that are attached by
using the Integrated xSeries Adapter (IXA) are no longer supported.
Chapter 2. Systems management 113
Integrated server cloning
Support was added to select the storage pool where virtual storage should be created. See
Figure 2-131.
You can specify where the storage space should be created:
Auxiliary storage pool ID: Select an ASP ID 1 - 255.
ASP device: Specify the ASP device name in case there is an Independent ASP.
Note: Data offset is used to specify how IBM i should align the disk, that is, either align
the first logical partition or logical disk. For *ReFS, use the default align first logical partition
(*ALIGNLGLPTN), which is the same as the NTFS format.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . NWSSTG TOMV
Size . . . . . . . . . . . . . . NWSSIZE *CALC
From storage space . . . . . . . FROMNWSSTG FROMTEST
Format . . . . . . . . . . . . . FORMAT > *REFS
Auxiliary storage pool ID . . . ASP 1
ASP device . . . . . . . . . . . ASPDEV
Text 'description' . . . . . . . TEXT *BLANK
Additional Parameters
Data offset . . . . . . . . . . OFFSET *FORMAT
Sector size in bytes . . . . . . SCTSIZ 512
Preferred storage unit . . . . . UNIT *ANY
Resource allocation priority . . RSCALCPTY 9
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-131 CRTNWSSTG CL command: storage pool selection
114 IBM i 7.2 Technical Overview with Technology Refresh Updates
If you want to perform this action in IBM Navigator for i, click Integrated Server
Administration → Servers → New Virtual Storage, as shown in Figure 2-132.
Figure 2-132 Storage pool selection
For more information about the IBM i iSCSI-attached servers, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahq/rzahqntspo.htm?lang=
en
2.1.17 Database
For information about the database enhancements for IBM i 7.2 in IBM Navigator for i, see
8.7.2, “IBM Navigator for i: DB2 related functions” on page 403.
2.1.18 Printers and printer output
The following printer and printer output functions were added or updated in IBM i 7.2:
Automatic and silent printing
Virtual Printers task category
Exporting spooled files as PDFs
Automatic and silent printing
You can use automatic and silent printing support to print automatically and silently spooled
files in one output queue to client printers. This support also allows an IBM i ISV moving their
business application towards a cloud environment to print output to any printer that a client
might have attached to their PC.
Chapter 2. Systems management 115
Virtual printers task category
A new Virtual Printers task category was added under the Printers task category in the
navigation area, as shown in Figure 2-133.
Note: The Virtual Printers task function appears only when you are managing a system
with IBM i 7.1 or later.
Figure 2-133 Virtual printer support in IBM Navigator for i
116 IBM i 7.2 Technical Overview with Technology Refresh Updates
Exporting spooled files as PDFs
The functions of exporting spooled files as PDFs by using the Infoprint Server
5722-IP1licensed product to an output queue, integrated file system, or to an email were
simplified in IBM i 7.2.
These functions were previously implemented as wizards. Figure 2-134 shows that these
actions are now implemented as a single window with as many options set to defaults as
possible.
Figure 2-134 Export spool files as PDFs by using Infoprint Server
Chapter 2. Systems management 117
2.2 IBM i Access
IBM i 7.2 provides several enhancements to the IBM i Access Family. These enhancements
were made to deliver robust, reliable, and easy to use interfaces for accessing IBM i and
include the following features:
Simplicity of setup, use, and operations
Cross-platform infrastructure support
Support for access from web-enabled mobile devices
Continuous support and maintenance
The IBM i 7.2 Access Family provides the following products, which are covered in this
section:
2.2.1, “IBM i Access Client Solutions” on page 118
2.2.2, “IBM i Access for Windows” on page 144
2.2.4, “IBM i Mobile Access” on page 152
2.2.1 IBM i Access Client Solutions
IBM i Access Client Solutions is the newest member of the IBM i Access Family. Originally
announced with IBM i 7.1 TR 6, as shown in Figure 2-135, the IBM i Access Client Solutions
has three components:
Core offering (platform-independent)
Windows Application Package
Linux Application Package
Figure 2-135 IBM i Access Client Solutions components
The core offering of the IBM i Access Client Solutions product offers platform independence
through a Java based implementation. This portion of the product does not require a
platform-centric installer. To use it, you can extract the contents of the file that you download
from IBM and start using it.
The Windows Application Package and Linux Application Package offerings are
platform-specific packages for Windows and Linux. They inherited a subset of functions from
IBM i Access for Windows and IBM i Access for Linux, including middleware for developing
client applications.
The following topics are covered in this section:
“IBM i Access Client Solutions: Core offering (platform-independent)” on page 119
“IBM i Access Client Solutions: Windows Application Package” on page 143
“IBM i Access Client Solutions: Linux Application Package” on page 144
118 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about IBM i Access Client Solutions, see the IBM i Access product
website:
http://www.ibm.com/systems/power/software/i/access/solutions.html
IBM i Access Client Solutions: Core offering (platform-independent)
The IBM i Access Client Solutions core offering is built as a Java based, platform-independent
interface that runs on most operating systems that support Java. This includes Linux, Apple
Mac OS, Microsoft Windows, IBM AIX®, and IBM i. This product is an easy-to-use, simple,
yet powerful tool, which consolidates the most commonly used tasks for managing your IBM i
systems into one simplified location.
The core offering of Access Client Solutions provides the following advantages:
Supported in multiplatform environments.
Can be run from any type of media, including USB sticks, CDs or DVDs, and network
shares.
Easy to install, deploy, and update.
The configuration can be stored on any media.
IBM i Access Client Solutions V1.1.3 has the following enhancements:
Ability for the administer to restrict and hide features.
Support for using a .netrc file in place of manually entering credentials when using
“prompt once”.
Virtual Control Panel that supports both LAN and HMC consoles.
The console bar status is available for both LAN and HMC consoles from a 5250 session.
5250 display emulation enhancements:
– Insert paste support
– Double and triple click text selection
– Option to wrap on line boundary
– Option to scale automatically a font when resizing a display
– Option to enable displaying Unicode characters on panels with Unicode fields
– Improved compatibility when converting macros from IBM Personal Communications
– Character Backspace and Character Advance support
– Support for up to 52 sessions
Data Transfer enhancements:
– Option to download column headings, instead of column names
– Option to change line ending on download to CRLF, CR, or LF
– Option to upload and round decimals
Command-line plug-in enhancements for cfg, ping, download, upload, restrict, and
restrictview commands.
IBM i Access Client Solutions V1.1.4.x has the following enhancements:
Enhanced installation script for Windows for easier customization and deployment
HMC Probe utility for finding all partitions that are managed by an HMC
Chapter 2. Systems management 119
5250 display emulation enhancements:
– Support for up to 100 sessions
– Tab support for multiple 5250 sessions (Control + T for Windows and Linux, and
Command + T for Mac)
– Option to save a view of multiple 5250 sessions for easy restart of multiple sessions
– Additional watermark customizations
– Additional raster fonts from IBM Personal Communication and support for user
provided fonts
– Printer Definition Table (PDT) support for DBCS
– Migration wizard support for PCOMM.ws profiles, and .kmp and .pmp files
– Support for Host Code pages of 1130, 1132, 1164, and 1377
– Optional input character validation based on host code page
– Print emulation enhancements
– Additional mouse wheel customization
– Cursor customization when doing a paste
– Additional keyboard mapping options, such as character backspace, character
advance, and APL screen attributes
IBM i Access Client Solutions V1.1.5 has the following enhancements:
Added feature to run SQL scripts
Added feature to run SQL Performance Center
Better integration between IBM Navigator for i with IBM i Access Client Solutions for
improved performance and usability
Note: IBM i Access Client Solutions connect to any supported IBM i release. Most features
also work with IBM i 5.4. except for the 5250 console and Virtual Control Panel.
The following topics are covered in this section:
“Prerequisites” on page 121
“Program downloads” on page 121
“Program launchers” on page 121
“Main user interface” on page 122
“5250 emulation console bar” on page 123
“Virtual Control Panel” on page 123
“Improved macro conversion capability” on page 124
“Additional mouse wheel customization” on page 125
“Using the HMC Probe Utility for finding all the managed partitions of an HMC” on
page 126
“Saving multiple sessions for an easy restart” on page 128
“Tabbed 5250 sessions” on page 129
“Deployment wizard for easy customization and deployment” on page 130
“New database section” on page 131
120 IBM i 7.2 Technical Overview with Technology Refresh Updates
Prerequisites
Java 6.0 or higher should be installed on the system, which might be running any number of
operating systems, including Linux, Apple Mac OS, Microsoft Windows, AIX, and IBM i.
Tip: To check the version of Java that is installed on your system, go to your system
command prompt, terminal, or shell and run java -version.
For more information about connecting IBM i Access Client Solutions to IBM i systems, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajr/rzajropconoverview.h
tm
Program downloads
IBM i Access Client Solutions can be downloaded from the following link by using your IBM ID
login information:
https://www.ibm.com/services/forms/preLogin.do?source=swg-ia
Program launchers
Table 2-2 shows the launcher locations for IBM i Access Client Solutions.
Table 2-2 Program launcher locations for IBM i Access Client Solutions
Operating system Program launcher location
Windows 32-bit Start_Programs\Windows_i386-32\acslaunch_win-32.exe
Windows 64-bit Start_Programs\Windows_x86-64\acslaunch_win-64.exe
Linux 32-bit Start_Programs/Linux_i386-32/acslaunch_linux-32
Linux 64-bit Start_Programs/Linux_x86-64/acslaunch_linux-64
Macintosh Start_Programs/Mac_i386-32_x86-64/acslaunch_mac
Chapter 2. Systems management 121
Main user interface
Figure 2-136 shows the main user interface of the IBM i Access Client Solutions V 1.1.5.
Figure 2-136 Main user interface of IBM i Access Client Solutions
122 IBM i 7.2 Technical Overview with Technology Refresh Updates
5250 emulation console bar
In IBM i Access Client Solutions, there is a new feature in the 5250 console that is called a
console bar. The console bar shows the current state of IPL type, System Reference Codes
(SRCs), and so on. To display the console bar of a 5250 console, click View → Console bar,
as shown in Figure 2-137. This function works on both HMC and LAN consoles.
Figure 2-137 Console bar in a 5250 console
Virtual Control Panel
The Virtual Control Panel capability is enhanced in IBM i Access Client Solutions to support
the connection to an HMC console in addition to LAN console. The Virtual Control Panel to an
HMC console is shown in Figure 2-138.
Figure 2-138 Virtual Control Panel connection to an HMC console
Chapter 2. Systems management 123
Improved macro conversion capability
You can use IBM i Access Client Solutions to convert macros that are made in Personal
Communications to IBM Host-on-Demand. This feature helps IBM i users to migrate from
Personal Communications to Host-on-Demand in IBM i Access Client Solutions. Macro
conversion compatibility is improved to support the conversion of more keystrokes.
To convert a macro, click 5250 Session Manager from IBM i Access Client Solutions. Then,
click File → Convert Macro in the 5250 Session Manager window, as shown in Figure 2-139.
Figure 2-139 Convert Macro menu in the 5250 Session Manager
In the Convert Macro window, as shown in Figure 2-140, you can specify the location of the
original macro file (*.mac) and the target location of the newly converted macro. Click
Convert to start the conversion process.
Figure 2-140 Convert Macro window in IBM i Access Client Solutions
124 IBM i 7.2 Technical Overview with Technology Refresh Updates
Additional mouse wheel customization
In prior releases, mouse wheel functions worked with page up and page down in the 5250
emulator panel. In the current release, the customization of mouse wheel functions is
enhanced. Now, users can also combine Shift and Control buttons with mouse wheel up and
down to perform various functions in 5250 emulators. Figure 2-141 shows the Mouse Wheel
customizations window.
Figure 2-141 Mouse wheel customizations in 5250 emulator preferences
Chapter 2. Systems management 125
Using the HMC Probe Utility for finding all the managed partitions of an HMC
Users can use the HMC Probe Utility to add system console connections from an HMC to
IBM i Access Client Solutions. This function can be called by clicking HMC Probe Utility, as
shown in Figure 2-142.
Figure 2-142 Select the HMC Probe Utility on IBM i Access Client Solutions
The HMC Probe Utility asks for the HMC information, such as IP address or host name and
user ID. Click Probe and the utility prompts you for a password to log in.
126 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-143 shows the result of the HMC Probe Utility, showing all the systems and their
partitions that are managed by the HMC. Users can easily connect to their 5250 console
sessions, see the Virtual Control Panel of each system, or save the connections for future
use.
Figure 2-143 HMC Probe Utility result
Chapter 2. Systems management 127
Saving multiple sessions for an easy restart
Users can use IBM i Access Client Solutions to save multiple sessions of 5250 emulators.
With this feature, users can easily save all of their active sessions and re-open them when
needed. Figure 2-144 shows the Save as Multiple Sessions option on the File menu.
Figure 2-144 Save as multiple sessions on 5250 emulator window
Before saving multiple 5250 sessions, make sure that each session has its saved session
profile (.hod file), unless the Save As Multiple Session does not include the session as part of
the multiple session files. Figure 2-145 shows the warning message when a user tries to save
sessions as a multiple-sessions profile without having an individual saved profile (.hot file).
Figure 2-145 Warning message when saving multiple sessions without having individual .hod files
128 IBM i 7.2 Technical Overview with Technology Refresh Updates
To re-open the multiple-sessions profile, go to 5250 session manager, then start the saved
multiple-sessions file (.bchx files) as shown in Figure 2-146.
Figure 2-146 Example of saved multiple sessions in 5250 session manager
Tabbed 5250 sessions
To improve the usability of IBM i Access Client Solutions when working with many sessions,
tab support is added to the 5250 emulator. To use this feature, click File → New tab, or press
Ctrl + T on Windows or Command + T on Mac.
Figure 2-147 shows the tabbed sessions of a 5250 emulator.
Figure 2-147 Tabbed sessions of a 5250 emulator
Chapter 2. Systems management 129
Deployment wizard for easy customization and deployment
In a large-scale deployment, it is hard for the IT administrators to deploy IBM i Access Client
Solutions and customize its functions on a large number of PCs. Therefore, a deployment
wizard feature was added to provide simplicity of customizations and deployments. This
deployment wizard leads the administrator through a series of questions, asking which
function should be available for users.
IBM i Access Client Solutions wizards are inside the Windows_Application directory and are
named as follows:
install_acs_32.js for the 32-bit version of Windows
install_acs_64.js for the 64-bit version of Windows
There are two types of IBM i Access Client Solutions deployments:
Local deployment
Local deployment means that the product files must be copied and stored on the PC
where the product will be deployed.
Remote deployment
Remote deployment means that the product files are not copied to the PC. Instead, they
are accessed remotely from the PC, which means that the product files can be shared by
multiple users.
Customization and deployment of IBM i Access Client Solutions can be done in the following
ways, depending on the user requirements:
1. Local and user customized
The IBM i Access Client Solutions product files are copied and locally stored in each user
PC and each user decides which functions are available for themselves.
2. Local and administration customized
The IBM i Access Client Solutions product files are copied and locally stored in each user
PC, but instead of the users, the PC administrator decides which functions are available
for the users.
3. Remote and administration customized
The IBM i Access Client Solutions product files are accessed from a shared central
location (for example, IFS directories and network shared drives) and the PC administrator
decides which functions are available for the users.
To customize easily the installation of IBM i Access Client Solutions, the installation package
comes with an editable configuration file that is named AcsConfig.properties. This file
contains the properties of configuration, which enables the administrator to determine several
preferences of how IBM i Access Client Solutions are deployed to the clients. This
configuration file also provides examples that guide the administrator to modify the
preferences easily.
The properties that are available include the following ones:
com.ibm.iaccess.AcsBaseDirectory, which determines the configuration location
com.ibm.iaccess.ExcludeComps, which is used to restrict the usage of specific functions to
be deployed
com.ibm.iaccess.Fonts, which enables the administrators to override the default font
setting
com.ibm.iaccess.autoimport, which is used to set up automatically a configuration for
new users or to update a configuration for existing users
130 IBM i 7.2 Technical Overview with Technology Refresh Updates
Example 2-1 shows the usage of the AcsConfig.properties file to exclude several functions
and modify the default font path in an IBM i Access Client Solutions deployment.
Example 2-1 Example of a configuration in the AcsConfig.properties file
com.ibm.iaccess.ExcludeComps=KEYMAN,OPCONSOLE,HWCONSOLE,L1CPLUGIN
com.ibm.iaccess.Fonts=/Users/IBM_ADMIN/MyFonts
For more information about how to customize and deploy IBM i Access Client Solutions by
using the deployment wizard, see IBM i Access Client Solutions: Customization and
deployment made easy, found at:
https://www.ibm.com/developerworks/ibmi/library/i-ibmi-access-client-solutions-cus
tomization-trs/
New database section
The IBM i Access Client Solutions product is extended to include some database functions
that were previously found only within IBM i Access for Windows. The following options are
available, as shown in Figure 2-148:
Run SQL scripts
SQL Performance Center
Figure 2-148 Database task within ACS
Chapter 2. Systems management 131
The Run SQL Scripts option in IBM i Access Client Solutions is a Java based solution that
contains the following features, as shown in Figure 2-149:
Color highlighting
Faster startup
Other usability features:
– Line numbers
– Color coding
– Status bar
Figure 2-149 Run SQL Scripts in IBM i Access Client Solutions
From within the Run SQL script environment in IBM i Access Client Solutions, it is possible to
get the following corresponding information in IBM Navigator for i:
Job log
Job details
SQL details
Compare
Note: There is now a better integration between IBM Navigator for i and IBM i Access
Client Solutions for improved performance and usability.
132 IBM i 7.2 Technical Overview with Technology Refresh Updates
Within IBM i Access Client Solutions, click View → Job Log and you get the corresponding
Job Log information within IBM Navigator for i, as shown in Figure 2-150.
Figure 2-150 Run SQL Scripts: View: Job Log
Chapter 2. Systems management 133
Within IBM i Access Client Solutions, click View → Job Details and you get the
corresponding Job Details information within IBM Navigator for i, as shown in Figure 2-151.
Figure 2-151 Run SQL Scripts: View: Job Details
Within IBM i Access Client Solutions, click View → SQL Details and you get the
corresponding SQL Details for Jobs information within IBM Navigator for i, as shown in
Figure 2-152.
Figure 2-152 Run SQL Scripts: View: SQL Details
134 IBM i 7.2 Technical Overview with Technology Refresh Updates
The SQL Performance Center in IBM i Access Client Solutions contains the following tabs to
access DB2 for i performance artifacts, as shown in Figure 2-153:
SQL Performance Monitor: Traces database applications.
SQL Plan Cache Snapshots: Contains a point-in-time capture of queries that are run.
SQL Plan Cache Event Monitors: Contains details for those queries that were removed or
pruned from the plan cache.
Figure 2-153 SQL Performance Center interface within IBM i Access Client Solutions
Note: There is now a better integration between IBM Navigator for i and IBM i Access
Client Solutions for improved performance and usability.
Within IBM i Access Client Solutions, from the Performance Monitors tab, click Actions →
Analyze and you get the SQL Analysis information, as shown in Figure 2-154.
Figure 2-154 Performance Monitors: Analyze
Chapter 2. Systems management 135
Within IBM i Access Client Solutions, from the Performance Monitors tab, click Actions →
Show Statements and you get the SQL Statements information within IBM Navigator for i, as
shown in Figure 2-155.
Figure 2-155 Performance Monitors: Show Statements
Within IBM i Access Client Solutions, from the Performance Monitors tab, click Actions →
Compare and you get the corresponding SQL Performance Data Comparison information
within IBM Navigator for i, as shown in Figure 2-156.
Figure 2-156 Performance Monitors: Compare
136 IBM i 7.2 Technical Overview with Technology Refresh Updates
Within IBM i Access Client Solutions, from the Performance Monitors tab, click Actions →
Investigate and you get the following corresponding SQL related charts within IBM Navigator
for i:
Query Time Summary
Open Summary
Open Type Summary
Statement Usage Summary
Index Used Summary
Index Create Summary
Index Advised
Statistics Advised
MQT Use
Access Plan Use
Parallel Degree Usage
Chapter 2. Systems management 137
As shown in Figure 2-157, you can see the Query Time Summary information from the SQL
Overview details.
Figure 2-157 Performance Monitors: Investigate
138 IBM i 7.2 Technical Overview with Technology Refresh Updates
Within IBM i Access Client Solutions, from the Plan Cache Snapshots tab, click Actions →
Analyze and you get the SQL Plan Cache Analysis information within IBM Navigator for i, as
shown in Figure 2-158.
Figure 2-158 Plan Cache Snapshots: Analysis
Chapter 2. Systems management 139
Within IBM i Access Client Solutions, from the Plan Cache Snapshots tab, click Actions →
Show Statements and you get the corresponding SQL Plan Cache Statements information
within IBM Navigator for i, as shown in Figure 2-159.
Figure 2-159 Plan Cache Snapshots: Show Statements
Within IBM i Access Client Solutions, from the Plan Cache Snapshots tab, click Actions →
Compare and you get the corresponding SQL Performance Monitor Compare information
within IBM Navigator for i, as shown in Figure 2-160 on page 141.
140 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-160 Plan Cache Snapshot: Compare
Within IBM i Access Client Solutions, from the Plan Cache Event Monitors tab, click
Actions → Analyze and you get the SQL Analysis information, as shown in Figure 2-161.
Figure 2-161 Plan Cache Event Monitors: Analyze
Chapter 2. Systems management 141
Within IBM i Access Client Solutions, from the Plan Cache Event Monitors tab, click
Actions → Show Statements and you get the SQL Analysis information within IBM
Navigator for i, as shown in Figure 2-162.
Figure 2-162 Plan Cache Event Monitors: Show Statements
Within IBM i Access Client Solutions, from the Plan Cache Event Monitors tab, click
Actions → Compare and you get the corresponding SQL Performance Monitor Compare
information within IBM Navigator for i, as shown in Figure 2-163.
Figure 2-163 Plan Cache Event Monitors: Compare
142 IBM i 7.2 Technical Overview with Technology Refresh Updates
Within IBM i Access Client Solutions, from the Plan Cache Event Monitors tab, click
Actions → Investigate and you get the following corresponding SQL related charts within
IBM Navigator for i:
Query Time Summary
Open Summary
Open Type Summary
Statement Usage Summary
Index Used Summary
Index Create Summary
Index Advised
Statistics Advised
MQT Use
Access Plan Use
Parallel Degree Usage
In Figure 2-164, you can see the Query Time Summary information from the SQL Overview
details.
Figure 2-164 Plan Cache Event Monitors: Investigate
IBM i Access Client Solutions: Windows Application Package
The IBM i Access Client Solutions Windows Application Package provides middleware for
using and developing client applications for Windows operating systems. Windows
Application Package is an optional package for Windows that is part of the IBM i Access
Client Solutions product. Users and application programmers can use Windows Application
Package to use business information, applications, and resources across an enterprise by
extending the IBM i resources to the PC desktop.
IBM i Access Client Solutions Windows Application Package provides the following features:
An extensive number of application programming interfaces (APIs).
Provides accessibility to DB2 for i by using ODBC, .NET, and OLE DB.
Secure connection to IBM i by using Secure Sockets Layer (SSL).
Federal Information Processing Standard (FIPS) compliance.
Chapter 2. Systems management 143
Note: The Advanced Function Presentation (AFP) Printer Driver for Windows 8.1 and
WIndows Server 2012 R2 can be obtained from the Ricoh website. For more information
about this support, see the IBM Support Portal document:
http://www.ibm.com/support/docview.wss?uid=nas8N1011940
IBM i Access Client Solutions: Linux Application Package
Similar to the Windows Application Package, the Linux Application Package is an optional
package for Linux platforms that contains the following features:
Full 64-bit ODBC support
Both RPM and deb packages for Debian and Ubuntu distributions
Linux on Power support
When combined with the IBM i Access Client Solutions core offering, the Linux Application
Package provides a complete replacement for IBM i Access for Linux. In addition, the core
product offering provides several additional features that are not available in IBM i Access for
Linux.
2.2.2 IBM i Access for Windows
Within a journaled environment, you can now select multiple rows and view the data. This
makes it easier to compare the before and after situation. This topic is described in “Adding
multiple view entries support to the journal viewer” on page 402.
2.2.3 IBM i Access for Web
IBM i Access for Web offers web-based access to IBM i. You can use IBM i Access for Web to
use business information, applications, and resources across an enterprise by extending the
IBM i resources to the client desktop or a mobile device through a web browser.
Feature enhancements
In IBM i 7.2, IBM i Access for Web provides the following enhancements:
Viewing active jobs on the system in three different views, which is similar to what the
Work with Active Jobs (WRKACTJOB) CL command does.
Viewing PTFs and PTF Groups, which is similar to what the Display PTF (DSPPTF) and
Work with PTF Groups (WRKPTFGRP) CL commands do.
A new System category for displaying installed products, system values, and other
system-related information.
IBM Integrated Web Application Server for i V8.5.
RC4 and AES encryption types with SPNEGO environments.
Password expiration based on the QPWDEXPWRN system value.
In addition to the above features, PTF SI54619 for IBM i Access for Web provides the
following enhancements:
A filter box for row context-based filtering.
Support for secure telnet when connecting to port 992.
144 IBM i 7.2 Technical Overview with Technology Refresh Updates
Supported environments
IBM i Access for Web in 7.2 is supported on the following web application servers:
IBM Integrated Web Application Server for i
WebSphere Application Server Express V8.5 for IBM i, WebSphere Application Server
V8.5 for IBM i, and WebSphere Application Server V8.5 Network Deployment for IBM i
WebSphere Application Server Express V8.0 for IBM i, WebSphere Application Server
V8.0 for IBM i, and WebSphere Application Server V8.0 Network Deployment for IBM i
WebSphere Application Server Express V7.0 for IBM i, WebSphere Application Server
V7.0 for IBM i, and WebSphere Application Server V7.0 Network Deployment for IBM i
WebSphere Application Server Express V6.1 for i5/OS, WebSphere Application Server
V6.1 for i5/OS, and WebSphere Application Server V6.1 Network Deployment for i5/OS
In addition, IBM i Access for Web can be used with any of the following WebSphere Portal
servers:
WebSphere Portal V8.0
WebSphere Portal V7.0
WebSphere Portal for Multiplatforms V6.1
Note: IBM i Access for Web V7.2 is supported on IBM i 7.2, 7.1, and 6.1. For customers
running 7.1 and 6.1 IBM i Access Family (57xx-XW1), it is possible to acquire IBM i Access
for Web 7.2 and stay on their current release of IBM i.
For more information about configuring IBM i Access for Web by using the various supported
application server environments, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzamm/rzammaccessweb.htm
Main user interface
Figure 2-165 shows the main user interface of IBM i Access for Web in IBM i 7.2. The main
navigation menus are in the left side of the window.
Figure 2-165 IBM i Access for Web main user interface
Chapter 2. Systems management 145
Displaying active jobs
You can use IBM i Access for Web in IBM i 7.2 to view active jobs in the system. There are
three different views, which is similar to how the Work with Active Jobs (WRKACTJOB) CL
command works, such as status, elapsed data, and thread data.
To view the active jobs, click Jobs → Active jobs in the left side of the window. These views
are shown in Figure 2-166. Choose the list action at the top of the table to select alternative
views for displaying the active jobs.
Figure 2-166 IBM i Access for Web page showing alternative views of active jobs
Figure 2-167 shows the elapsed data information from active jobs.
Figure 2-167 IBM i Access for Web page showing elapsed data for active jobs
146 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-168 shows the thread data information from active jobs.
Figure 2-168 IBM i Access for Web page showing thread data for active jobs
Viewing system information
You also can use IBM i Access for Web in IBM i 7.2 to view system information, such as
installed products and system values. To do this task, click System in the left side of the
window. The submenu of System tasks opens. Figure 2-169 shows the installed products
from IBM i Access for Web.
Figure 2-169 IBM i Access for Web page showing installed products
Chapter 2. Systems management 147
You can use IBM i Access for Web in IBM 7.2 to view the PTF status, which presents a similar
view to what is displayed when you run the Display PTF (DSPPTF) CL command. Click
System → PTFs on the left side of the window to view the PTF status, as shown in
Figure 2-170.
Figure 2-170 IBM i Access for Web page showing PTF status
In addition to PTF status, you can list the PTF Groups that are installed on the IBM i system.
Click System → PTF groups in the left side of the window. The PTF Groups window opens,
as shown in Figure 2-171 on page 149.
148 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-171 IBM i Access for Web page showing PTF groups
You can use IBM i Access for Web to display the system values of the IBM i system. Click
System → System values in the left side of the window. The System Value Categories
window, as shown in Figure 2-172. Click the wanted category to display the system values.
Figure 2-172 IBM i Access for Web page showing system values categories
Chapter 2. Systems management 149
You can also extract other IBM i object data and store it in a database table. After the table is
created, it can be queried or modified like any other database table. However, the created
table contains only the snapshot of the object information. Therefore, to access the most
recent information, you must run the extract request again. Figure 2-173 shows the IBM i
object data extraction menu.
Figure 2-173 IBM i Access for Web page showing the list of IBM i object data that can be extracted
Context-based filtering
IBM i Access for Web in IBM i 7.2 provides a filter box for context-based filtering. This filter
box is available through various features in IBM i Access for Web, such as displaying
messages, jobs, PTF, and system values. You can use it to search easily the information
within the table based on the entered text.
Figure 2-174 on page 151 shows the example of filtering a PTF ID by entering TC in to the
filter box.
150 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 2-174 Filter box for context-based filtering in IBM i Access for Web
Secure telnet in a 5250 session
IBM i Access for Web in IBM i 7.2 added support for making a secure telnet connection. When
specifying port 992 for a 5250 display session, a secure telnet connection is made pending
certificate validation. The secure telnet session validates the certificate chain, but does not
perform server authentication or client authentication.
To start secure telnet in a 5250 session, click 5250 → Start session. The Start Session
window, as shown in Figure 2-175. Specify port 992 in the Port field.
Figure 2-175 Start session parameter for secure telnet
Chapter 2. Systems management 151
Secure telnet in a 5250 session, which is shown in Figure 2-176, can be identified by the SSL
label at the bottom of the 5250 panel.
Figure 2-176 Secure telnet in a 5250 session
2.2.4 IBM i Mobile Access
IBM i Access for Web (5770-XH2) has also added support for mobile devices, which enables
IBM i users to access IBM i resources from web-enabled mobile devices in a mobile-friendly
view.
Mobile features
The same features that are available from IBM i Access for Web are now available from a
mobile device, such as:
View and manage jobs, messages, output queues, files, and printers.
View PTFs and PTF groups.
View, add, insert, and update database records.
Build, run, and save SQL statements with an SQL wizard.
Start one or more emulation sessions with the ability to reconnect even after a device
power down.
Extract data from various IBM i resources into a table by using optional column selection.
Distribute and manage files to other users from a common download location.
Support for making secure telnet connections.
152 IBM i 7.2 Technical Overview with Technology Refresh Updates
With PTF SI54619 (or its supersedents), the following additional features are enabled:
Enhanced mobile navigation menu.
Filter box for row context-based filtering.
Action buttons appear in a menu when the row is selected.
Prerequisites and configuration
Here are the prerequisites and steps that are required to enable IBM i Mobile Access:
1. Install IBM i Access for Web (5770-XH2) on the system.
2. Load 5770-XH2 PTF SI53292 (or its supersedents).
3. Load the current IBM i HTTP Group PTF for the IBM i release that you are using:
– Release 7.2: SF99713 (level 1 or later)
– Release 7.1: SF99368 (level 27 or later)
– Release 6.1: SF99115 (level 38 or later)
4. Start the HTTP *ADMIN server on the system by running the following CL command:
STRTCPSVR SERVER(*HTTP) HTTPSVR(*ADMIN)
5. Configure the mobile instance by running the following command:
CFGACCWEB APPSVRTYPE(*INTAPPSVR) INSTANCE(*MOBILE)
6. Access the following URL from a web-enabled mobile device:
http://your_system_name:2001/iamobile/
7. Sign on with a valid user ID and password.
Note: This feature is provided as part of IBM i Access for Web 7.2 (5770-XH2) which can
be installed on IBM i 7.2, 7.1, and 6.1. If you are using IBM i 6.1 or 7.1, it is available on the
Entitled Software Support (ESS) website as Feature Code 6289 under SS1 or licensed
program publication number: LCD8-1965-00:
https://www.ibm.com/servers/eserver/ess/index.wss
Chapter 2. Systems management 153
Mobile user interface
Figure 2-177 shows the user interface for IBM i Mobile Access. It provides a navigation menu
that is similar to IBM i Access for Web in a mobile-friendly web page.
Figure 2-177 Main user interface of IBM i Mobile Access
154 IBM i 7.2 Technical Overview with Technology Refresh Updates
Working with active jobs
You can display active jobs in IBM i Mobile Access to view various job information, which is
similar to what the Work with Active Jobs (WRKACTJOB) CL command does in a 5250 session.
To view the active jobs, click Jobs → Active jobs. Figure 2-178 shows the interface of
working with active jobs in IBM i Mobile Access.
Figure 2-178 Work with active jobs in IBM i Mobile Access
Chapter 2. Systems management 155
Action buttons pop-up menu
IBM i Mobile Access in IBM i 7.2 provides enhancements to the user interface where you can
easily select an entry in a view and then select operations that are related to it.
Figure 2-179 shows an example of action buttons for a row entry for working with active jobs.
When you click a specific row, a pop-up menu containing action buttons opens.
Figure 2-179 Action buttons pop-up menu in IBM i Mobile Access
156 IBM i 7.2 Technical Overview with Technology Refresh Updates
SQL functions
You can use IBM i Mobile Access to run SQL statements and view the results in the mobile
browser. To run SQL, click Database → Run SQL, which opens the Run SQL page, as
shown in Figure 2-180. An SQL wizard is available for building SQL statements.
Figure 2-180 Run SQL on IBM i Mobile Access
Chapter 2. Systems management 157
Figure 2-181 shows the SQL output page on a mobile browser.
Figure 2-181 SQL output that is viewed in IBM i Mobile Access
158 IBM i 7.2 Technical Overview with Technology Refresh Updates
5250 sessions
Similar to IBM i Access for Web, you can use IBM i Mobile Access to start 5250 sessions to
access IBM i.
To start a 5250 session, click 5250 → Start session. The Start Session window opens, as
shown in Figure 2-182. In this window, you can configure the parameters for your 5250
session.
Figure 2-182 Start a 5250 session on IBM i Mobile Access
Chapter 2. Systems management 159
Figure 2-183 shows the interface of the 5250 telnet session from a mobile browser.
Figure 2-183 5250 telnet session on IBM i Mobile Access
160 IBM i 7.2 Technical Overview with Technology Refresh Updates
Secure telnet in a 5250 session
Similar to IBM i Access for Web, you can use IBM i Mobile Access to start secure telnet in a
5250 session by using SSL. This function derives its support from the same support in IBM i
Access for Web, where the secure telnet connection is made pending certificate validation
and its session validates the certificate chain, but does not perform server authentication or
client authentication.
Click 5250 → Start session and specify port 992 in the Port field. Figure 2-184 shows an
example of secure telnet started in a mobile browser. The SSL keyword at the bottom of the
panel identifies that the telnet session is secured by using SSL.
Figure 2-184 5250 secure telnet session on IBM i Mobile Access
Chapter 2. Systems management 161
2.3 Application Runtime Expert for i
Application Runtime Expert for i is a product that was first introduced in IBM i 7.1 that helps
users to ensure consistent performance and deployment for any workload that is running on
the system.
For more information about Application Runtime Expert for i, see the following publications:
Uncovering Application Runtime Expert - IBM i 7.1, REDP-4805
IBM i 7.1 Technical Overview with Technology Refresh Updates, SG24-7858
2.4 Journal management
This section describes the journal enhancements that are implemented in IBM i 7.2. The
following topics are covered:
2.4.1, “STRJRN parameter for restore CL commands” on page 162
2.4.2, “Deferred journal restore” on page 162
2.4.3, “Secure remote journal” on page 163
2.4.4, “QJOSJRNE API change” on page 163
2.4.5, “Journal conversion after an IBM i 7.2 installation” on page 163
2.4.6, “Journal limits changes” on page 164
2.4.7, “New journal entry types” on page 164
2.4.8, “Displaying journal information” on page 164
2.4.9, “Journal Sizing and Planning tool” on page 167
2.4.1 STRJRN parameter for restore CL commands
A new parameter called Start journaling (STRJRN) was added to Restore Object (RSTOBJ) and
Restore Library (RSTLIB) CL commands. This parameter controls whether the journaling is
automatically started for the new objects after restore. Journal information that was saved is
restored regardless of the value of the parameter. Existing objects are not affected. This
parameter takes precedence over QDFTJRN data area and journal inheritance.
2.4.2 Deferred journal restore
In IBM i 7.2, restore processing is enhanced to allow the start of journaling to be deferred for
database files, data areas, data queues, and libraries when the object or library is restored
before the journal. After the journal is restored, the object that deferred start of journaling is
reestablished and resumes journaling.
To use this feature, you must specify the Defer ID (DFRID) parameter on the restore operation.
The DFRID parameter is an optional parameter for the Restore Library (RSTLIB) CL command,
Restore Object (RSTOBJ) CL command, and Restore Object List (QSRRSTO) API. Currently,
the DFRID parameter is used to defer the restore of views (logical files) and materialized query
tables (MQTs) that are restored before they are being based on files. This enhancement
allows the Defer ID support to be used to defer starting journaling on an object.
To use explicitly this enhancement, the new Restore Deferred Objects (RSTDFROBJ) CL
command can be called directly by using the same Defer ID (DFRID) value that was used with
the RSTOBJ or RSTLIB CL commands.
162 IBM i 7.2 Technical Overview with Technology Refresh Updates
The following restore operations are configured to use the Defer ID support:
GO RESTORE option 21
Start Recovery by using the BRM (STRRCYBRM) CL command
For more information about deferred journal restore, see Deferred Journal Restore topic in
the IBM i Technology Updates website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Deferred%20Journal%20Restore
2.4.3 Secure remote journal
Starting in IBM i 7.2, remote journaling now acknowledges the secure connection field in a
Relational Database (RDB) Directory Entry panel (ADDRDBDIRE and CHGRDBDIRE CL
commands). Secure remote journaling uses the default TCP/IP port 3889 and the cipher that
is defined in Digital Certificate Manager under the application ID:
IBM i Remote Journaling Source (as application client)
IBM i Remote Journaling Target (as application server)
Note: To make secure remote journaling work, both the source and the target systems
must be at IBM i 7.2.
Depending on the cipher that is used under DCM, a performance impact and a remote entry
synchronization delay can occur.
For more information about secure remote journaling, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaq9/rzaq9osJRNrjsecureco
nnect.htm?lang=en
2.4.4 QJOSJRNE API change
The force journal entry key now accepts a new value of 2, which means that the journal
receiver is forced to auxiliary storage, but no journal entry is sent.
For more information about the Send Journal Entry (QJOSJRNE) API, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/QJOSJRNE.htm?lang=en
2.4.5 Journal conversion after an IBM i 7.2 installation
After IBM i 7.2 is installed or updated, a Change Journal (CHGJRN) CL command is issued
once for all journals on the system. This action supports a conversion, which is required for
internal information of the journal and journal receiver objects.
Chapter 2. Systems management 163
2.4.6 Journal limits changes
The following journal limits changes were implemented in IBM i 7.2:
The maximum number of journal receivers that are allowed in a range of receivers on a
journal command was increased from 1024 to 2045.
The maximum number of active commitment definitions with object-level changes that can
be processed concurrently by an APYJRNCHG or APYJRNCHGX CL command was increased
from 1023 to 32767 if commitment control if already active.
The maximum number of journal receivers that can be associated with one journal was
added and its value is 131036.
For more information about journal limits, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzamp/rzampjournal.htm?lan
g=en
2.4.7 New journal entry types
The following new journal entry types were added in IBM i 7.2:
D code new types (row and column access control):
– M1 for create mask
– M2 for drop mask
– M3 for alter mask
– P1 for create permission
– P2 for drop permission
– P3 for alter permission
T code new types (audit journal):
– X2 for query manager profile changes
– AX for row and column access control
– PF for PTF operations
– PU for PTF object changes
For more information about journal entry codes and types, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaki/rzakijournalfinderal
l2.htm?lang=en
2.4.8 Displaying journal information
This section describes the changes that were made in IBM i 7.2 to retrieve journal information
more easily.
164 IBM i 7.2 Technical Overview with Technology Refresh Updates
Journal information for a table on IBM Navigator for i
IBM Navigator for i has been extended with an option to display journal information for a table.
A new menu option that is called Journaling was added to the menu of the Tables window, as
shown in Figure 2-185.
Figure 2-185 Journaling information that is available for a particular table in the Tables window
Chapter 2. Systems management 165
The Journaling menu option opens a detailed journaling information window for the selected
table, as shown in Figure 2-186.
Figure 2-186 Detailed journaling information for a database table
You can now view journal entries by using IBM i Navigator for i. The Journals window was
enhanced with a new menu option called View Entries for a selected journal, as shown in
Figure 2-187.
Figure 2-187 New View Entries menu option in the Journals window
The View Entries menu option opens the Journal Viewer window, where you can filter and
present journal entries for the selected journal, as shown in Figure 2-188. Viewing
entry-specific data is also possible in from this window.
Figure 2-188 Journal Viewer window
166 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about displaying journal information for a table by using IBM Navigator
for i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaki/rzakidspjrni.htm?lan
g=en
Display_Journal table function
You can use the QSYS2/Display_Journal SQL table function to view journal entries. This
function is more efficient than displaying journal entries to an output file by using the Display
Journal (DSPJRN) CL command and then querying the resulting file.
For more information about the QSYS2/Display_Journal SQL table function, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqudfdisplayjourn
al.htm
2.4.9 Journal Sizing and Planning tool
The Journal Sizing and Planning tool is available for IBM i 7.2. This tool can be used to
determine the amount of additional I/O workload that might be generated by journaling one or
more database files.
Note: The Journal Sizing and Planning tool predicts workloads only for database files and
not for any other object types.
For more information about downloading and using the Journal Sizing and Planning tool,
search for Journal Sizing and Planning Tool at the following website:
http://www.ibm.com/systems/power/software/i/db2/support/code/journal-utilities.html
2.5 Work management enhancements
This section describes the following IBM i 7.2 work management enhancements:
2.5.1, “Temporary storage enhancements” on page 167
2.5.2, “PTF-related changes” on page 179
2.5.3, “IBM i command changes” on page 181
2.5.4, “API changes” on page 182
2.5.1 Temporary storage enhancements
Temporary storage in IBM i system, also called unprotected storage, is a place in the system
storage where programs, running under jobs and system functions, put objects that are
required during run time. It is used to keep automatic, static, heap, and teraspace storage for
programs, temporary objects that are created by programs either for a single job or reused
across multiple jobs, or working storage for the Licensed Internal Code (LIC) to support the
operating system. Temporary storage is reclaimed on each IPL.
Chapter 2. Systems management 167
IBM i 7.2 introduces significant temporary storage enhancements, which allows for accurate
temporary storage usage tracking system-wide and at a job level. The following sections
describe the new features that are related to temporary storage in IBM i 7.2:
“Storage management buckets” on page 168
“Controlling temporary storage” on page 170
“Temporary storage limits” on page 176
“Temporary storage enhancements within IBM Navigator for i” on page 179
“Collection Services enhancements” on page 179
Storage management buckets
Before IBM i 7.2, retrieving information about temporary storage that is used by the system or
a particular job was not easy and often required using multiple tools or IBM support. The
information might have been misleading or inaccurate, especially when the storage was
allocated by one job or task and then returned by another one.
In IBM i 7.2, storage management was changed to use new buckets to collect storage usage
information. The buckets track temporary storage for the following tasks:
Scoped to a single job
Scoped to multiple jobs
Scoped to the system
For LIC allocations (so-called “no charge”)
For allocations that persist after a job ends
The total value of all buckets should match to the Current temporary storage value on the
Work with System Status (WRKSYSSTS) panel.
Figure 2-191 on page 170 shows temporary storage in megabytes that is used by the system.
The SYSTMPSTG file in the QSYS2 library can be queried for the current size of all available
storage buckets on the system as shown in Example 2-2. Running an SQL query over this file
is a quick way to find the biggest temporary storage consumers during a problem
determination situation.
Example 2-2 Display the content of temporary storage buckets in the SYSTMPSTG file
SELECT * FROM QSYS2/SYSTMPSTG ORDER BY BUCKET_CURRENT_SIZE DESC
BUCKET_NUMBER GLOBAL_BUCKET_NAME JOB_NAME JOB_USER_NAME JOB_NUMBER BUCKET_CURRENT_SIZE
1 *MACHINE - - - 690,081,792
65,981 - ADMIN2 QLWISVR 001418 427,245,568
9 *DATABASE SQE Heap - - - 195,182,592
65,724 - ADMIN4 QWEBADMIN 001163 188,657,664
65,726 - ADMIN1 QLWISVR 001162 167,432,192
65,878 - ADMIN3 QLWISVR 001315 163,217,408
65,699 - QUSRDIR QDIRSRV 001136 155,234,304
65,572 - QTCPWRK QSYS 001014 151,543,808
65,683 - Q1ACPDST QBRMS 001120 129,605,632
65,641 - QYPSPFRCOL QSYS 001078 98,832,384
65,714 - QYPSJSVR QYPSJSVR 001151 91,832,320
65,537 - SCPF QSYS 000000 87,728,128
3 *PASE - - - 76,705,792
65,671 - QSRVMON QSYS 001108 64,876,544
65,543 - QDBSRV05 QSYS 000985 61,415,424
8 *DATABASE Segment Cache - - - 60,076,032
65,542 - QDBSRV04 QSYS 000984 58,044,416
168 IBM i 7.2 Technical Overview with Technology Refresh Updates
66,010 - QZRCSRVS QUSER 001447 54,501,376
4,096 *OS - - - 53,792,768
More...
The same information is now available through IBM Navigator for i by clicking System →
System Status, as shown in Figure 2-189.
Figure 2-189 Access temporary storage buckets information
Clicking Temporary Storage Details under the Disk Space tab of the System Status window
opens the Temporary Storage Details window, as shown in Figure 2-190.
Figure 2-190 Temporary Storage Details window
Chapter 2. Systems management 169
Controlling temporary storage
In IBM i 7.2, the following panels were changed or extended with temporary storage
information:
Work with System Status (WRKSYSSTS)
Work with Active Jobs (WRKACTJOB)
Display Job Run Attributes (DSPJOB)
Display Job Tables (DSPJOBTBL)
Work with System Status (WRKSYSSTS)
The Work with System Status panel was changed to new field names, as shown in Table 2-3.
Table 2-3 Field name changes on the Work with System Status panel
IBM i V7R1 and earlier IBM i V7R2
Current unprotect used Current temporary used
Maximum unprotect Peak temporary used
The Work with System Status panel is shown in Figure 2-191.
Work with System Status UT30P05
09/26/14 15:51:56
% CPU used . . . . . . . : 3.9 Auxiliary storage:
Elapsed time . . . . . . : 00:09:06 System ASP . . . . . . : 95.44 G
Jobs in system . . . . . : 492 % system ASP used . . : 40.3456
% perm addresses . . . . : .007 Total . . . . . . . . : 95.44 G
% temp addresses . . . . : .010 Current temporary used : 4259 M
Peak temporary used . : 4344 M
Type changes (if allowed), press Enter.
System Pool Reserved Max -----DB----- ---Non-DB---
Pool Size (M) Size (M) Active Fault Pages Fault Pages
1 471.41 222.58 +++++ .0 .0 .1 .1
2 3134.42 7.21 71 .0 .1 .0 .8
3 405.14 .00 102 .0 .0 .3 .6
4 40.51 .00 5 .0 .0 .0 .0
Bottom
Command
===>
F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Restart F12=Cancel
F19=Extended system status F24=More keys
Figure 2-191 System-wide temporary storage usage
170 IBM i 7.2 Technical Overview with Technology Refresh Updates
The Extended System Status panel (which you can access by pressing F19 from the
WRKSYSSTS panel) was extended with new fields that show the percentage of temporary
storage that is used and the limit, as shown in Figure 2-192.
For more information about temporary storage limits, see “Temporary storage limits” on
page 176.
Note: The % temporary storage used and % temporary storage limit fields on the
Extended System Status panel are visible only when the notification limit is set for system
ASP. For more information about temporary storage limits, see “Temporary storage limits”
on page 176.
Work with System Status UT30P05
..............................................................................
: Extended System Status UT30P05 :
: 09/26/14 16:56:39 :
: Elapsed time . . . . . . . . . . . . . . . : 01:13:49 :
: % CPU used . . . . . . . . . . . . . . . . : 4.6 :
: % uncapped CPU capacity used . . . . . . . : 1.1 :
: % temporary storage used . . . . . . . . . : 4.5 :
: % temporary storage limit . . . . . . . . . : 50 :
: :
: :
: :
: :
: Bottom :
: :
: F3=Exit F5=Refresh F10=Restart F12=Cancel :
: :
:............................................................................:
Bottom
Command
===>
F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Restart F12=Cancel
F19=Extended system status F24=More keys
Figure 2-192 Temporary storage information in the Extended System Status panel
Chapter 2. Systems management 171
Work with Active Jobs (WRKACTJOB)
The Work with Active Jobs (WRKACTJOB) panel was extended with temporary storage
information for every job, which you can use to sort jobs according to temporary storage that
is used for ease of control. Sorting can be done by using either the SEQ(*TMPSTG) parameter
with the WKRACTJOB CL command or by pressing F16 with the cursor on the Temporary
Storage column.
Figure 2-193 shows the temporary storage that is used by jobs in megabytes.
Work with Active Jobs UT30P05
09/26/14 17:38:37
CPU %: 4.1 Elapsed time: 04:10:31 Active jobs: 227
Type options, press Enter.
2=Change 3=Hold 4=End 5=Work with 6=Release 7=Display message
8=Work with spooled files 13=Disconnect ...
Temporary
Opt Subsystem/Job User Number Type CPU % Threads Storage
ADMIN2 QLWISVR 001418 BCI .2 93 405
ADMIN4 QWEBADMIN 001163 BCI .0 41 176
ADMIN1 QLWISVR 001162 BCI .0 34 157
QUSRDIR QDIRSRV 001136 BCH .0 12 148
QTCPWRK QSYS 001014 SYS .0 2 145
ADMIN3 QLWISVR 001315 BCI .0 33 141
QYPSJSVR QYPSJSVR 001151 BCH .0 39 87
SCPF QSYS 000000 SYS .0 1 84
QYPSPFRCOL QSYS 001078 BCH .0 30 79
More...
Parameters or command
===>
F3=Exit F5=Refresh F7=Find F10=Restart statistics F11=Display status
F12=Cancel F17=Top F18=Bottom F23=More options F24=More keys
Figure 2-193 Temporary storage information in the Work with Active Jobs panel
172 IBM i 7.2 Technical Overview with Technology Refresh Updates
The same information is now available through IBM Navigator for i by clicking Work
Management → Active Jobs, as shown in Figure 2-194.
Figure 2-194 Active Jobs window with temporary storage information for every job
Display Job Run Attributes (DSPJOB)
The Display Job Run Attributes (DSPJOB) panel was extended with the Peak temporary
storage used field, which shows the maximum temporary storage that is used by the job.
Figure 2-195 shows the peak temporary storage that is used by a job in megabytes.
Display Job Run Attributes
System: UT30P05
Job: QPADEV0002 User: WILKU Number: 002154
Run priority . . . . . . . . . . . . . . . . . . : 20
Time slice in milliseconds . . . . . . . . . . . : 2000
Eligible for purge . . . . . . . . . . . . . . . : *YES
Default wait time in seconds . . . . . . . . . . : 30
Maximum CPU time in milliseconds . . . . . . . . : *NOMAX
CPU time used . . . . . . . . . . . . . . . . . : 5
Maximum temporary storage in megabytes . . . . . : *NOMAX
Temporary storage used . . . . . . . . . . . . : 2
Peak temporary storage used . . . . . . . . . . : 2
Maximum threads . . . . . . . . . . . . . . . . . : *NOMAX
Threads . . . . . . . . . . . . . . . . . . . . : 1
Thread resources affinity:
Group . . . . . . . . . . . . . . . . . . . . . : *NOGROUP
Level . . . . . . . . . . . . . . . . . . . . . : *NORMAL
Resources affinity group . . . . . . . . . . . . : *NO
Press Enter to continue.
F3=Exit F5=Refresh F9=Change job F12=Cancel F16=Job menu
Figure 2-195 Peak temporary storage value on the Display Job Run Attributes panel
Chapter 2. Systems management 173
Display Job Tables (DSPJOBTBL)
The Display Job Tables (DSPJOBTBL) panel was extended with the Storage used value, which
represents temporary storage in megabytes for both active and available temporary job
structures.
Figure 2-196 shows the storage that is used in megabytes on the Display Job Tables panel.
Display Job Tables UT30P05
09/29/14 09:23:25
Permanent job structures: Temporary job structures:
Initial . . . . : 200 Initial . . . . : 200
Additional . . . : 30 Additional . . . : 30
Available . . . : 6 Available . . . : 21
Total . . . . . : 500 Storage used . . : 24.00 M
Maximum . . . . : 163520
---------------------Entries----------------------
Table Size Total Available In-use Other
1 529152 500 6 493 1
Bottom
Press Enter to continue.
F3=Exit F5=Refresh F11=In-use entries F12=Cancel
Figure 2-196 Temporary storage information in the Display Job Tables panel
174 IBM i 7.2 Technical Overview with Technology Refresh Updates
Message CPF1164
When a job ends, message CPF1164 is sent to QHST and the job’s job log. In IBM i 7.2, the
message was extended with the maximum temporary storage value for the job, as shown in
Figure 2-197.
Display Formatted Message Text
System: UT30P05
Message ID . . . . . . . . . : CPF1164
Message file . . . . . . . . : QCPFMSG
Library . . . . . . . . . : QSYS
Message . . . . : Job &3/&2/&1 ended on &14 at &15; &10 seconds used; end
code &8 &13.
Cause . . . . . : Job &3/&2/&1 completed on &14 at &15 after it used &10
seconds processing unit time. The maximum temporary storage used was &18
megabytes. The job had ending code &8. The job ended after &7 routing steps
with a secondary ending code of &9. The job ending codes and their meanings
are as follows:
0 - The job completed normally.
10 - The job completed normally during controlled ending or controlled
subsystem ending.
20 - The job exceeded end severity (ENDSEV job attribute).
30 - The job ended abnormally.
40 - The job ended before becoming active.
More...
Press Enter to continue.
F3=Exit F11=Display unformatted message text F12=Cancel
Figure 2-197 Maximum temporary storage information in a CPF1164 message
Chapter 2. Systems management 175
Temporary storage limits
As in previous releases, maximum temporary storage for a job can be controlled by the
MAXTMPSTG parameter in the class description (CRTCLS and CHGCLS CL commands). In IBM i
7.2, the same parameter was added to the Change Job (CHGJOB) CL command, allowing a
user to change that limit after the job starts.
To change the maximum temporary storage limit for a job to 20 MB, substituting NUMBER,
JOBUSER, and JOBNAME with proper values, run the following CL command:
CHGJOB JOB(NUMBER/JOBUSER/JOBNAME) MAXTMPSTG(20)
This parameter is especially useful with changed system behavior when a job reaches the
maximum temporary storage limit. IBM i 7.2 now holds the job, instead of ending it. You are
given the opportunity to examine the held job and decide whether it should be ended,
released, or investigated further. You can use the CHGJOB CL command to extend the
temporary storage limit and release the job for further execution.
When a job reaches the maximum temporary storage limit, a new CPI112E message is sent
to QHST and the job’s job log, as shown in Figure 2-198.
Display Formatted Message Text
System: UT30P05
Message ID . . . . . . . . . : CPI112E
Message file . . . . . . . . : QCPFMSG
Library . . . . . . . . . : QSYS
Message . . . . : Job &3/&2/&1 held by the system, MAXTMPSTG limit exceeded.
Cause . . . . . : The current routing step for job &3/&2/&1 specifies a
maximum temporary storage limit of &4 megabytes.
Recovery . . . :
If you want the job to continue, use the Change Job (CHGJOB) command to
specify a larger MAXTMPSTG value for the job and then use the Release Job
(RLSJOB) command.
If the application is in error, use the End Job (ENDJOB) command to end
the job.
To avoid this condition in the future, use the Change Class (CHGCLS)
command to specify a larger MAXTMPSTG value or use the Change Routing Entry
(CHGRTGE) command to specify a different class.
Bottom
Press Enter to continue.
F3=Exit F11=Display unformatted message text F12=Cancel
Figure 2-198 Message text for CPI112E
176 IBM i 7.2 Technical Overview with Technology Refresh Updates
Control Temporary Storage API
IBM i 7.2 introduces a new Control Temporary Storage (QWCCTLTS) API. You can use this
API to do the following tasks:
Set the temporary storage notification threshold for system ASP as a percentage of the
total system ASP.
Set the temporary storage notification threshold for a specific storage bucket in megabytes
or gigabytes.
Reset a previously set threshold.
Display a current threshold value.
Exceeding the threshold for system ASP triggers a new CPF090A message, as shown in
Figure 2-199.
Display Formatted Message Text
System: UT30P05
Message ID . . . . . . . . . : CPF090A
Message file . . . . . . . . : QCPFMSG
Library . . . . . . . . . : QSYS
Message . . . . : Temporary storage threshold reached.
Cause . . . . . : The amount of storage used for temporary objects in the
system ASP is &4 percent. This is a serious system condition. The temporary
storage used is &6 &5 (&1 bytes). The storage available is &7 &5 (&2 bytes).
This message will be repeated until the amount of storage used is reduced to
less than &3 percent.
Recovery . . . : Use the WRKSYSSTS command to monitor storage used. To
reduce the amount of temporary storage, use the Work with Active Jobs
command (WRKACTJOB SEQ(*TMPSTG)) to find jobs that are consuming large
amounts of storage. Storage used by a job can be released by ending the job
(ENDJOB). Holding a job (HLDJOB) will stop a job from consuming more
storage.
Bottom
Press Enter to continue.
F3=Exit F11=Display unformatted message text F12=Cancel
Figure 2-199 CPF090A message that is triggered when the ASP temporary storage threshold is
reached
Chapter 2. Systems management 177
Exceeding the threshold for one of the buckets triggers a new CPI11AB message, as shown
in Figure 2-200.
Note: Threshold notification messages are sent once per hour while the threshold is
exceeded.
Display Formatted Message Text
System: UT30P05
Message ID . . . . . . . . . : CPI11AB
Message file . . . . . . . . : QCPFMSG
Library . . . . . . . . . : QSYS
Message . . . . : Storage limit reached for temporary storage bucket &1.
Cause . . . . . : The amount of auxiliary storage used for temporary storage
bucket &1 has reached &2 &4 which is &5 percent of all disk storage in the
system auxiliary storage pool. The limit is &3 &4 (&6 percent).
Recovery . . . : You can run the STRSQL command to start the interactive
SQL program and then run SQL statement SELECT * FROM QSYS2.SYSTMPSTG to see
the amount of temporary storage for &1 and the other temporary storage
buckets on the system. &7
Technical description . . . . . . . . : Use the Control Temporary Storage
(QWCCTLTS) API to change the storage limit for the temporary storage bucket.
Bottom
Press Enter to continue.
F3=Exit F11=Display unformatted message text F12=Cancel
Figure 2-200 CPI11AB message when the temporary storage bucket threshold is reached
Here are usage examples for the QWCCTLTS API showing how to set, reset, and display
threshold notifications limits for temporary storage:
Set a temporary storage notification threshold for system ASP to 40% of the size by
running the following CL command:
CALL QWCCTLTS PARM(*SETLMTPCT *ALL 40)
Set the temporary storage notification threshold to 50 GB for Save/Restore storage bucket
(category) by running the following CL command:
CALL QWCCTLTS PARM(*SETLMTG *SR 50)
Remove the temporary storage notification limit system-wide by running the following CL
command:
CALL QWCCTLTS PARM(*SETLMTPCT *ALL 0)
Display the temporary storage notification threshold by running the following CL
command:
CALL QWCCTLTS PARM(*DSPLMT *ALL)
For more information about the QWCCTLTS API and temporary storage categories, search
for QWCCTLTS in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/ic-homepage.htm
178 IBM i 7.2 Technical Overview with Technology Refresh Updates
Temporary storage enhancements within IBM Navigator for i
IBM i 7.2 introduces significant enhancements to temporary storage in IBM Navigator for i.
For more information, see “Work with Active Jobs (WRKACTJOB)” on page 172.
Collection Services enhancements
New fields were added to the job level (QAPMJOBMI) and system level (QAPMSYSTEM)
performance data files to keep temporary storage information on a job and system level.
For more information about the collection services file description, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahx/rzahxcatfilerelation
.htm?lang=en
2.5.2 PTF-related changes
This section describes the following IBM i 7.2 PTF-related changes:
“Conditional immediate PTFs” on page 179
“Display PTF Apply Information (DSPPTFAPYI) CL command” on page 181
Conditional immediate PTFs
In IBM i 7.2, there is now something called conditional immediate PTFs.
PTFs are identified with a type of either delayed or immediate. A delayed PTF must be
applied or removed during IPL. An immediate PTF can be applied or removed either while the
system is active or during IPL.
Before IBM i 7.2, when a new PTF superseded a delayed PTF, the new PTF was required to
be delayed even if only immediate parts or objects are being changed or added. Within IBM i
7.2, you can now have superseded PTFs immediately applied when only immediate parts or
objects are being changed. When the PTF is applied or removed, PTF management
determines whether the PTF can be applied or removed immediately or not, depending on
whether the most recent delayed superseded PTFs are permanently applied.
Chapter 2. Systems management 179
The Display Program Temporary Fix (DSPPTF) CL command adds an option 12 (Delayed
superseded PTFs) to the Display PTF Details panel for delayed superseded PTFs, as shown
in Figure 2-201.
Display PTF Details
Product ID/PTF ID . . . . . . . . . : 5770SS1 SI53649
Release . . . . . . . . . . . . . . : V7R2M0
Select one of the following:
1. General information
4. Superseded PTFs
6. PTF Objects
7. Symptom strings
9. APARs fixed
12. Delayed superseded PTFs
More...
Selection
F3=Exit F12=Cancel
Figure 2-201 Display PTF panel
When option 12 is selected, a new Display Delayed Superseded PTFs panel opens and lists
the delayed superseded PTFs for the conditional immediate PTF, as shown in Figure 2-202.
Display Delayed Superseded PTFs
Product ID/PTF ID . . . . . . . . . : 5770SS1 SI53649
Release . . . . . . . . . . . . . . : V7R2M0
PTF ID PTF ID
SI52813
Bottom
Press Enter to continue
F3=Exit F12=Cancel
Figure 2-202 Display Delayed Superseded PTFs
The QPZRTVFX API supports a new format PTFR1100 to return the list of delayed
superseded PTF IDs for a conditional immediate PTF.
For OUTPUT(*PRINT), the new delayed superseded PTFs section was added to the spool file.
180 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: A conditional immediate PTF is not identified by a new type (immediate or delayed),
but rather by the presence of the new delayed superseded PTFs list. This new list is used
at apply and remove time to determine whether the PTF can be applied or removed
immediately or if the operation must be delayed. This is consistent with immediate PTFs
that specify delayed prerequisite PTFs. If the delayed prerequisite PTFs have a status of
temporarily or permanently applied, the dependent PTF can be applied immediately.
Otherwise, the dependent PTF is set for delayed apply. Also, if an immediate PTF has
preconditions that are not satisfied, the PTF is set for delayed apply.
Display PTF Apply Information (DSPPTFAPYI) CL command
The Display PTF Apply Information (DSPPTFAPYI) CL command indicates whether the selected
PTFs can be applied immediately from *SERVICE. All selected PTFs and their prerequisite
PTFs that are not applied are displayed. If a PTF has a status of Superseded, the PTF it is
superseded by is displayed in place of the superseded PTF.
Each PTF that is displayed has the Apply Type field set to one of the following statuses:
*IMMED: The PTF can be applied immediately. For Licensed Internal Code (LIC) PTFs, the
PTF installation must be done from the ##MACH#B IPL source.
*DELAYED: The PTF requires an IPL to apply because it has a PTF type of delayed.
*PRECND: The PTF can be applied immediately if all of its preconditions are met.
*ACTRQD: The PTF has an action that is required if the selected PTFs are installed.
*DLYSPR: The immediate PTF requires an IPL to apply because it supersedes a delayed
PTF that is not temporarily or permanently applied.
*REQIPLRQD: The PTF has a prerequisite PTF that requires an IPL to apply.
*REQPRECND: The PTF has a prerequisite PTF that has a precondition.
The selected PTFs and prerequisite PTFs that will be installed must exist in *SERVICE. Save
files must exist for the selected PTFs that have not been loaded. The specified PTF group
must exist on the system along with its PTFs and prerequisite PTFs that are not yet installed.
If the PTFs and PTF groups are on physical media or in an image catalog, use one of the
following methods to copy the PTF save files and PTF groups into *SERVICE before running
this command:
Use the QPZCPYSV API to copy the PTF save files and PTF groups into *SERVICE.
Use the Copy PTF (CPYPTF) CL command to copy the PTF save files from media into
*SERVICE. Use the Copy PTF Group (CPYPTFGRP) CL command to copy the PTF groups into
*SERVICE.
Note: This command is shipped with exclude (*EXCLUDE) public authority, and the QPGMR,
QSYSOPR, QSRV, and QSRVBAS user profiles are shipped with private authorities to use
this command.
2.5.3 IBM i command changes
This section describes changes that are made to the following IBM i 7.2 commands:
“Create Image Catalog (CRTIMGCLG) CL command” on page 182
“Other command changes” on page 182
Chapter 2. Systems management 181
Create Image Catalog (CRTIMGCLG) CL command
The Create Image Catalog (CRTIMGCLG) CL command can now add all .ISO and .BIN image
files from the image catalog directory to the image catalog as virtual volumes.
To do this task, use the *DIR value for the ADDVRTVOL parameter and *ALL for the IMGTYPE
parameter. Other options for the IBMTYPE parameter include the following ones:
*BIN for all binary images
*ISO for all ISO images
For more information about the Create Image Catalog (CRTIMGCLG) CL command, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/crtimgclg.htm?lang=en
Other command changes
For information about changes to other IBM i commands, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgmtu.htm
2.5.4 API changes
For a detailed description of IBM i 7.2 API changes, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgmtu.htm
2.6 Operating system limitation changes
Various system limitations were changed in IBM i 7.2. Exceeding system limits can cause
application or system outages. Be aware of these limitations during system planning,
configuration, and application design.
For more information about current system capacities, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzamp/rzampoverview.htm
2.7 IBM Advanced Job Scheduler for i
IBM i 7.2 provides several enhancements of IBM Advanced Job Scheduler for i, especially for
integration with IBM Navigator for i. The enhancements in IBM Navigator for i that are related
to IBM Advanced Job Scheduler for i include the following ones:
Support for configuring application/job controls, library lists, command variables,
permissions, data libraries, and calendars in the Advanced Job Scheduler properties.
Work Flow Manager added for workflow management.
2.7.1 Advanced Job Scheduler properties
In IBM 7.2, IBM Navigator for i provides more configurations in the Advanced Job Scheduler
properties.
To access the Advanced Job Scheduler properties from IBM Navigator for i, click Work
Management → All Tasks → Advanced Job Scheduler → Properties.
182 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: For more information about accessing IBM Navigator for i, see 2.1, “IBM Navigator
for i” on page 14.
As shown in Figure 2-203, there are several new tabs that are now available in IBM Navigator
for i that are related to Advanced Job Scheduler:
“Job Controls/Applications” on page 184
“Library Lists” on page 185
“Command Variables” on page 186
“Permissions” on page 187
“Data libraries” on page 188
“Calendars” on page 189
Figure 2-203 Advanced Job Scheduler Properties in IBM Navigator for i
Chapter 2. Systems management 183
Job Controls/Applications
Applications are jobs that are grouped for processing. Job controls are the defaults that are
assigned to a job when you add it to the job scheduler. Job control defaults include such
things as default application, calendar, and holiday calendar. Each application contains job
control information. The application that is specified in the definition of a job is used to
determine the job controls that are used by the job when the job is submitted. If the job does
not contain an application, the job uses the job controls in the system default.
Figure 2-204 shows the Job Controls/Applications tab in the Advanced Job Scheduler
Properties. You can create, delete, and modify the job control on this page.
Figure 2-204 Job Controls/Applications page in the Advanced Job Scheduler properties
184 IBM i 7.2 Technical Overview with Technology Refresh Updates
Library Lists
Library Lists (Figure 2-205) contains user-defined lists of libraries that are used by an
Advanced Job Scheduler job when it is processing. From this window, you can add a library
list, add a library list based on an existing one, or remove a library list, if it is not being used by
a scheduled job. You can also select a list and display its properties to make changes.
Figure 2-205 Library Lists window in the Advanced Job Scheduler properties
Chapter 2. Systems management 185
Command Variables
As shown in Figure 2-206, you can use the Command Variables window in Advanced Job
Scheduler Properties to display all the existing command variables on the system. Command
variables are variables that can be stored in Advanced Job Scheduler and used in jobs that
are submitted through Advanced Job Scheduler. Examples of command variables include the
beginning of each month, a division number, a company number, and so on. From this page,
you can add variables, add variables based on existing ones, and remove or modify them.
Figure 2-206 Command Variables window in the Advanced Job Scheduler properties
186 IBM i 7.2 Technical Overview with Technology Refresh Updates
Permissions
You can use the Permissions window to add or modify permissions for functions.
Figure 2-207 shows the Permission window with various default functions whose authorities
can be changed for the Advanced Job Scheduler. The name of the function and a description
is shown. If your user profile has the proper authority, you can add, remove, or edit the
authorities for functions. If not, you can still view the function authority properties, but cannot
change them.
Figure 2-207 Permissions window in the Advanced Job Scheduler properties
Chapter 2. Systems management 187
Data libraries
The data libraries in IBM Navigator for i are enhanced with several new parameters that you
can use to specify easily new data library parameters that are used for the Advanced Job
Scheduler. The new parameters are Initial ASP group and ASP device, as shown in
Figure 2-208.
You can use these enhancements to specify the initial ASP group and ASP device where your
library is.
Figure 2-208 New Data Library enhanced parameters
188 IBM i 7.2 Technical Overview with Technology Refresh Updates
Calendars
In addition to holiday calendar access in IBM Navigator for i in previous releases, you can use
IBM Navigator for i V7.2 to also access the fiscal calendar from the web. A fiscal calendar is a
calendar of selected days that can be used by users for scheduling a job or a job group. Users
can configure their start and end dates for each period in the fiscal year on this web page.
Figure 2-209 shows the Fiscal Calendars page in Advanced Job Scheduler Properties.
Figure 2-209 Fiscal Calendars page in the Advance Job Scheduler properties
2.7.2 Work Flow Manager
Scheduling a job in IBM Advanced Job Scheduler for i is more enhanced in IBM i 7.2 because
IBM Navigator for i now provides a feature that you can use to specify a predecessor and
successor of each Advanced Job Scheduler job. This feature is called Work Flow Manager.
In Work Flow Manager, you can define units of work that consist of automated or manual
steps that can then be scheduled or run interactively.
Each step within the work flow can have one or more predecessor Advanced Job Scheduler
jobs and one or more successor Advanced Job Scheduler jobs. When a work flow starts, the
first step is flagged to run. When it completes, the next step is flagged to run.
There are several considerations when you use Work Flow Manager:
You can manually start a work flow at any step. When you do so, you bypass all previous
steps in the work flow.
Automatic steps complete after all prior steps complete, which includes all predecessor
Advanced Job Scheduler jobs.
After a step completes, the successor Advanced Job Scheduler jobs are flagged to run.
Manual steps can complete in any sequence after the step’s predecessor jobs complete.
Chapter 2. Systems management 189
You can mark completed manual steps as not complete and run them again after there are
no subsequent incomplete automatic steps.
You can cause a step to wait until the job completes by specifying predecessor jobs that
are the same as the successor jobs of the previous step.
You can notify other users when a particular step starts, stops, did not start by a specific
time, or is taking too long. For example, you can notify a user who is responsible for a
particular manual step that the previous automated steps complete.
Figure 2-210 shows the Work Flow Manager page in IBM Navigator for i. It displays all the
existing work flows in the system.
To display the Work Flow Manager, click Work Management → All Tasks → Advanced Job
Scheduler → Work Flow Manager → Work Flow Manager.
Figure 2-210 Work Flow Manager in IBM Navigator for i
For more information about how to create and manage work flow by using the Work Flow
Manager in IBM Advanced Job Scheduler for i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasn/rzasnajsworkflowabou
t.htm?lang=en
For more information about IBM Advanced Job Scheduler for i, see IBM i 7.1 Technical
Overview with Technology Refresh Updates, SG24-7858 and IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasn/rzasnajsmanage.htm?c
p=ssw_ibm_i_72%2F17-8-3-4-1&lang=en
190 IBM i 7.2 Technical Overview with Technology Refresh Updates
2.8 Performance
IBM i 7.2 provides some enhancements to performance that you can use to monitor and
manage system performance easily and to ensure that you are keeping pace with the
changing business demands.
This section describes the following IBM i 7.2 performance-related enhancements:
2.8.1, “Collection Services” on page 191
2.8.2, “Job Watcher metrics” on page 194
2.8.1 Collection Services
Here are the Collection Services enhancements in IBM i 7.2 that are related to Collection
Services data files:
“Collection Services metrics” on page 191
“Enhanced database files to support IBM Navigator for i” on page 192
Collection Services metrics
Table 2-4 shows the changed files that are related to the Collection Services enhancements.
Table 2-4 Changed files for Collection Services enhancements
Changed files Collection Services enhancements
QAPMJOBOS Number of spool files that are created by a job
Number of jobs that are submitted or created by a job
Job level activity metrics plus connection data for server jobs
QAPMJOBMI Activation group metrics per thread: Groups created and PGM / SRVPGM
activation created
Temporary storage metrics per job: Allocated, deallocated, maximum
allowed, peak, and current
QAPMSYSTEM Temporary storage metrics for the system: OS, active jobs, and ended jobs
System level SQL CPU time
QAPMPOOLB Memory usage metric enhancement to include many new metrics along with
separately reporting metrics for 4-K versus 46-K page sizes.
QAPMDISK RAID 10 support: New field to indicate the level of mirrored protection
SSDs: New DSCAT value to identify a unit as an SSD
Log Sense command: New fields for counts and response times
QAPMETHP SR-IOV Ethernet physical ports: New file for physical Ethernet ports of an SR-IOV
adapter. (This feature is also available with IBM i 7.1 TR 8 and PTF SI47870.)
QITAMON WRKSYSACT replaced DB CPU with SQL CPU.
QAPMSQLPC SQL plan cache collection category (*SQL) and file (QAPMSQLPC).
To support the POWER8 Instruction Count and Virtual Time Base, new metrics such as
QAPMJOBMI, QAPMSYSTEM, QAPMLPARJH, and QAPMSYSVP also were improved to track thread level,
system level, partition level, and processor level.
Chapter 2. Systems management 191
Enhanced database files to support IBM Navigator for i
To support the performance functions in IBM Navigator for i, several new files in Collection
Services are enhanced to summarize those collected data. Here are the new system monitor
files:
QAPMSMCMN
This database file contains summarized metrics from communication protocol data
(*CMNBASE collection category) that can be used in support of system monitoring.
QAPMSMDSK
This database file contains summarized metrics from disk data (*DISK collection category)
that can be used in support of system monitoring.
QAPMSMJMI
This database file contains summarized metrics from job data (*JOBMI collection category)
that can be used in support of system monitoring.
QAPMSMJOS
This database file contains summarized metrics from job data (*JOBOS collection category)
that can be used in support of system monitoring.
QAPMSMPOL
This database file contains summarized metrics from pool data (*POOL collection category)
that can be used in support of system monitoring.
QAPMSMSYS
This database file contains summarized metrics from system data (*SYSLVL collection
category) that can be used in support of system monitoring.
192 IBM i 7.2 Technical Overview with Technology Refresh Updates
To produce the above files, the Create Performance Data (CRTPFRDTA) CL command exports
the data when the Create standard summary data (CRTPFRSUM) parameter is set to *SYSMON or
*ALL, as shown in Figure 2-211.
Even without running monitors, you can still create these files to view system monitoring
perspectives within PDI.
For more information about performance data files, see the Collection Services data files
topic in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahx/rzahxperfdatafiles1.
htm?lang=en
Create Performance Data (CRTPFRDTA)
Type choices, press Enter.
From collection . . . . . . . . > Q123456789 Name, *ACTIVE, *SELECT
Library . . . . . . . . . . . QPFRDATA Name
To member . . . . . . . . . . . *FROMMGTCOL Name, *FROMMGTCOL
To library . . . . . . . . . . . *FROMMGTCOL Name, *FROMMGTCOL
Text 'description' . . . . . . . *SAME
Categories to process . . . . . *FROMMGTCOL Name, *FROMMGTCOL, *APPN...
+ for more values
Time interval (in minutes) . . . *FROMMGTCOL *FROMMGTCOL, 0.25, 0.5, 1...
Create standard summary data . . > *SYSMON *NONE, *ALL, *PFRSUM, *SYSMON
Starting date and time:
Starting date . . . . . . . . *FROMMGTCOL Date, *FROMMGTCOL
Starting time . . . . . . . . Time
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 2-211 CRTPFRSUM parameter of the CRTPFRDTA CL command
Chapter 2. Systems management 193
2.8.2 Job Watcher metrics
Some of the database files for performance are also enhanced in IBM i 7.2. Table 2-5 shows
the list of changed files for supporting Job Watcher enhancements.
Table 2-5 Changed files for Job Watcher enhancements
Changed files Job Watcher enhancements
QAPYJWTDE SQL metrics:
QAPYJWPRC – I/O counts for database, non-database, and logical
– Clock time
– Statements
– Thread scaled and unscaled CPU
Miscellaneous information:
– Number of spooled files created
– Number of jobs submitted
– Number of job instructions changed
– Wait object library
QAPYJWTDE POWER8 Instruction Count and Virtual Time Base
QAPYJWPRC Support for temporary storage in Job Watcher collection
Support for memory usage
194 IBM i 7.2 Technical Overview with Technology Refresh Updates
3
Chapter 3. Cloud and virtualization
Many improvements and enhancements have been implemented since the first logical
partition was allowed in the IBM i family of servers. This chapter describes the virtualization
options that are available in IBM i 7.2 running on IBM Power Systems. Additionally, with the
industry-wide push for “the cloud,” this chapter covers topics that are available to help
implement and manage IBM i in a cloud environment.
This chapter describes the following topics:
3.1, “Cloud and IBM i” on page 196
3.2, “IBM Power Virtualization Performance for Power Systems” on page 202
3.3, “IBM i virtualization enhancements” on page 204
3.4, “Live Partition Mobility” on page 207
3.5, “Licensing and service provider accommodations” on page 208
For more information about the IBM i 7.2 virtualization enhancements, see the IBM i
Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 195
3.1 Cloud and IBM i
Although the current cloud enhancements on IBM i are not strictly related to the IBM i 7.2, this
section describes the following most recent cloud capabilities and offerings regarding IBM i:
3.1.1, “IBM PowerVM” on page 196
3.1.2, “OpenStack” on page 197
3.1.3, “IBM Power Virtualization Center” on page 197
3.1.4, “IBM SmartCloud Entry for Power Systems” on page 199
3.1.5, “IBM Cloud Manager with OpenStack” on page 199
3.1.6, “IBM Power Systems Solution Edition for Cloud” on page 200
3.1.7, “IBM i cloud offering summary” on page 201
3.1.8, “VMware vRealize Automation for Power” on page 201
All available options provide IBM i as an Infrastructure as a Service (IaaS) cloud model where
IBM i partitions are infrastructure services. No cloud management, provisioning, and
automation software are supported natively on the IBM i operating system. However, the IBM
i operating system is a supported operating system on virtual machines (VMs) that can be
managed by the software products that are described in this section.
IBM i has been a cloud-ready server platform for years because of its hypervisor-managed
logical partitions and robust virtualization capabilities. When using the cloud management
software that is described in this section, it has been a fully cloud-enabled platform since
2012.
Note: To use the cloud capabilities on Power Systems, the environment that hosts the VMs
must be fully virtualized with VIOS.
3.1.1 IBM PowerVM
IBM PowerVM® provides a secure and scalable server virtualization environment for AIX,
IBM i, and Linux applications that are built on the advanced reliability, availability, and
serviceability (RAS) features and leading performance of the Power platform.
PowerVM is a building block for all current IBM cloud on Power Systems solutions.
Here are some key features of PowerVM:
Deliver services with superior economics by consolidating virtualized workloads.
Deliver services that are built for the cloud faster by automating the deployment of VMs
and storage.
Optimize the usage of server and storage resources to control cost and boost return on
investment (ROI).
Scale out or scale up virtualized deployments without paying underlying performance
penalties.
Eliminate scheduled downtime by deploying live mobility between servers.
Deliver higher-quality services by improving virtual resource management.
For more information about PowerVM, see the Server virtualization with IBM PowerVM
website:
http://www.ibm.com/systems/power/software/virtualization/index.html
196 IBM i 7.2 Technical Overview with Technology Refresh Updates
3.1.2 OpenStack
OpenStack provides open source software for creating and managing private and public
cloud environments.
OpenStack is a global collaboration of developers and cloud-computing technologists working
to produce a ubiquitous IaaS open source cloud computing platform for public and private
clouds. The OpenStack software provides tools and standards that are required to manage
the storage, processor, and network resources that compose a cloud solution. IBM, among
other entities, has been a key player in developing the OpenStack software.
OpenStack is a building block for IBM PowerVC software and other cloud solutions that are
described in the following sections of this publication.
For more information about OpenStack, see the OpenStack website:
http://www.openstack.org/
3.1.3 IBM Power Virtualization Center
IBM Power Virtualization Center (PowerVC) is an advanced virtualization management
offering that is built on OpenStack (see 3.1.2, “OpenStack” on page 197) and provides
simplified virtualization management for IBM AIX, IBM i, and Linux VMs running on Power
Systems.
PowerVC is designed to improve administrator productivity and simplify the management of
VMs and LPARs on Power Systems servers. PowerVC provides the foundation for Power
Systems scalable cloud management, including integration with higher-level cloud managers
that are based on OpenStack technology.
After registering resources in PowerVC, the following capabilities are available:
Creating VMs by deploying images and then resizing and attaching volumes to them.
Importing existing VMs and volumes so they can be managed by PowerVC.
Monitoring the utilization of the resources that are used in the environment.
Migrating VMs while they are running Live Partition Mobility (LPM). For more information
about LPM, see 3.4, “Live Partition Mobility” on page 207.
Capturing a VM that is configured for later deployment elsewhere in the environment.
Deploying images quickly to create VMs in response to changing business needs.
Automatically deploying or migrating VMs based on the specified criteria.
PowerVC is a building block for the IBM SmartCloud® Entry for Power Systems cloud
solution. For more information, see 3.1.4, “IBM SmartCloud Entry for Power Systems” on
page 199.
PowerVC V1.3.0
At the time of writing, the latest version of PowerVC is Version 1.3.0. Power VC Version 1.3.0
supports the following IBM i versions as guest operating systems:
IBM i V7.2 TR1 or later
IBM i V7.1 TR8 or later
Chapter 3. Cloud and virtualization 197
For more information about the PowerVC Lifecycle, see the following website:
http://www.ibm.com/common/ssi/cgi-bin/ssialias?subtype=WH&infotype=SA&htmlfid=POW0
3150USEN&attachment=POW03150USEN.PDF
What is new in PowerVC for IBM i
PowerVC V1.2.2 contains the following new functions for IBM i:
PowerVC officially supports IBM i as a client.
Support for connecting IBM System Storage® SAN Volume Controller to IBM i through
VSCSI.
Support for connecting IBM XIV® Storage System to IBM i through VSCSI.
PowerVC V1.2.3 contains the following new functions for IBM i:
Supports capturing multiple volumes that are attached to an IBM i VM, resulting in a single
deployable image. Also, an IBM i image that is composed of more than one volume can be
deployed as a new VM.
Remote restart is introduced for IBM i. You can use PowerVC to restart remotely VMs from
a failed host to another healthy host.
Support for connecting an EMC Symmetrix VMAX storage system to IBM i through
VSCSI.
Support for connecting an EMC VNX storage system to IBM i through VSCSI.
SAN Volume Controller mirroring support allows a customer to create a local mirror in a
second pool on the same SAN Volume Controller or Storwize controller, which can provide
a degree of disaster recovery.
Redundant HMC support for PowerVC allows customers to switch to the redundant HMC
in case of an HMC failure or upgrade.
Support for PowerVM Multiple Shared Processor Pools is provided in PowerVC 1.2.3 FP2.
This support allows you to share a group of processors between multiple VMs. This
feature is supported during VM deployment, resize, and migration.
PowerVC V1.3.0 contains the following new functions for IBM i:
A new Dynamic Resource Optimizer (DRO) component that uses policy-based control to
automatically move workloads to available resources by using VM migration.
PowerVC storage connectivity groups contain the following new enhancements:
– Support for new Fabrics section. This support allows you to control how much fabric
redundancy is required in your environment.
– Connect to up to 26 fabrics.
– Specify how many ports to connect per fabric on each VIOS.
Support for connecting IBM System Storage DS8000 to IBM i through VSCSI. NPIV
support for DS8000 with IBM i will be provided in a future release.
For more information about new enhancements of PowerVC, see the following websites:
What’s new in Version 1.2.2:
http://www.ibm.com/support/knowledgecenter/SSXK2N_1.2.2/com.ibm.powervc.standar
d.help.doc/powervc_whats_new_hmc.html?lang=en
What’s new in Version 1.2.3:
http://www.ibm.com/support/knowledgecenter/SSXK2N_1.2.3/com.ibm.powervc.standar
d.help.doc/powervc_whats_new_hmc.html?lang=en
198 IBM i 7.2 Technical Overview with Technology Refresh Updates
What’s new in Version 1.3.0:
http://www.ibm.com/support/knowledgecenter/en/SSXK2N_1.3.0/com.ibm.powervc.stan
dard.help.doc/powervc_whats_new_hmc.html
For detailed hardware and software requirements for PowerVC, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/SSXK2N_1.2.3/com.ibm.powervc.kvm.help.d
oc/powervc_hwandsw_reqs_kvm.html
Note: PowerVC is meant to replace IBM Systems Director VMControl™. There is no
migration support of an IBM Systems Director VMControl installation to the new PowerVC
configuration.
For more information about PowerVC, see the IBM PowerVC - Virtualization Center websites:
http://www.ibm.com/systems/power/software/virtualization-management/index.html
3.1.4 IBM SmartCloud Entry for Power Systems
IBM SmartCloud Entry for Power Systems has evolved to become IBM Cloud Manager with
OpenStack, which is described in 3.1.5, “IBM Cloud Manager with OpenStack” on page 199.
Documentation for IBM SmartCloud Entry was merged with documentation for IBM Cloud
Manager with OpenStack, and is available on the IBM Cloud Manager with OpenStack wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W21ed5ba0f4
a9_46f4_9626_24cbbb86fbb9/page/Documentation
For more information about IBM SmartCloud Entry for Power Systems, see the IBM Cloud
Manager with OpenStack for Power Systems website:
http://www.ibm.com/systems/power/solutions/cloud/smartcloudentry/
3.1.5 IBM Cloud Manager with OpenStack
IBM Cloud Manager with OpenStack is a robust IaaS software offering that simplifies
management of a virtualized environment that is driven by the IBM SmartCloud Entry
product.
IBM Cloud Manager with OpenStack helps convert virtualized environments to a cloud quickly
and easily. Users can request and provision an environment quickly through an easy-to-use
web-based interface. IT managers can monitor and manage this environment for improved
efficiency and utilization of data center resources.
IBM Cloud Manager with OpenStack includes heterogeneous server architecture support
from a single user interface. You have the flexibility to manage the following platforms with a
single, consolidated image of IBM Cloud Manager with OpenStack software:
IBM Power System
System x
IBM BladeCenter
IBM NeXtScale System
IBM Flex System®
PureFlex System
IBM Cloud Manager with OpenStack supports multiple virtualization environments, including
VMware, Hyper-V, and KVM, and IBM PowerVM and IBM z/VM® environments.
Chapter 3. Cloud and virtualization 199
Here are some of the capabilities of IBM Cloud Manager with OpenStack:
Managing images:
– Easily create “golden master” images and software appliances by using
corporate-standard operating systems.
– Convert images from physical systems or between various x86 hypervisors.
– Reliably track images to ensure compliance and minimize security risks.
– Optimize resources, reducing the number of virtualized images and the storage that is
required for them.
Deploying VMs:
– Deploy application images across compute and storage resources.
– User self-service for improved responsiveness.
– Enable security through VM isolation and project-level user access controls.
– Easy to use, with no need to know all the details of the infrastructure.
– Investment protection from full support of existing virtualized environments.
Operating a cloud:
– Delegate provisioning to authorized users to improve productivity.
– Maintain full oversight to ensure an optimally running and safe cloud through
automated approval/rejection.
– A built-in workload metering delivers the foundation for a pay-per-use model.
– Standardize deployment and configuration to improve compliance and reduce errors by
setting policies, defaults, and templates.
– Simplify administration with an intuitive interface for managing projects, users,
workloads, resources, billing, approvals, and metering.
– Integrated platform management allows easy transition between physical or virtual
resource views to facilitate diagnosis and maintenance.
– Manage automated approvals, metering, billing, users, and projects from a single
pane.
The current available version is IBM Cloud Manager with OpenStack Version 4.3.
For detailed hardware and software requirements for IBM Cloud Manager with OpenStack,
see the IBM Cloud Manager with OpenStack wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W21ed5ba0f4
a9_46f4_9626_24cbbb86fbb9/page/Documentation
For more information about IBM Cloud Manager with OpenStack, see the IBM Cloud
Manager with OpenStack website:
http://www.ibm.com/systems/power/solutions/cloud/smartcloudentry/
3.1.6 IBM Power Systems Solution Edition for Cloud
IBM Power Systems Solution Edition for Cloud is a pre-built and preinstalled solution of
hardware, software, and implementation services for private cloud implementations.
200 IBM i 7.2 Technical Overview with Technology Refresh Updates
IBM Power Systems Solution Edition for Cloud helps speed up and simplify the deployment of
a cloud with OpenStack based cloud management software that is delivered on a
ready-to-use appliance.
The Solution Edition is easy to order, and includes configurable hardware choices to address
a customer’s needs and preferences. Building on PowerVM virtualization and PowerVC
management, the IBM Power Systems Solution Edition for Cloud provides cloud capabilities
based on a flexible and extensible OpenStack platform with fast and automated installation,
an intuitive and easy-to-use interface, automated deployment, image management, workload
metering, and the self-service features of cloud.
For more information about IBM Power Systems Solution Edition for Cloud, see the IBM
Power System Solution Edition for Cloud website:
http://www.ibm.com/systems/power/hardware/solutioneditions/cloud/
For more information about IBM Power Systems Solution Edition for Cloud, see the IBM
Power Systems Solution Edition for Cloud website:
http://www.ibm.com/systems/power/solutions/cloud/resources.html
3.1.7 IBM i cloud offering summary
For environments where just VM management, deployment, and migration are the case,
PowerVC is sufficient in most cases. It is also a required step and starting point for using
robust cloud capabilities with IBM Cloud Manager with OpenStack.
IBM Cloud Manager with OpenStack provides the most comprehensive capabilities, including
automated cloud service management process, cloud oversight, workload metering, billing,
and much more. Using IBM Cloud Manager with OpenStack requires skilled professionals for
implementation and operation. If this is a problem or low time-to-market (TTM) factor is
important, then the best option is IBM Power Systems Solution Edition for Cloud. IBM Power
Systems Solution Edition for Cloud is a preinstalled and pre-configured appliance based on
customer needs. It can also come with optional implementation services.
3.1.8 VMware vRealize Automation for Power
IBM and VMware each announced a cooperative effort to give their shared clients the ability
to provision and manage VMs and applications running on IBM Power Systems with the
VMware vRealize Automation (vRA) solution through OpenStack enabled APIs.
Chapter 3. Cloud and virtualization 201
vRA sits on top of your existing PowerVC or IBM Cloud Manager OpenStack environment, as
shown in Figure 3-1. vRA passes workload management requests through OpenStack APIs
to IBM PowerVM, PowerKVM, and z/VM and KVM on IBM z™. vRA also can use images that
are already created in PowerVC.
This new capability provides IBM Systems customers more choice and flexibility in deciding
what orchestration tool to use.
Figure 3-1 VMware vRealize Virtualization for Power
3.2 IBM Power Virtualization Performance for Power Systems
IBM Power Virtualization Performance (PowerVP) for Power Systems is a licensed program
that provides a performance view into the PowerVM virtualized environment.
PowerVP displays graphically in real time the utilization of individual cores and their mapping
to logical partitions on Power Systems. The dashboard view of PowerVP gives a simple to
understand snapshot of resource usage that can be used by system administrators to
understand resource usage by different applications that run on logical partitions.
Customers who are using Power Systems in Cloud computing with large and small
enterprises with PowerVM features now can use PowerVP to understand resource distribution
among the virtual workloads and plan for business demands.
PowerVP collects performance data directly from the hypervisor, which offers the most
accurate performance information about logical partitions that are running on Power Systems.
This performance information is then displayed on a real-time, continuous graphical
dashboard. Data collection is available for historical review.
PowerVP can also be used along with existing operating system performance utilities to
identify performance bottlenecks on Power Systems. System administrators can use
PowerVP to diagnose resource contention issues quickly.
202 IBM i 7.2 Technical Overview with Technology Refresh Updates
3.2.1 PowerVP components
The architecture of PowerVP includes components that interact with the PowerVM
Hypervisor, the operating system, a graphical user interface (GUI), and a Java JAR file that is
used for data recording without the use of the GUI.
Here are the components of PowerVP:
System-level agent: A central point to collect system-wide resource utilization data.
Partition-level agent: Collects partition resource utilization data and interacts with the
system-level agent.
GUI: A Java based application that connects to the system-level agent and displays the
PowerVP dashboard.
Background recorder: A Java based application that is used to collect system-level
resource utilization data without the GUI.
Figure 3-2 shows the high-level architecture of PowerVP and the data flow between the
components of PowerVP and PowerVM.
Client GUI
VIOS AIX IBM i Linux
System Agent Partition Agent Partition Agent Partition Agent
OS Interface OS Interface OS Interface
PHYP
Interface POWER Hypervisor
Core HPMCs (CEC level) Thread PMUs (Partition Level)
Chip PMUlets (CEC level)
Figure 3-2 PowerVP architecture showing system agents communicating with the GUI
Chapter 3. Cloud and virtualization 203
3.2.2 PowerVP dashboard
System and partition resource utilization data that is collected by the PowerVP agents is
accessed and displayed on the GUI. You can use the PowerVP dashboard to access
system-wide performance data and data for a particular VM, and then drill down to get a
detailed view of the data.
You also can use the PowerVP dashboard to record and playback performance metrics on the
workstation where the GUI runs.
A sample PowerVP CPU resource affinity view is shown in Figure 3-3.
For more information about PowerVP implementation in an IBM i environment, see IBM
PowerVP: Introduction and Technical Overview, REDP-5112.
Figure 3-3 PowerVP dashboard: CPU affinity view
3.3 IBM i virtualization enhancements
Many new features were added in IBM i 7.2 that are related to iVirtualization and non-hosted
partitions and virtualization that use VIOS.
iVirtualization: When referring to an IBM i partition hosting another IBM i instance, this is
known as iVirtualization.
For an overview of various IBM i virtualization methods and helpful tips, see the IBM i
Virtualization and Open Storage (read-me first) document, found at:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/beb2d3aa-56
5f-41f2-b8ed-55a791b93f4f/page/IBM%20i%20Virtualization%20and%20Open%20Storage
204 IBM i 7.2 Technical Overview with Technology Refresh Updates
3.3.1 Virtual Partition Manager GUI in IBM Navigator for i
IBM Navigator for i provides a GUI for Virtual Partition Manager. To create a logical partition
by using IBM Navigator for i, complete the following steps:
1. In IBM Navigator for i, expand Configuration and Services.
2. Click Create Partition to start the wizard.
3. Follow the steps in the wizard to create an IBM i or Linux partition.
Important: You cannot use Virtual Partition Manager on an IBM i server that is configured
by an HMC. You can use Virtual Partition Manager only on the hosting IBM i partition.
PowerVM Standard or Enterprise edition is required to support up to four client partitions
that use VPM.
For more information about creating and managing partitions with IBM Navigator for i, see
2.1.14, “Partition management” on page 100.
3.3.2 iVirtualization release support
Various releases of IBM i running on Power Systems support hosting of other releases. For a
list of supported combinations when using iVirtualization, see Table 3-1.
Table 3-1 Supported iVirtualization combinations
Processor family Host IBM i versions Client IBM i versions
POWER5 Not available Not available
POWER6 6.1, 7.1, and 7.2 6.1, 7.1, and 7.2
IBM POWER7® 6.1, 7.1, and 7.2 6.1, 7.1, and 7.2
POWER8 7.1 and 7.2 7.1 and 7.2
Important: Machine code release 6.1.1 is required for any host or client at IBM i 6.1.
IBM i 7.1 and 7.2 requires specific Technology Refresh levels based on the hardware on
which the partitions are running.
Little Endian Linux partitions are now supported on POWER8 with IBM i 7.2 TR3 and IBM i
7.1 TR11. You can configure a Little Endian Linux partition as a client that uses as IBM i 7.2 or
IBM i 7.1 partition as a host partition. Both HMC and VPM configurations are supported.
For more information about supported Linux distributions for POWER8, see IBM Knowledge
Center:
https://www.ibm.com/support/knowledgecenter/linuxonibm/liaam/liaamdistros.htm
3.3.3 Using solid-state drives for network storage spaces
By using the Create NWS Storage Space (CRTNWSSTG) CL command, you can select affinity
for solid-state drives (SSDs) for iVirtualization partitions, and anything else that uses a
network storage space.
Chapter 3. Cloud and virtualization 205
Figure 3-4 shows an example of how to create a network storage space and set its
preference for SSD by using the Preferred storage unit parameter.
For more information about SSD support, see “Solid-state drive support” on page 108.
Create NWS Storage Space (CRTNWSSTG)
Type choices, press Enter.
Network server storage space . . > NEW001 Name
Size . . . . . . . . . . . . . . > 100000 *CALC, 1-1024000 megabytes
From storage space . . . . . . . *NONE Name, *NONE
Format . . . . . . . . . . . . . > *OPEN *NTFS, *OPEN, *REFS...
Auxiliary storage pool ID . . . 1 1-255
ASP device . . . . . . . . . . . Name
Text 'description' . . . . . . . > 'Storage space which should go to SSD'
Additional Parameters
Data offset . . . . . . . . . . *FORMAT *FORMAT, *ALIGNLGLPTN...
Sector size in bytes . . . . . . 512 512, 4096
Preferred storage unit . . . . . > *SSD *ANY, *SSD
Resource allocation priority . . 9 1, 2, 3, 4, 5, 6, 7, 8, 9
Figure 3-4 Create a network storage space with a preferred storage unit of *SSD
3.3.4 Support of additional disks that are attached through VSCSI
In IBM i 7.2, 32 virtual disks can now be attached through a VSCSI link. The previous
limitation was 16 virtual disks. This setting allows for a potentially less complex setup and
easier expansion of an existing environment when needed.
3.3.5 Less-complex assignment of tape and optical resources
In previous releases, all optical and tape devices were available to client partitions when
using iVirtualization, unless they were restricted individually in the network server description.
When running IBM i 7.2 as the host, the following two parameters are available on the Create
Network Server Description (CRTNWSD) and Change Network Server Description (CHGNWSD) CL
commands to specify only the devices that are allowed to be used. These parameters can be
of great assistance in environments with a significant quantity of optical and tape resources.
Allowed device resources (ALWDEVRSC)
Restricted device resources (RSTDDEVRSC)
Important: You cannot specify the same resources on the allowed and restricted lists at
the same time. If resources are being specifically allowed, the restricted resources must be
*NONE. If resources are being restricted, the allowed resources must be *UNRSTD. For more
information about this requirement, see the command’s help text.
206 IBM i 7.2 Technical Overview with Technology Refresh Updates
3.3.6 Defining system resource usage during storage space creation
On systems running IBM i 7.2, a new parameter was added to the Create Network Server
Storage Space (CRTNWSSTG) and Change Network Server Storage Space (CHGNWSSTG) CL
commands. The parameter is called Resource Allocation Priority (RSCALCPTY), and you can
use it to use the process to use a variable amount of system resources during creation of the
storage space. See Figure 3-4 on page 206.
In the past, during creation of a storage space, the system attempted to use as much system
resources as possible, which might have potentially affected other processes on the system in
a negative manner. You can use this new parameter to modify the create priority to reduce the
chance of significant delays to other jobs on the system.
This parameter can accept values 1 - 9, with 9 being the maximum and 1 being the minimum.
Setting the value to the default of 9 creates the storage space in a manner equal to prior
release behaviors. Modifying the value from 9 to any other setting reduces the resources that
are used during creation.
Note: Setting a lower priority can reduce server resource utilization, but ultimately causes
the creation of the storage space to take a longer amount of time.
For more information about resource allocation priority, see “Resource allocation priority” on
page 104.
3.4 Live Partition Mobility
Live Partition Mobility (LPM) is part of the base functions of IBM i 7.2.
With the release of IBM i 7.2 with Technology Refresh 1, a customer can migrate from a
POWER7 or POWER7+ system to all POWER8 systems with no downtime by simply
performing a move with LPM and accommodating for licensing changes on the new server.
Note: For partitions running IBM i 7.2, Technology Refresh 1 is required for Live Partition
Mobility to move to or from POWER8 systems.
LPM is the recommended “no downtime” maintenance strategy for IBM i customers running
on POWER8 Enterprise servers. There is no longer any option for CEC Hot Add Repair
Maintenance (CHARM) on the POWER8 Enterprise systems. Therefore, certain maintenance
items that might have been concurrent in the past now require a central electrical complex
outage to perform.
To ensure the most stability when using LPM, it is a good idea to review firmware and OS
updates for the central electrical complex, HMC, and IBM i environments. Specific fixes might
be released that are necessary to ensure a stable and seamless transition among CECs.
Remember: Live Partition Mobility requires that all resources that are allocated to the
mobile partition are virtual through a Virtual I/O Server (VIOS). The partition can own no
physical hardware if it is to be mobile.
For more information about LPM with IBM i, see IBM PowerVM Virtualization Introduction and
Configuration, SG24-7940.
Chapter 3. Cloud and virtualization 207
3.5 Licensing and service provider accommodations
Ever since the release of the Power Systems servers, impressive advances have been made
in relation to performance and virtualization. At the same time, businesses are constantly
striving to streamline operations and use their servers in the most cost-effective manner.
Certain systems are available from IBM that are pre-configured in a manner to better support
a cloud infrastructure. For more information about IBM Power Systems solution editions that
are optimized for cloud, see the IBM Power Systems Solution Edition for Cloud website:
http://www.ibm.com/systems/power/hardware/solutioneditions/cloud/
The IBM i operating system is also positioned strategically for implementation in cloud.
Advances in virtualization and tape technologies have made it much easier to migrate
environments from an on-premises system to a remote location.
Additionally, IBM has multiple offerings for both customers and managed Service Providers to
help defray some costs during a migration to a new operating environment. For more
information about these offerings and the benefits that are available to support cloud services
on Power Systems, see the IBM Power Systems for Service Providers website:
https://www.ibm.com/msp/us/en/powersystems
208 IBM i 7.2 Technical Overview with Technology Refresh Updates
4
Chapter 4. Security
With the announcement of IBM i 7.2, this release of IBM i provides significant new security
enhancements and enhances many other integrated components and licensed programs that
are security-related.
This chapter describes the following topics:
4.1, “Single sign-on” on page 210
4.2, “Password rule and user profile enhancements” on page 211
4.3, “Intrusion detection” on page 212
4.4, “Vector Scalar eXtension and cryptographic acceleration” on page 214
4.5, “Cryptographic key management enhancements” on page 215
4.6, “Cryptography enhancements” on page 217
4.7, “DB2 security” on page 223
4.8, “Networking security” on page 223
For more information about IBM i 7.2 security enhancements, see the IBM i Technology
Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 209
4.1 Single sign-on
In IBM i 7.2, support was added to use a Kerberos ticket for automatic sign-on. Both the File
Transfer Protocol (FTP) and Telnet servers are enhanced to support authenticating with
Kerberos by using single sign-on (SSO).
There are new functions in the integrated IBM i security that enable SSO between a
Kerberos-enabled FTP client and an IBM i FTP server and between a Kerberos-enabled
Telnet client and an IBM i Telnet server. These functions open the door for more applications
to participate in an SSO environment.
With Kerberos authentication, you can eliminate the exposure of transmitting passwords and
data in the clear when using the FTP server with an FTP client that uses Kerberos
authentication. The “Kerberized” FTP server, with Enterprise Identity Mapping, can support
an SSO environment. For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaiq/rzaiqkerberos.htm?la
ng=en
Figure 4-1 shows the Start TCP/IP Telnet (STRTCPTELN) CL command prompt. Notice the
*KERBEROS option for the Remote user parameter.
Start TCP/IP TELNET (STRTCPTELN)
Type choices, press Enter.
ASCII full screen options . . . *NONE *NONE, *ALL, *LOCALECHO...
+ for more values
Display character attributes . . *YES *NO, *YES
ASCII page scroll feature . . . *NO *NO, *YES
ASCII answerback feature . . . . *NONE
ASCII tab stops . . . . . . . . *DFT 0-133, *DFT, *NONE
+ for more values
Coded character set identifier *MULTINAT 1-65533, *MULTINAT...
ASCII operating mode ID . . . . *VT220B7 *VT220B7, *VT220B8, *VT100...
Remote virtual display . . . . . *DFT Name, *DFT
Remote user . . . . . . . . . . *NONE Name, *NONE, *KERBEROS...
Remote password . . . . . . . . *NONE
Remote password encryption . . . *DES7 *DES7, *SHA1, *NONE
Remote initial program . . . . . *RMTUSRPRF Name, *RMTUSRPRF, *NONE
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 4-1 Start TCP/IP Telnet (STRTCPTELN) CL command prompt
210 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 4-2 shows the Start TCP/IP File Transfer (FTP) CL command prompt. Notice the
*KERBEROS option for the Secure connection parameter.
Start TCP/IP File Transfer (FTP)
Type choices, press Enter.
Remote system . . . . . . . . .
Internet address . . . . . . . .
Coded character set identifier *DFT 1-65533, *DFT
Port . . . . . . . . . . . . . . *DFT 1-65535, *DFT, *SECURE
Secure connection . . . . . . . *DFT *DFT, *NONE, *SSL...
*IMPLICIT, *KERBEROS
Data protection . . . . . . . . *DFT *DFT, *CLEAR, *SAFE, *PRIVATE
Additional Parameters
Outgoing EBCDIC/ASCII table . . *CCSID Name, *CCSID, *DFT
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 4-2 Start TCP/IP File Transfer (FTP) CL command prompt
For more information about Telnet on IBM i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaiw/rzaiwrzaiwwhatsnew.h
tm?lang=en
For an example of creating an SSO test environment, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzamz/rzamzenablesso.htm?l
ang=en
4.2 Password rule and user profile enhancements
In IBM i 7.2, the following systems values that are related to password rules were added or
changed:
New system values:
– QPWDRULES: Define new password rules.
– QPWDEXPWRN: Define the password expired warning interval.
– QPWDCHGBLK: Prevent passwords from being changed repeatedly.
Changed system values:
QLMTDEVSSN: Limit device sessions. The options are *NONE or 1 - 9 sessions.
Chapter 4. Security 211
The following user profile parameters are updated in IBM i 7.2:
LMTDEVSSN: Limit device sessions (1 - 9 sessions).
PWDCHGBLK: Block password changes (1 - 99 hours).
4.3 Intrusion detection
When an intrusion detection system (IDS) is active, it reports the suspected intrusions and
extrusions that are defined by the enabled IDS policies. The production and service stacks
detect these intrusions and extrusions. When an intrusion or extrusion event occurs that
exceeds user-defined or default thresholds, IDS writes an intrusion monitor record to the audit
journal, and optionally sends a notification to a message queue and sends an email
message.
As shown in Figure 4-3, IDS behavior is defined as policies in a policy file, with audit events
logged to the security audit journal. When an intrusion is detected, it is logged in the message
queue and an optional email notification can be sent.
Figure 4-3 Intrusion detection implementation
An intrusion detection policy defines the parameters that the IDS uses to monitor for potential
intrusions and extrusions on the system. If a potential intrusion or extrusion is detected, an
intrusion event is logged in an intrusion monitor record in the security audit journal and
displayed as intrusion events in the IDS GUI. Table 4-1 shows the format of an intrusion
monitor journal record.
Table 4-1 Format of an intrusion monitor record in the security audit journal
Journal value Description
P Potential intrusion event detected.
2006-01-11-13.19.42.329688 Timestamp (11 Jan 2006, 13:19:42.329688).
1107 Detection point identifier.
02 Local address family.
119 Local port number.
9.5.92.48 Local IP address that is associated with the detected event.
02 Remote address family.
212 IBM i 7.2 Technical Overview with Technology Refresh Updates
Journal value Description
3511 Remote port number.
9.5.92.102 Remote IP address that is associated with the detected event.
SCANE Probe type identifier (SCANE = Scan Event).
0020 Unique identifier for this specific intrusion event. You can use this
identifier to correlate this audit record with other intrusion detection
information.
For more information about IDS support on IBM i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaub/rzaubidsoperation.ht
m?lang=en
In IBM i 7.2, the following enhancements are enabled for IDS:
Intrusion events that are detected or audited. This includes well-known attacks such as
“Smurf”, “Fraggle”, ACK storms, address poisoning (both IPv4 ARP poisoning, and IPv6
neighbor discovery poisoning), and Ping-Of-Death, which can now be detected.
Extrusions detected, which includes attacks, scans, and other traffic regulation anomalies
initiating from your IBM i server, which can now be detected.
IPv4 and IPv6 support.
Real-time notification enablement that uses email, messages, and other options (for
example, pagers and ISV solutions) can be used in addition to IM records for real-time
notification. See Figure 4-4.
Figure 4-4 IBM Navigator for i GUI interface for the configuration of real-time notification
Chapter 4. Security 213
Graphical User Interface (GUI) is available for the management of IDS policies and
displaying intrusion events as an alternative to viewing the audit journal. See Figure 4-5.
Figure 4-5 IBM Navigator for i GUI interface for the configuration of IDS policies
4.4 Vector Scalar eXtension and cryptographic acceleration
In IBM i 7.2, POWER8 vector instructions can be used to improve the performance of
cryptographic operations. In particular, Advanced Encryption Standard (AES) encryption and
decryption performance for electronic codebook (ECB) and cipher-block chaining (CBC)
modes were improved. These improvements are used by the internal software cryptographic
library, and are automatically used for the particular cryptographic algorithms in the
cryptographic services APIs and other system-provided encryption functions.
The use of vector instructions is not directly available, such as by using a new hardware
provider that uses cryptographic services APIs. However, IBM i Portable Application Solutions
Environment (PASE) applications can use Vector Scalar eXtension (VSX) instructions. This
function can be unlocked when SLIC PTF MF58198 is applied.
POWER8 in-core cryptographic performance acceleration includes the following functions:
Support within the processor itself. No additional products or hardware is required.
Automatic performance acceleration for certain cryptographic algorithms (AES and SHA-2
message digest).
Does not support cryptographic key storage. In some instances, the Cryptographic
Coprocessor card still is required.
Performance gains are realized in support of the following items:
– Customer applications that use the cryptographic services APIs
– Secure Sockets Layer (SSL)
– Virtual Private Network (VPN)
– Software tape encryption
214 IBM i 7.2 Technical Overview with Technology Refresh Updates
POWER8 has enhanced Vector Scalar eXtension (VSX) capabilities, including new
instructions to accelerate some frequently used cryptographic operations. VSX in Power
Systems supports vector and scalar binary floating point operations conforming to the
Institute of Electrical and Electronics Engineers Standard for Floating Point Arithmetic
(IEEE-754).
VSX can be used to increase parallelism by providing single-instruction, multiple-data (SIMD)
execution function for floating point double-precision operations, greatly improving the
performance of some applications. IBM i PASE applications running on IBM i 7.2 with
POWER8 processors can now take advantage of VSX.
IBM i 7.2 uses the enhanced POWER8 vector processing capabilities to accelerate AES
cryptographic operations when operating in the POWER8 processor compatibility mode.
Cryptographic services APIs, SSL, VPN, Backup Recovery and Media Services (BRMS) tape
encryption, and SQL encryption functions automatically use POWER8 enhanced vector
processing capabilities to deliver significant increases in performance.
For more information, see the following IBM i 7.2 and IBM POWER8 developerWorks article:
http://www.ibm.com/developerworks/ibmi/library/i-ibmi-7_2-and-ibm-power8/
4.5 Cryptographic key management enhancements
A data encryption key can be used to encrypt important or sensitive data, such as social
security numbers or credit card numbers, and should be well-protected, or the data will be at
risk for exposure. It is considered a preferred practice to encrypt the data encryption key with
a key encrypting key (KEK). A master key can then be used to encrypt all KEKs.
In IBM i 7.2, the following cryptographic key management enhancements are included:
GUI and CL command interfaces to manage master keys
GUI and CL command interfaces to manage keystores and keys:
– Create keystore files
– Create encryption keys
Chapter 4. Security 215
Managing master keys by using IBM Navigator for i
To manage master keys in IBM Navigator for i (see Figure 4-6), click Security →
Cryptographic Services Key Management → Master Keys.
Note: The SAVRST Master Key is not yet set in the example that is shown in Figure 4-6.
However, a default key is in place to provide minimal protection until the key is set. This
means that the master keys are not “in the clear” on the SAVSYS tape, but any IBM i
system can decrypt them.
Figure 4-6 Manage master keys in IBM Navigator for i
Creating keystore files by using IBM Navigator for i
Keystores are protected by master keys. A single keystore file can be encrypted only under
one master key, but one master key can encrypt multiple keystore files.
KEKs and data keys are stored in the keystore file. A keystore is a database file with the
normal file access methods disabled. Figure 4-7 shows an example of a keystore.
Figure 4-7 Keystore file
216 IBM i 7.2 Technical Overview with Technology Refresh Updates
To create a keystore by using IBM Navigator for i, click Security → Cryptographic Services
Key Management → Keystores. In the Manage Keystores window (Figure 4-8), click Create
New Keystore to create a keystore file and then click Add Keystore to add encryption key
entries.
In the example that is shown in Figure 4-8, the keystore Q1AKEYFILE in library QUSRBRM is
for BRMS tape encryption. Application keystore files can be assigned any file name.
Figure 4-8 Create a keystore in IBM Navigator for i
4.6 Cryptography enhancements
This section describes the enhancements for cryptography, system values that are related to
cryptography, and Digital Certificate Manager.
The following topics are covered in this section:
4.6.1, “Default value for the QSSLPCL system value” on page 217
4.6.2, “Cipher specification list changes” on page 218
4.6.3, “Elliptic Curve Cryptography” on page 218
4.6.4, “Multiple server certificates” on page 219
4.6.5, “Digital Certification Manager local certificate authority” on page 220
4.6.6, “Default cipher specification list” on page 220
4.6.7, “Signature and hash algorithms” on page 222
4.6.1 Default value for the QSSLPCL system value
The Secure Sockets Layer protocol system value, QSSLPCL, controls the TLS versions that are
supported by system SSL, with the special value *OPSYS indicating the default behavior. In
IBM i 7.2, the TLSv1.2 and TLSv1.1 protocols are on and SSLv3 is off by default. Changing
the setting for QSSLPCL or the value of *OPSYS influences every system SSL-consuming
application on the system.
When migrating from an earlier release, a user-defined QSSLPCL value is retained, preventing
the new default behavior for this release from being in effect. In this case, after the migration,
the system administrator can set the QSSLPCL system value to *OPSYS if its definition for the
release meets their security policy requirements.
Chapter 4. Security 217
For information about how to determine the SSL protocol and cipher suite that are used for
each system SSL connection to the IBM i, see the following website:
http://www.ibm.com/support/docview.wss?uid=nas8N1020594&context=SGYQGH
Here are the QSSLPCL *OPSYS definitions by release:
IBM i 7.2: *TLSV1.2, *TLSV1.1, and *TLSV1
IBM i 7.1: *TLSV1 and *SSLV3
If an application must continue to use SSLv3 with an IBM i 7.2 system, the administrator is
forced to update the QSSLPCL system value to include *SSLV3. The application with a
dependency on *SSLV3 can now be configured to allow *SSLV3. For the core IBM i networking
applications, this task can be controlled by using the Digital Certificate Manager (DCM)
Application Definition. If SSLv3 has been enabled, create an action plan to eliminate the
external dependency on SSLv3 so it can be turned off again.
IBM i 7.2 enables TLSv1.2 and TLSv1.1 for applications that are coded to use TLSv1.0
because of the focus on improving the default security position without requiring client
intervention.
Note: The possibility exists that an application’s internal code will not tolerate negotiation
of a new protocol it does not know. In this situation, the mitigation is to turn off the new
protocols at the application layer if possible. This task is accomplished through changing
the application definition in DCM or by changing the application code to turn off explicitly
TLSv1.2. The last option is to disable TLSv1.2 with QSSLPCL for the entire system until the
application can be updated to tolerate TLSv1.2.
4.6.2 Cipher specification list changes
The Secure Sockets Layer cipher specification list system value, QSSLCSLCTL, determines who
controls the values in system value QSSLCSL. The *OPSYS value indicates that the operating
system determines the list and the *USRDFN value indicates that the system administrator
controls the QSSLCSL values.
The new definition of the cipher suite list in QSSLCSL, when QSSLCSLCTL is set to *OPSYS, also
has an impact on clients. QSSLCSL governs both the supported and default cipher suites. In
IBM i 7.2, *OPSYS introduces over a dozen new cipher suites for the first time. The default
cipher suites are a release-restricted subset of the supported cipher suites. Some cipher
suites previously in the restricted default subset were removed from the subset. The order of
some suites in the default subset also changed, which can impact which cipher suite is
negotiated.
For more information, see 4.6.6, “Default cipher specification list” on page 220.
4.6.3 Elliptic Curve Cryptography
Elliptic Curve Cryptography (ECC) is a new function that is available for the first time with
IBM i 7.2. ECC is an asymmetric encryption algorithm, and in simplistic terms, it is similar to
RSA. One the attributes of ECC is that it has smaller key sizes than RSA to obtain the same
strength. ECC encompasses many different elliptic curve types, families, and strengths.
218 IBM i 7.2 Technical Overview with Technology Refresh Updates
System SSL and DCM support five named elliptic curves:
Secp521r1
Secp384r1
Secp256r1
Secp224r1
Secp192r1
All five of the named curves are enabled by default. System SSL support for one or more of
the named curves can be disabled at the system level by using the System Service Tools
advanced analysis SSLCONFIG command.
As it relates to TLS, there are two components to ECC:
The first part of ECC is Elliptic Curve Digital Signature Algorithm (ECDSA) certificates.
These certificates use ECDSA for the key type rather than RSA.
The second part is the Elliptic Curve Diffie-Hellman Ephemeral (ECDHE) key exchange.
The ephemeral part means that a key that is associated with a certificate is not used, but
rather new anonymous key pairs are used for each handshake.
ECDHE does not use the key in the certificate, so it works with both RSA and ECDSA
certificates. The keyword ECDHE in a cipher suite name indicates that ECDHE is used for the
key exchange. The keywords RSA or ECDSA in the cipher suite indicate which certificate
type to use. If ECDHE is not in the cipher suite name, this means that there is an unwritten
RSA keyword to indicate RSA key exchange. RSA key exchange uses the key from the RSA
certificate and does not work with ECDSA certificates. ECDSA certificates can be used only
with the ECDHE key exchange.
The transition to ECDHE for the key exchange in TLS connections is painless. It requires that
each side supports the same ECDHE cipher suite and has one supported named curve in
common. The server’s ordered cipher suite list also must prefer the ECDHE cipher suite over
any RSA key exchange cipher suites for it to be selected.
The transition to ECDSA is more complicated because in addition to the ECDHE
requirements, ECDSA requires a new certificate be generated and assigned to the
application. A server application cannot migrate from RSA certificates to ECDSA certificates
until all of its potential clients can negotiate ECDSA and ECDHE cipher suites. This is a
long-term consideration when negotiating with previous IBM i releases that do not support
ECC.
4.6.4 Multiple server certificates
To assist with the interoperability issues of migrating to ECDSA certificates, IBM i 7.2 server
applications can now have multiple server certificates that are assigned at one time. The new
multiple certificates infrastructure supports up to four concurrent certificates, although two
certificates are typical. An administrator rolling out the use of ECDSA assigns both an RSA
certificate and an ECDSA certificate to the server configuration.
Servers with a DCM application definition use the DCM Update Certificate Assignment
window to assign multiple certificate labels. GSKit based servers can configure multiple
certificate labels to be used by setting the GSK_KEYRING_LABEL_EX attribute.
Chapter 4. Security 219
The Telnet server DCM Update Certificate Assignment window is shown in Figure 4-9. In this
example, Telnet has one certificate that is assigned, although the four certificates with the
check mark next to the label names are about to be assigned instead.
Note: Assigning two or more certificates that have the exact same cryptographic
properties adds unnecessary processing because only the first one (as determined
internally) is selected.
The certificate that is selected for a secure connection is determined by the server
configuration that is paired with each client’s advertised capabilities. The certificate selection
logic is deterministic and is described in detail in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzain/rzainmultcert.htm?cp
=ssw_ibm_i_72
Figure 4-9 Digital Certificate Manager: update certificate assignments
4.6.5 Digital Certification Manager local certificate authority
IBM i 7.2 DCM supports creating ECDSA local certificate authorities (CAs) and ECDSA
certificates. Multiple local CAs can exist on the same partition, and which one signs a new
certificate is selected when the certificate is created.
An RSA server certificate can be signed by an ECDSA CA and vice versa. An early phase of
the rollout of ECDSA can include signing an ECDSA server certificate with an existing RSA
local CA. The peer clients (user PCs) trust the new certificate chain because they already
trust the root RSA local CA. Otherwise, the new ECDSA local CA must be distributed to all
the peers so they can trust a pure ECDSA certificate chain.
4.6.6 Default cipher specification list
As mentioned in 4.6.3, “Elliptic Curve Cryptography” on page 218, the list of values for the
QSSLCSL system value when QSSLCSLCTL is *OPSYS changed in IBM i 7.2.
220 IBM i 7.2 Technical Overview with Technology Refresh Updates
The default cipher suites for each release are shown in Figure 4-10 as the shaded values. A
system administrator can alter the default list for the system in three ways:
If a default cipher suite is removed from the QSSLCSL list, it is no longer supported, which
removes it from the default list at the same time.
For the default cipher suites, the order they appear in the list is the order they are preferred
by server applications. By rearranging the order in QSSLCSL, the order is changed for all
applications that use the default list.
If a default suite is added or removed from the eligible default cipher suite list by using the
System Service Tools (SST) Advanced Analysis Command (SSLCONFIG), the SSLCONFIG
option –eligibleDefaultProtocols changes which cipher suites are shaded in
Figure 4-10.
The SSLCONFIG command is described in more detail in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzain/rzainsslconfigmacro.
htm
Figure 4-10 Default IBM i 7.2 ciphers
Chapter 4. Security 221
As shown in Figure 4-10 on page 221, four new ECDHE_ECDSA_AES-based cipher suites are
positioned first. This is the first time a new cipher suite is added to the top position in the list.
This positioning is due to this set of cipher suites remaining dormant for a server until the
administrator assigns an ECDSA certificate. If an administrator goes to the effort to configure
ECDSA, it is assumed they want it to be used whenever possible.
Because ECDHE requires no explicit configuration, the ECDHE_RSA_AES based cipher suites
are positioned after the RSA_AES set to prevent a new (to System SSL) cipher suite from being
the primary cipher suite that is used by most of the server applications without administrator
action.
When migrating from an earlier release, a user-defined QSSLCSL value is retained to prevent
the new cipher suites from being supported. In that case, after the migration, the system
administrator can set QSSLCSLCTL to *OPSYS to have QSSLCSL primed with the new list. Working
with the full list, the administrator can then modify the list as needed to meet their security
requirements.
4.6.7 Signature and hash algorithms
The TLSv1.2 protocol made the signature algorithm and the hash algorithm that are used for
digital signatures independent attributes. In previous protocol versions, the negotiated cipher
suite and certificate determined these algorithms.
System SSL has a default ordered list of allowed signature/hash algorithm pairs. The list
serves two purposes for TLSv1.2 and has no meaning for prior protocols:
The first use is that the ordered signature algorithm list is sent to the peer when the
System SSL requests a certificate during the handshake. The peer uses the received list
to guide its certificate selection process when it has more than one certificate from which
to pick.
The second use is that the list of algorithm pairs restricts which signature and hash
algorithms can be used for handshake message signatures. A TLSv1.2 handshake
message signature algorithm can be different from the signature algorithm of the
certificate that is used for the session. For example, the handshake message can be
protected by SHA512 even though an MD5 certificate is selected for the session. This
increases the security attributes of the handshake without requiring a new certificate.
There are two methods of setting this list for an application:
Applications with a DCM application definition can use the DCM Update Application
Definition window to configure the list.
GSKit based applications can configure the list by setting the GSK_SSL_EXTN_SIGALG
attribute.
There is no system value for this property, but the entries in the system list can be removed or
reordered by using SSLCONFIG. Anytime a value is removed from a supported list, the potential
exists to introduce interoperability issues. The typical user does not care about this list, but it
might be important for the most restrictive security policies.
Here is the IBM i 7.2 default System SSL signature algorithm list:
ECDSA_SHA512
ECDSA_SHA384
ECDSA_SHA256
ECDSA_SHA224
ECDSA_SHA1
222 IBM i 7.2 Technical Overview with Technology Refresh Updates
RSA_SHA512
RSA_SHA384
RSA_SHA256
RSA_SHA224
RSA_SHA1
RSA_MD5
4.7 DB2 security
DB2 security enhancements are described in Chapter 8, “IBM DB2 for i” on page 321, which
includes the following topics:
8.2, “Separation of duties concept” on page 323
8.2.2, “Row and Column Access Control support” on page 325
8.3, “DB2 security enhancements” on page 332
4.8 Networking security
Security improvements in networking are described in Chapter 5, “Networking” on page 225,
which includes the following topics:
5.1.1, “Domain Name System Security Extensions” on page 226
5.2, “Simple Network Management Protocol” on page 227
5.4, “System SSL enhancements” on page 229
5.5, “Virtual private networks” on page 230
5.5.2, “Internet Key Exchange version 2 protocol” on page 231
“IKEv2 troubleshooting” on page 234
Chapter 4. Security 223
224 IBM i 7.2 Technical Overview with Technology Refresh Updates
5
Chapter 5. Networking
This chapter describes the following networking enhancements that are enabled in IBM i 7.2:
5.1, “Domain Name System” on page 226
5.2, “Simple Network Management Protocol” on page 227
5.3, “SR-IOV” on page 229
5.4, “System SSL enhancements” on page 229
5.5, “Virtual private networks” on page 230
5.6, “Virtual local area network” on page 241
5.7, “Retrieving and updating TCP/IP information” on page 244
5.8, “IPv6 proxy neighbor discovery for virtual Ethernet and PPP” on page 245
5.9, “Single sign-on for FTP and TELNET” on page 245
5.10, “Virtual Network Interface Controller” on page 245
5.11, “Ethernet device server support (WAN over LAN)” on page 248
For more information about the IBM i 7.2 networking enhancements, see the IBM i
Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 225
5.1 Domain Name System
For IBM i 7.2, the Domain Name System (DNS) services are based on the industry-standard
DNS implementation that is known as Berkeley Internet Name Domain (BIND) Version 9. For
previous IBM i releases, DNS services were based on an older BIND Version 9 or BIND
Version 8.
To use the new BIND Version 9 DNS server in IBM i 7.2, you must have the following options
installed on your system:
IBM i option 31 (DNS)
IBM i option 33 (Portable Application Solutions Environment (PASE))
IBM i 5733-SC1 option 1 (OpenSSH, OpenSSL, zlib)
Note: Starting with IBM i V6R1, for security reasons, BIND Version 4 and Version 8 are
replaced with BIND Version 9. Therefore, the migration to BIND Version 9 is required for
your DNS server.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzakk/rzakkkickoff.htm
5.1.1 Domain Name System Security Extensions
Domain Name System Security Extensions (DNSSEC) provides a means to secure DNS data
by using digital signatures and public key cryptography. The DNSSEC Server available on
IBM i now has DNSSEC capabilities. DNSSEC is a suite of IETF RFC specifications that adds
security extensions to the DNS.
DNSSEC allows a resolver or name server to verify the authenticity and integrity of DNS
response data by establishing a “chain of trust” to the source of the DNS data and validating
the digital signatures.
The main function of DNSSEC is to protect the user from forged data in the following ways:
Validate the origin of a DNS response and trust that the data came from the expected
source.
Validate the integrity of a DNS response and trust that the data itself is correct.
Validate a denial of existence and trust a “no records to return” response.
DNSSEC does not provide any of the following functions:
Encryption of data (for example, SSL)
Protection from denial of service attacks
Protection from going to phishing sites
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzakk/rzakkconceptdnssec.h
tm
226 IBM i 7.2 Technical Overview with Technology Refresh Updates
5.1.2 IBM i resolver
DNSSEC support in the IBM i resolver can be enabled by using the following Change TCP/IP
Domain (CHGTCPDMN) CL command:
CHGTCPDMN DNSSEC(*YES)
In DNSSEC terms, the IBM i resolver is a non-validating security-aware stub resolver, which
means that when DNSSEC is enabled, the IBM i resolver sets the DNSSEC OK bit in its
query messages to indicate that it can handle DNSSEC fields in responses. However, it relies
on the name server to do the actual authentication and validation of the DNS response data.
This dependency implies that to have a secure DNS solution, IBM i must trust the name
server and also have a secure communication channel to the name server.
One option to secure the communication channel is to configure the DNS server on the same
partition as the resolver and have them communicate by using the loopback address
(127.0.0.1 for IPv4 or ::1 for IPv6). Another option is to use IP Security (IPSec) to secure the
communication channel between IBM i and the name server.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzab6/dnssec.htm
5.2 Simple Network Management Protocol
Simple Network Management Protocol (SNMP) provides a system or network management
application with the ability to gather information about network devices and to monitor them.
To accomplish this task, SNMP defines a set of operations for retrieving and setting data and
monitoring for conditions being reported by the managed devices.
The following SNMP topics are covered in this section:
5.2.1, “Configuring storage pools and disk block sizes” on page 227
5.2.2, “SNMP enhancements” on page 228
5.2.3, “GetBulk operation support” on page 228
5.2.4, “SNMP manager APIs” on page 228
5.2.1 Configuring storage pools and disk block sizes
As the storage sizes for both storage pools and individual disk units have increased, the limits
of the original SNMP design have been reached or in some cases exceeded. For example,
the size that SNMP returns for an 8 TB disk unit on an IBM i system might show up as a
negative number in some systems management applications, or it might be flagged as invalid.
Enhancements to SNMP allow the configuration of block sizes to be used for returning
storage size information for both storage pools and disk units.
Note: Using this support for disk units can cause IBM i to be non-compliant with
RFC 1514, which defines a disk unit block size as 1024 bytes.
A larger block size can be configured by using the new block size (BLKSIZE) parameter with
the Change SNMP Attributes (CHGSNMPA) CL command.
Chapter 5. Networking 227
By using an appropriate block size, you can avoid the confusion that is related to the incorrect
storage size value or a disk unit being flagged as invalid by a systems management
application.
5.2.2 SNMP enhancements
In the past, IBM i received SNMP requests through UDP port 161 and then sent a response
by using a random ephemeral port. An ephemeral port is a short-lived transport protocol port
for internet protocol (IP) communications that is allocated automatically from a predefined
range by the IP software. This made it difficult to configure firewalls and still allow SNMP
traffic to flow between an IBM i SNMP agent and an SNMP-based system or network
management application running remotely. The SNMP agent was changed so that responses
to SNMP requests are now sent through UDP port 161. Traps that originate on an IBM i
partition are now also sent through port 161.
5.2.3 GetBulk operation support
The SNMP GetBulk operation was introduced in SNMP version 2 (SNMPv2) and provides a
method to get a relatively large amount of data with a single SNMP request. Although IBM i
does not support SNMPv2, it does support SNMPv3, which provides improved security and
privacy for SNMP messages. The IBM i agents now fully support the GetBulk requests for
SNMPv3. You can use the SNMP manager API snmpGetbulk_v3 to send a GetBulk request
to an SNMPv3 agent.
The following PTFs are required for setting up SNMPv3 on an IBM i system:
SI55537 or supersedent
SI55539 or supersedent
SI55766 or supersedent
SI55787 or supersedent
SI55966 or supersedent
For more information about GetBulk, see the IBM i Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/ibmi/library/i-snmp-getbulk-data-retrieval/#tog
gle
5.2.4 SNMP manager APIs
A new set of Simple Network Management Protocol (SNMP) manager APIs are now available
in IBM i 7.2. An IBM i SNMP manager application can use this new set of APIs to take
advantage of the security features for authentication and data privacy that are associated with
SNMP version 3 (SNMPv3). The APIs support SNMPv3 agent discovery and the GET, GETNEXT,
and SET operations by using the SNMPv3 protocol.
Here are the SNMPv3 APIs:
These APIs perform SNMPv3 agent discovery and manage authentication:
– snmpDiscovery_v3()
– snmpFreeAuthCB_v3()
These APIs perform the SNMP operations of GET, GETNEXT, and SET:
– snmpGet_v3()
– snmpGetnext_v3()
– snmpSet_v3()
228 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about the SNMPv3 APIs, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/unix6b.htm?lang=en
For an example of using the SNMPv3 APIs, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/snmpexmp.htm
5.3 SR-IOV
SR-IOV is PCI standard architecture that enables PCIe adapters to become self-virtualizing. It
enables adapter consolidation, through sharing, much like logical partitioning enables server
consolidation. With an adapter capable of SR-IOV, you can assign virtual slices of a single
physical adapter to multiple partitions through logical ports without the need for a Virtual I/O
Server (VIOS).
The following adapters are supported:
FC EN0H; CCIN 2B93
FC EN0L; CCIN 2CC1
FC EN10: CCIN 2C4C
FC EN11; CCIN 2C4D
FC EN0M, CCIN 2CC0
FC EN15, CCIN 2CE3
FC EN16, CCIN 2CE3
FC EN17, CCIN 2CE4
FC EN18, CCIN 2CE4
For more information about SR-IOV, see the following references:
IBM Power Systems SR-IOV: Technical Overview and Introduction, REDP-5065
The IBM i IO Support Details topic in the IBM i Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/IBM%20i%20IO%20Support%20Details
5.4 System SSL enhancements
System SSL is a set of services that is provided in the IBM i Licensed Internal Code to protect
TCP/IP communications by using the SSL/TLS protocol. System SSL is accessible to
application developers from the following programming interfaces and Java Secure Socket
Extension (JSSE) implementation:
Global Security Kit (GSKit) APIs
Integrated IBM i SSL_ APIs (not recommended; use GSKit APIs instead.)
Integrated IBM i JSSE implementation
SSL applications that are created by clients or by IBM that use an interface that is listed above
use System SSL. FTP and Telnet are examples of IBM applications that use System SSL. Not
all SSL enabled applications running on IBM i use System SSL.
In IBM i 7.2, System SSL underwent the most significant updates since Transport Layer
Security (TLS) Version 1.0 was originally introduced in V4R5 over a decade ago. System SSL
added support for the Transport Layer Security Version 1.2 (TLSv1.2) protocol and the
TLSv1.1 protocol.
Chapter 5. Networking 229
The new TLSv1.2 support includes Elliptic Curve Diffie-Hellman (ECDHE) key exchange
cipher suites. With the Digital Certificate Manager (DCM), support was added for Elliptic
Curve Digital Signature Algorithm (ECDSA) certificates.
Online Certificate Status Protocol (OCSP) support was also added to System SSL. OCSP is
a method to determine the revocation status for a digital certificate.
For more information about these new cryptographic features, see 4.6, “Cryptography
enhancements” on page 217.
5.5 Virtual private networks
Virtual private networks (VPNs) on IBM i are used to extend securely private intranets over
public networks. The VPN enhancements in IBM i 7.2 give clients new security options and
management and configuration flexibility and includes the following new functions:
5.5.1, “New commands for VPN management and configuration” on page 230
5.5.2, “Internet Key Exchange version 2 protocol” on page 231
5.5.3, “New cryptographic algorithms” on page 240
VPN is configurable by using IBM Navigator for i.
5.5.1 New commands for VPN management and configuration
Four new commands are provided in IBM i 7.2 to assist clients with VPN configuration and
management actions that were previously only possible through IBM Navigator for i:
Load/Unload IP Filter (LODIPFTR) CL command
The LODIPFTR CL command is used to load and unload the Internet Protocol (IP) filter
rules. The VPN rules that are included in the load or unload are the rules that are in the
following directory and are generated by IBM Navigator for i:
/QIBM/UserData/OS400/TCPIP/OPNAVRULES/VPNPOLICYFILTERS.I3P
Example 5-1 shows an example of using the LODIPFTR CL command load filter rules on all
interfaces, including VPN rules.
Example 5-1 Load filter rules on all interfaces, including VPN rules
LODIPFTR OPTION(*LOAD) LIND(*ALL)
STMF('/QIBM/UserData/OS400/TCPIP/PacketRules/test.i3p')
INCVPN(*YES)
Copy VPN Configuration File (CPYVPNCFGF) CL command
The CPYVPNCFGF CL command provides the following new functions to import, export, or
validate all VPN configurations on a system:
– When used to import, all of the VPN connections on the system, except the IBM
Universal Connection Wizard (UCW) connections QVPN01IBM1 and QVPN01IBM2,
are deleted and replaced with the imported configuration. The command cannot be
used to import or export individual connections. Importing the VPN configuration file
with CPYVPNCFGF does not import the filter rules. The filter rules must be re-created to
be used with the imported connections.
230 IBM i 7.2 Technical Overview with Technology Refresh Updates
– Exported VPN configuration information is stored in an XML file in the same schema
that is used by AIX, which creates instant cross-platform compatibility with AIX for VPN
configurations. AIX provides an XML schema mapping tool that can convert the AIX
XML schema to the Linux XML schema, providing the capability for cross-platform
compatibility with Linux.
– Another consideration for using CPYVPNCFGF is that you can create VPN configurations
on one system, then use CPYVPNCFGF to export the configuration to be distributed to
other systems. The XML VPN configuration file can be modified as necessary for
different systems and locations without requiring IBM Navigator for i to re-create the
configuration for each system.
– CPYVPNCFGF is a simple method that you can use to help debug VPN configuration
issues. The OPTION(*VALIDATE) parameter verifies whether the VPN configuration in
the stream file is correct. The exported configuration file can be used to confirm each
VPN connection’s configuration without using IBM Navigator for i.
Example 5-2 shows an example of exporting a VPN configuration to a stream file.
Example 5-2 Export a VPN configuration to a stream file
CPYVPNCFGF OPTION(*EXPORT) STMF('/mydir/vpncfg')
Retrieve TCP/IP Information (RTVTCPINF) and Update TCP/IP Information (UPDTCPINF) CL
commands
The RTVTCPINF and UPDTCPINF CL commands can be used in IBM i 7.2 to save and restore
the TCP/IP configuration of a system, which includes the VPN configuration files. In the
background, RTVTCPINF uses CPYVPNCFGF to retrieve the VPN configuration information.
For more information, see 5.7, “Retrieving and updating TCP/IP information” on page 244.
Also, see the “New IBM i 7.2 and 7.1 VPN Enhancements” post in the IBM Systems
Magazine i Can, Technical Tips for i blog:
http://www.ibmsystemsmag.com/ibmi/administrator/networks/i71-i72-vpn-enhancemen
ts/
Start VPN Connection (STRVPNCNN) and End VPN Connection (ENDVPNCNN) CL commands
The STRVPNCNN and ENDVPNCNN CL commands start and end VPN connections (see
Example 5-3).
Example 5-3 Start and end a VPN connection
STRVPNCNN CNN(conn1)
ENDVPNCNN CNN(conn1)
5.5.2 Internet Key Exchange version 2 protocol
The Internet Key Exchange (IKE) version 2 (IKEv2) protocol is an enhancement to the
Internet Key Exchange protocol and is supported starting in IBM i 7.1. IKEv2 enhances the
function of performing dynamic key exchange and partner authentication for VPN. IKEv2
simplifies the message flow for key exchange negotiations and introduces measures to fix
ambiguities and vulnerabilities that are inherent in IKE version 1 (IKEv1). IKEv2 is the basis
for future enhancements to the key exchange protocol for VPN. Despite the differences,
IKEv1 and IKEv2 both negotiate a security association (SA) to protect data between two
endpoints.
Chapter 5. Networking 231
IKEv2 configuration
IKEv2 has a minimal impact on IBM Navigator for i and current VPN configuration objects.
IBM i 7.1 or 7.2 is required to use an IKEv2 connection.
To enable IKEv2, complete the following steps:
1. From IBM Navigator for i, change the Internet Key Exchange version by clicking
Network → All Tasks → IP Policies → Virtual Private Networking → Secure
Connections → Connections, as shown in Figure 5-1. Then, on the Connections
window that is shown in the right pane, right-click All Connections and select Open.
Figure 5-1 Change the Internet Key Exchange version
232 IBM i 7.2 Technical Overview with Technology Refresh Updates
2. Click the All Connections tab, right-click the existing VPN connection, and select
Properties, as shown in Figure 5-2.
Figure 5-2 Select the VPN properties
3. From the Properties window, click the General tab to display or change the Internet Key
Exchange version, as shown in Figure 5-3.
Note: Key exchange and data policies can be used for either IKEv1 or IKEv2. If the key
exchange policy is used with IKEv2, the settings for main mode and aggressive mode
are ignored because they are valid only for IKEv1 negotiations.
Figure 5-3 Display the Internet Key Exchange version
Chapter 5. Networking 233
IKEv2 troubleshooting
Troubleshooting issues for IKEv2 connections is similar to troubleshooting issues for IKEv1
connections. The VPN jobs run in the subsystem QSYSWRK. VPN connection management
and IKEv1 processing are handled under the jobs QTOVMAN and QTOKVPNIKE. IKEv2
processing is handled under a new key manager job, QTOKVPNIK2. The VPN key manager
listens to UDP port 500 to perform the IKEv2 protocol processing. The logs for these jobs are
accessible from IBM Navigator for i or from the command-line interface (CLI).
IKEv2 uses the same diagnostic tools that are used for VPN in previous releases. The VPN
job logs for QTOVMAN, QTOKVPNIKE, and QTOKVPNIK2 display successes and failures
during connection negotiation, which can be analyzed for problems with VPN connections.
TRCTCPAPP *VPN traces the VPN connection manager and both key manager servers.
Separate trace files are created for the connection manager and key manager servers.
IBM i 7.2 IKEv2 enhancements
Here are the IKEv2 enhancements in IBM i 7.2:
NAT-compatible IPSec negotiation support
VPN support for network address translation traversal (NAT-T) is essential for IKE
negotiations across NAT devices because conventional NAT does not work with IPSec.
IBM i previously supported NAT-T for IKEv. IBM i 7.2 now supports NAT-T for IKEv2.
NAT-T uses UDP encapsulation to wrap an IPSec packet inside a IP/UDP header so that
the packet is correctly translated. This UDP encapsulation applies only to VPN
implementations that use IPSec encapsulating security payload (ESP) packets in tunnel
mode or transport mode. To enable NAT-compatible IPSec negotiation for IKEv2, use the
new option for IPSec through NAT in the VPN Properties window.
IKE_SA Rekey
Like IKEv1, the IKEv2 key negotiation operates in two phases. The IKE_SA rekey option
in IBM i 7.2 allows IKEv2 to regenerate the IKE_SA keys that are negotiated during the
first phase of the key exchange without doing a full reauthentication. The IKE_SA rekey
operation takes place as an independent exchange when one side determines the
IKE_SA has expired. A new IKE_SA key is regenerated in time for the rekey attempt of the
CHILD_SA, which is generated during the second phase negotiations. The key life times
of IKE_SA and CHILD_SA are managed independently of the peer system. To enable the
IKE_SA rekey, use the new rekey setting on the VPN Properties window.
HTTP certificate lookup by using a URL
IKE negotiation partners can send a URL link to a certificate being used to authenticate
the key exchange with the new HTTP lookup of certificates by using the URL option. The
purpose of using the URL lookup is to save bandwidth in the IKE negotiation payload.
IKEv2 on IBM i supports peers sending the URL lookup of certificates, but does not
implement sending a URL itself.
234 IBM i 7.2 Technical Overview with Technology Refresh Updates
Allowing URL lookup of certificates is enabled by default. To disable the URL lookup of
certificates, from Navigator for i, click Network → All Tasks → IP Policies → Virtual
Private Networking → Properties. See Figure 5-4.
Figure 5-4 VPN properties
On the Virtual Private Networking Properties window, clear the Allow HTTP lookup of
certificates sent by the remote system check box in the VPN Properties window. See
Figure 5-5.
Figure 5-5 VPN Properties window
Chapter 5. Networking 235
Elliptic Curve Digital Signature Algorithm (ECDSA)
IKE processing requires that both sides authenticate each other by using a negotiated
authentication method. Before IBM i 7.2, the two options for the authentication method
were pre-shared keys or public key cryptography with RSA authentication. ECDSA
signatures are available in IBM i 7.2 as a third method for authentication. ECDSA
signatures are smaller than RSA signatures of similar strength. IKE authentication
methods in key exchange policies now support ECDSA-256, ECDSA-384, and
ECDSA-521 in addition to pre-shared keys and public key cryptography with RSA. See
Figure 5-6.
Figure 5-6 Specify the ECDSA authentication method
Port range support
Users can specify and negotiate a range of ports for the destination and source when defining
the data endpoints of a VPN connection. Filter rules also allow a port range to be specified for
the destination and source ports. See Example 5-4.
Example 5-4 Filter rules
FILTER SET porttest ACTION = PERMIT DIRECTION = INBOUND SRCADDR = *6 DSTADDR = *6
PROTOCOL = TCP
DSTPORT = 300-400 SRCPORT = 100-200 JRN = OFF
FILTER_INTERFACE LINE = ETHLINE SET = porttest
236 IBM i 7.2 Technical Overview with Technology Refresh Updates
Using the IBM Navigator for i to create a connection
To create a connection from Navigator for i, click Network → All Tasks → IP Policies →
Virtual Private Networking → Create Connection, as shown in Figure 5-7. Follow the
prompts to set up a new VPN connection and select a port range when you get to the window
to define your services.
Figure 5-7 IKEv2 port configuration
Chapter 5. Networking 237
Using the IBM Navigator for i to set the port range
Users can specify and negotiate a range of ports for the destination and source when defining
the data endpoints of a VPN connection. Filter rules also allow a port range to be specified for
the destination and source ports.
To do this task, complete the following steps:
1. From Navigator for i, click Network → All Tasks → IP Policies → Virtual Private
Networking → Secure Connections → Connections, and then right-click All
Connections and select Open, as shown in Figure 5-8.
Figure 5-8 Select all VPN connections
238 IBM i 7.2 Technical Overview with Technology Refresh Updates
2. To set the port range for the local or remote endpoints, from the All Connections tab,
right-click the existing VPN connection and select Properties, as shown in Figure 5-9.
Figure 5-9 Select the VPN connection properties
3. From the VPN Properties window, the ports on the Services tab are shown. See
Figure 5-10.
Figure 5-10 VPN properties: port range
Chapter 5. Networking 239
5.5.3 New cryptographic algorithms
Stronger encryption and integrity algorithms might be required for VPN compliance with
security policies. These algorithms are available for both IKEv1 and IKEv2 negotiations
starting with IBM i 7.1. Additional algorithms are provided in IBM i 7.2 for IKEv2 negotiations
for further flexibility and interoperability. The new cryptographic algorithms are listed in the
following tables. Table 5-1 lists the new key exchange policy algorithms.
Table 5-1 New key exchange policy algorithms
Algorithm type Algorithm IBM i 7.1 IBM i 7.2
IKEv1 IKEv2 IKEv1 IKEv2
Encryption AES-CBC (128-bit) X X X X
Confidentiality algorithms that are used
to encrypt the data. AES-CBC (192- and 256-bit) X
AES-CTR (128-, 192-, and 256-bit) X
Hash AES-XCBC-MAC X X X X
Integrity algorithms that are used to (Hash 96-bit/PRF 128-bit)
protect data against tampering.
HMAC-SHA-256 X X X X
Pseudo Random Function (PRF)
HMAC-SHA-384 X
Used for generating keying material and
authentication of the IKE SA. HMAC-SHA-512 X
Diffie-Hellman Group 14 (2048-bit MODP) X X X X
Used to generate a shared secret key to
encrypt further IKE communications. Group 24 (4096-bit MODP) X X X X
Group 19 (256-bit ECP) X
Group 20 (384-bit ECP) X
Table 5-2 lists the new data policy algorithms.
Table 5-2 New data policy algorithms
Algorithm type Algorithm IBM i 7.1 IBM i 7.2
IKEv1 IKEv2 IKEv1 IKEv2
Encryption 3DES-CBC X
Confidentiality algorithms that are used
to encrypt the data. AES-CBC (128-, 192-, and 256-bit) X
AES-GCM (128-, 192-, and 256-bit) X
AES-CCM (128-, 192-, and 256-bit) X
AES-GCM (128-, 192-, and 256-bit) X
AES-GMAC (128-, 192-, and X
256-bit)
Authentication AES-XCBC-MAC X X X X
Method that is used to verify the identity
of each peer (pre-shared keys, RSA HMAC-SHA-256 X X X X
authentication, and ECDSA
HMAC-SHA-384 X
authentication).
HMAC-SHA-512 X
240 IBM i 7.2 Technical Overview with Technology Refresh Updates
Algorithm type Algorithm IBM i 7.1 IBM i 7.2
IKEv1 IKEv2 IKEv1 IKEv2
Diffie-Hellman for Perfect Forward Group 14 (2048-bit MODP) X X X X
Secrecy (PFS)
The group that is used to generate Group 24 (4096-bit MODP) X X X X
random public keys when negotiating the
Group 19 (256-bit ECP) X
IPSec SA to ensure that it is not derived
from any other secret. Group 20 (384-bit ECP) X
Note: The pre-existing algorithms are still supported for use with VPN. However, the new
key exchange and data policy encryption and hash algorithms are recommended over the
older algorithms that are listed in Table 5-3.
Table 5-3 Legacy key exchange and data policy algorithms
Algorithm type Algorithm IBM i 7.1 IBM i 7.2
IKEv1 IKEv2 IKEv1 IKEv2
Encryption DES X X X X
Confidentiality algorithms that are used to encrypt the
data. RC4 X X X X
RC5 X X X X
Hash MD5 X X X X
Integrity algorithms that are used to protect data
against tampering. Pseudo Random Function (PRF) is
used for generating keying material and authentication
of the IKE SA.
5.6 Virtual local area network
IBM i now supports IEEE 802.1Q virtual local area network (VLAN) tagging to allow access to
multiple VLANs on a single adapter.
A VLAN allows a single LAN to be subdivided so that broadcast and multicast traffic that is
targeted to a specific VLAN is not seen or processed by other systems on that LAN that are
not part of the same VLAN. This technology provides performance improvement and an
isolation level, which improves security. With VLAN support, it is possible to assign configured
IP interfaces to a particular VLAN and access multiple VLANs with a single adapter.
IBM i TCP/IP Virtual LAN support now allows you to use a single adapter to connect to
multiple VLANs and supports the following functions:
Add redundant network connections without adding additional adapters.
Connect to a new network VLAN without adding another adapter.
Supported by all IBM i Ethernet and Virtual Ethernet adapters.
Supported for IPv4 and IPv6 IBM i VLAN configurations.
Chapter 5. Networking 241
IBM i VLAN configuration can be done from either IBM Navigator for i or by running
commands. For more information, see 5.6.1, “VLAN configuration by using IBM Navigator for
i” on page 242.
5.6.1 VLAN configuration by using IBM Navigator for i
To configure VLAN by using IBM Navigator for i, click Network → TCP/IP Configuration →
IPv4 → IPv4 Interfaces. From the Actions menu, select New Interface → Local Area
Network, as shown in Figure 5-11.
Figure 5-11 IBM i VLAN configuration
Figure 5-12 shows an example of a VLAN configuration in IBM Navigator for i.
Figure 5-12 IBM i VLAN configuration in IBM Navigator for i
242 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 5-13 shows the new VLAN ID column in the interfaces list in IBM Navigator for i.
Note: Interfaces that use native VLAN (for example, 192.168.31.12, as shown in
Figure 5-13) are configured with no VLAN identifier.
Figure 5-13 New VLAN ID column in the IBM Navigator for i Interfaces list to display VLAN ID assignments
5.6.2 VLAN configuration by using CL commands
Use the Add TCP/IP Interface (ADDTCPIFC) command to do a VLAN configuration. For
example:
ADDTCPIFC INTNETADR('192.168.41.62') LIND(ETH2 3) SUBNETMASK('255.255.255.0')
As shown in Figure 5-14, the NETSTAT (CL command) interface list also displays the VLAN ID.
You must press F11 to display the VLAN ID.
Work with TCP/IP Interface Status
System: UT30P05
Type options, press Enter.
5=Display details 8=Display associated routes 9=Start 10=End
12=Work with configuration status 14=Display multicast groups
Virtual
Internet Network Line LAN
Opt Address Address Description ID
9.5.10.216 9.5.19.0 ETHLINE *NONE
127.0.0.1 127.0.0.0 *LOOPBACK *NONE
192.168.1.12 192.168.1.0 VETH1 *NONE
192.168.31.12 192.168.31.0 ETH2 *NONE
192.168.31.62 192.168.31.0 ETH3 2
192.168.41.12 192.168.41.0 ETH3 *NONE
192.168.41.62 192.168.41.0 ETH4 3
Bottom
F3=Exit F9=Command line F11=Display Virtual LAN ID F12=Cancel
F13=Sort by column F20=Work with IPv6 interfaces F24=More keys
Figure 5-14 Work with TCP/IP Interface Status display showing the VLAN ID
VPN policy filters and IP packet rules use the format of linename.vlanid. For example, as
shown in Figure 5-14, ETH2.3 is VLAN ID 3 online description ETH2.
Chapter 5. Networking 243
Sockets APIs taking an interface name also use the format of linename.vlanid. For example:
if_nametoindex(“ETH2.3”)
fe80::1234%eth2.3 (IPv6 link-local address with scope identifier)
Note: If VLANs are used, do not use line description names with periods. For example,
with two line descriptions of ETH2.3 and ETH2, VPN and sockets interpret ETH2.3 as line
ETH2.3 rather than VLAN 3 online ETH2.
5.7 Retrieving and updating TCP/IP information
The following new commands are available to save and restore the sets of configuration files
and settings that are used by the IBM i TCP/IP configuration and selected TCP/IP application
servers:
Retrieve TCP/IP Information (RTVTCPINF)
Update TCP/IP Information (UPDTCPINF)
These commands help address the complexities of managing TCP/IP and application server
configuration files. The new commands are modeled from the Retrieve System Information
(RTVSYSINF) and Update System Information (UPDSYSINF) CL commands, which perform a
similar function for general system information.
5.7.1 Retrieve TCP/IP Information (RTVTCPINF) CL command
The Retrieve TCP/IP Information (RTVTCPINF) CL command retrieves selected TCP/IP
configuration and application information. The retrieved information is stored as save files and
user spaces in a user-selected library.
The RTVTCPINF CL command allows for easy backup of TCP/IP related information, which can
be restored later or propagated to another system.
5.7.2 Update TCP/IP Information (UPDTCPINF) CL command
The Update TCP/IP Information (UPDTCPINF) CL command updates selected TCP/IP
configuration and application information. This command uses objects that are generated by
the RTVTCPINF (CL command). This command provides a simple way to move application
configuration files from one system to another.
The following information types are supported by the UPDTCPINF (CL command):
TCP/IP configuration
Bootstrap protocol
Dynamic Host Configuration Protocol (DHCP)
File Transfer Protocol (FTP)
HTTP administration server
Internet daemon
IP packet filtering
Line printer daemon
NetServer
OMPROUTE daemon
Point-to-point
Post Office Protocol (POP)
Quality of service
244 IBM i 7.2 Technical Overview with Technology Refresh Updates
Remote execution
Router daemon
Simple Mail Transfer Protocol (SMTP)
Simple Network Management Protocol (SNMP)
Service and support proxy
Telnet
Trivial File Transfer Protocol (TFTP)
Virtual Private Network (VPN)
Note: User data for applications such as SMTP and POP is not supported. Only
configuration-related data for these servers is supported.
5.8 IPv6 proxy neighbor discovery for virtual Ethernet and PPP
The neighbor discovery (ND) proxy allows two separate links to operate as though nodes on
each link are on a single common link. This is similar to bridging two networks at the link layer,
but operates instead at the IP level. This allows nodes on different types of networks (for
example, Ethernet and PPP) to operate as though they are on the same network. The ND
proxy provides a function similar to the Transparent Subnet Proxy for IPv4, allowing virtual
Ethernet and point-to-point links to be proxied on a physical Ethernet link.
5.9 Single sign-on for FTP and TELNET
Single sign-on (SSO) for FTP and TELNET is described in 4.1, “Single sign-on” on page 210.
5.10 Virtual Network Interface Controller
Virtual Network Interface Controller (vNIC) is a new PowerVM virtual networking technology
that delivers enterprise capabilities and simplifies network management. It is a
high-performance, efficient technology that, when combined with single root I/O virtualization
(SR-IOV) NIC, provides bandwidth-control quality of service (QoS) capabilities at the virtual
NIC level.
vNIC reduces virtualization processing impact, which results in lower latencies and less
server resources (processor and memory) that are required for network virtualization. A vNIC
is a type of virtual Ethernet adapter that can be configured on client logical partitions. Each
vNIC is backed by an SR-IOV logical port that is owned by the VIOS. LAN console is
supported on Virtual Ethernet Adapter (VLAN). A virtual Ethernet adapter is defined by using
VIOS.
Chapter 5. Networking 245
Figure 5-15 shows the control and data flow differences between the current virtual Ethernet
and the new vNIC support.
VIOS LPAR 1 VIOS LPAR 2
LPAR A LPAR B LPAR A LPAR B
SEA Data Data Data Data
SR-IOV SR-IOV SR-IOV vNIC vNIC vNIC vNIC
Virtual Virtual Virtual
Logical Logical Logical Server Server Client Client
Adapter Adapter Adapter
Port Port Port Adapter Adapter Adapter Adapter
vSwitch
Power Hypervisor
Power Hypervisor
VF VF VF VF VF VF VF VF
Switch Switch Control Arrow
Data Flow
SR -IOV SR-IOV
Adapter Adapter
Virtual Ethernet (current) vNIC (new)
Figure 5-15 Comparison of virtual Ethernet and vNIC control and flows
For more information about vNIC, see the following website:
https://ibm.biz/Bdsx77
5.10.1 Configuring the quality of service priority for a virtual Ethernet adapter
You can dynamically configure the QoS priority of a virtual Ethernet adapter of a running
logical partition by using the HMC.
You can prioritize the logical partition network traffic by specifying the value of the IEEE
802.1Q priority level for each virtual Ethernet adapter. Table 5-4 lists the Virtual Ethernet QoS
priority level values.
Table 5-4 Virtual Ethernet QoS priority level values
VLAN user priority level Quality of service priority
0 (default) Best effort
1 Background
2 Spare
3 Excellent effort
4 Controlled load
5 Video < 100 ms latency and jitter
6 Video < 10 ms latency and jitter
7 Network control
246 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/P8DEA/p8hat/p8hat_configvirtethqost.htm
5.10.2 Viewing the vNIC properties by using the HMC
You can view the properties of a vNIC in a partition profile by using the HMC.
From the navigation pane, click Systems Management → Servers and select the name of
the managed system in the work pane. Click the logical partition whose partition profile you
want to view, and then click Tasks → Configuration → Manage Profiles → Partition
profile → Actions → Edit.
In the Logical Partition Profile Properties page, click the Virtual Adapters tab. If there are
vNICs in the profile, they are displayed.
In the Virtual NIC Adapter Properties window, you can view the following information in the
General tab:
Adapter ID
Type
Hosting VIOS
SR-IOV Adapter ID
SR-IOV Physical Port ID
SR-IOV Physical Port Label
SR-IOV Logical Port Capacity (%)
In the Virtual NIC Adapter Properties window, click the Advanced tab to view the following
items:
Port VLAN ID
PVID Priority
VLAN Restrictions
MAC Address
MAC Address Restrictions fields
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/8247-21L/p8hat/p8hat_viewvnicpro.htm
Chapter 5. Networking 247
5.10.3 Configuring the quality of service by using IBM Navigator for i
IBM Navigator for i provides an interface for the web-enabled IBM i management tasks to view
or change the QoS. To use it, click Network → All Tasks → IP Policies → Quality of
Service → Change Configuration. See Figure 5-16.
Figure 5-16 Configure the quality of service by using IBM Navigator for i
5.11 Ethernet device server support (WAN over LAN)
IBM i 7.2 added support for connections to Ethernet device servers, which are also known as
Ethernet serial servers or Ethernet terminal servers and are referred to as WAN over LAN.
These devices are external non-IBM equipment that are Ethernet-attached and contain one
or more serial ports to which external modems can be attached. A compatible Ethernet
device server must support RFC 2217, Telnet COM Port Control Protocol. An IBM i RFC 2217
session provides a virtual COM port for an Async or PPP line.
RFC 2217 is an extension of the Telnet Protocol that provides a method for device servers to
accept Telnet sessions and pass the Telnet data that is received to a COM port, and pass
data that is received from the COM port to the client. It also allows the device server to send
the client any serial line status changes, and allows the client to manage flow control with the
device server. It also allows a client to send configuration information to a device server.
Here are some benefits of the Ethernet device servers:
This new support for WAN over LAN asynchronous configurations expands advanced
virtualization capabilities.
Saves PCI slots for applications requiring a modem and therefore reduces configuration
cost.
Provides WAN connectivity for servers that do not have available PCIe slots.
248 IBM i 7.2 Technical Overview with Technology Refresh Updates
Allows IBM i client partitions with virtual I/O to use FAX and other WAN asynchronous
applications.
Allows the same Ethernet adapter that provides TCP/IP connectivity for an IBM i partition
to provide WAN asynchronous connectivity.
IBM i asynchronous applications that have traditionally run on PCIe WAN adapters now run
seamlessly over an Ethernet connection to an Ethernet device server without application
changes. For an existing IBM i configuration definition, the only change is that the Async or
PPP line description must be modified to specify that it is for an Ethernet device server, and
specify the Ethernet device server IP address and port. IBM i clients requiring many serial
ports or running on systems without PCIe adapter slots (such as IBM PureSystems® or
BladeCenter devices) now can run IBM i Communication Applications on their systems.
A compatible Ethernet device server must support RFC 2217. An IBM i RFC 2217 session
provides a virtual COM port for an Async or PPP line. Ethernet device servers with RFC 2217
support are available from various vendors, in models containing 1 - 48 serial ports. IBM i has
been tested with the following Ethernet device servers:
Digi PortServer TS 4 (firmware version 82000747_V2 01/29/2013).
Perle IOLAN SDS4 (firmware version 4.5) Ethernet device servers. Each serial port on an
Ethernet device server has an assigned TCP port number.
Facsimile Support for IBM i has been tested with the MT9234ZBA modem attached to
these Ethernet device servers.
Figure 5-17 shows the WAN over LAN configuration.
Figure 5-17 WAN over LAN
Ethernet device servers typically provide a web-based interface for configuration and
management. For example, if a Digi PortServer has an IP address of 9.5.80.73, then
entering http://9.5.80.73 in a web browser accesses the configuration and management
interface. A specific serial port is accessed by establishing a Telnet session to the Ethernet
device server IP address and the TCP port number that is assigned to the serial port, for
example, 9.5.80.73:2001.
Chapter 5. Networking 249
Here are the WAN over LAN requirements:
Ethernet device server to support RFC 2217, COM Port Control Protocol for transport of
serial data and RS-232 control signals
IBM i 7.2 PTFs:
– 5770SS1 PTF SI54771 or supersede
– 5770999 PTF MF57686 or supersede
PTFs for Licensed Product 5798FAX V5R8M0:
– SI54319 or supersede
– SI52896 or supersede
Note: Fax Support 5798-FAX V5R8M0 also works on V7R1, but does not support the
*ETHDEVSRV resource name.
Figure 5-18 shows an example of using the Create Line Description (CRTLINASC) CL
command to configure a WAN over LAN line description.
Create Line Desc (Async) (CRTLINASC)
Type choices, press Enter.
Line description . . . . . . . . FAXLINE Name
Resource name . . . . . . . . . *ETHDEVSVR Name, *ETHDEVSVR
Online at IPL . . . . . . . . . *YES *YES, *NO
Connection type . . . . . . . . *NONSWTPP *NONSWTPP, *SWTPP...
Switched network backup . . . . *NO *NO, *YES
Data bits per character . . . . 8 8, 7
Type of parity . . . . . . . . . *NONE *NONE, *ODD, *EVEN
Stop bits . . . . . . . . . . . 1 1, 2
Duplex . . . . . . . . . . . . . *FULL *FULL, *HALF
Echo support . . . . . . . . . . *NONE *NONE, *ALL, *CNTL
Line speed . . . . . . . . . . . 1200 50, 75, 110, 150, 300, 600...
Modem type supported . . . . . . *NORMAL *NORMAL, *V54, *IBMWRAP
Remote internet address ___________
Remote port. . . . . . . . . . . ___________ 1-65535
Maximum buffer size . . . . . . 896 128-4096
More...
F3=Exit F4=Prompt F5=Refresh F10=Additional parameters F12=Cancel
F13=How to use this display F24=More keys
Figure 5-18 Create a WAN over LAN line description by using the CRTLINASC CL command
250 IBM i 7.2 Technical Overview with Technology Refresh Updates
6
Chapter 6. High availability
This chapter describes the enhancements to IBM PowerHA SystemMirror® for i and related
high availability functions in IBM i 7.2.
This chapter describes the following topics:
6.1, “Introduction to IBM PowerHA SystemMirror for i” on page 252
6.2, “IBM PowerHA SystemMirror for i enhancements” on page 253
6.3, “Administrative domain” on page 261
6.4, “Independent Auxiliary Storage Pools” on page 262
6.5, “Support for SAN Volume Controller and Storwize HyperSwap volumes” on page 267
For more information about the IBM i 7.2 high availability enhancements, see the IBM i
Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#/wiki/IBM%20PowerH
A%20SystemMirror%20for%20i/page/PowerHA%20SystemMirror%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 251
6.1 Introduction to IBM PowerHA SystemMirror for i
To realize a high availability (HA) and a disaster recovery (DR) IBM i environment, IBM
provides PowerHA SystemMirror for i. PowerHA SystemMirror for i provides a
hardware-based (disk-level) data and application resiliency solution that is an integrated
extension of the IBM i operation-system and storage-management architecture, as shown in
Figure 6-1
PowerHA SystemMirror for i also supports IBM i replication (Geographic Mirroring) and
external storage, such as IBM DS8000, IBM Storwize, and SAN Volume Controller replication.
PowerHA SystemMirror for i offers solutions covering a simple data center to a multiple-site
configuration, enables 24 x 7 operational availability, and provides automation for planned
and unplanned outages.
Figure 6-1 PowerHA SystemMirror for i architecture
The levels of the replication technology by PowerHA SystemMirror for i are divided into five
levels, as described in Figure 6-2 on page 253:
Level 1 technology is one-site shared-storage technology. The solution in this level is
called LUN-level switching. LUN-level switching supports DS8000, Storwize, and SAN
Volume Controller.
Level 2 is one-site replication technology. IBM i based second-level replication is realized
by Synchronous Geographic Mirroring. An external storage-based replication is realized
by Metro Mirror. These two level technologies are applied as a high availability solution
for a simple data center.
Level 3 of the replication technology is two-site replication. This level is achieved by
asynchronous replication technology, namely Asynchronous Geographic Mirroring as an
IBM i based technology and Global Mirror as an external storage-based technology.
252 IBM i 7.2 Technical Overview with Technology Refresh Updates
Level 4 is a two-site HA and DR configuration. This level is accomplished by combining
Level 1 technology and Level 3 technology. On the production site, one storage is shared
by a production system and an HA standby system. When the outage of the production
system occurs, the storage is switched to the HA standby system. When the production
site shutdown occurs, the DR standby system is raised to a primary node by role
swapping.
Level 5 is three-site replication. This configuration is a combination of Level 2 and Level 3
technologies. By aligning the HA standby system with the different site from the production
site, a higher level of availability can be accomplished than by Level 4 technology. This
level is supported only on DS8000.
Figure 6-2 PowerHA SystemMirror for i Replication levels of replication technology
For more information about PowerHA SystemMirror for i, see PowerHA SystemMirror for IBM
i Cookbook, SG24-7994.
6.2 IBM PowerHA SystemMirror for i enhancements
This section describes the following IBM i 7.2 enhancements for IBM PowerHA SystemMirror:
6.2.1, “PowerHA SystemMirror for i packaging” on page 254
6.2.2, “DS8000 HyperSwap support with PowerHA for i 7.2 Express Edition” on page 254
6.2.3, “Support for SVC/Storwize Global Mirror with Change Volumes” on page 257
6.2.4, “GUI changes in IBM Navigator for i” on page 258
6.2.5, “Minimum cluster and PowerHA versions for upgrading nodes to IBM i 7.2” on
page 258
6.2.6, “DS8000 IASP-based HyperSwap Technology Preview” on page 259
Chapter 6. High availability 253
6.2.1 PowerHA SystemMirror for i packaging
In IBM i 7.2, PowerHA SystemMirror for i has the following three editions:
Enterprise Edition (5770-HAS Option 1)
Standard Edition (5770-HAS Option 2)
Express Edition (5770-HAS Option 3)
Enterprise Edition has a multiple-site DR solution, and Standard Edition is for a simple data
center HA solution. Both of these editions are available in IBM i 7.1. In IBM i 7.2, Express
Edition was added to the lineup of PowerHA SystemMirror for i.
6.2.2 DS8000 HyperSwap support with PowerHA for i 7.2 Express Edition
With PowerHA SystemMirror for i 7.2, the first stage of the Express Edition offering enables
single-node, full-system IBM HyperSwap® with the DS8700 system (or above). This provides
customers with continuously available storage through either planned or unplanned storage
outage events.
HyperSwap provides an instant switching capability between DS8000 servers that use Metro
Mirror. After HyperSwap is configured, switching occurs automatically if there is a DS8000
outage with no downtime. There is also a command that is available for switching a storage
node, which provides for planned outage events on the DS8000 side, as shown in Figure 6-3.
Figure 6-3 PowerHA SystemMirror for i Express Edition with DS8000 HyperSwap
To configure PowerHA SystemMirror for i Express Edition with DS8000 HyperSwap, complete
the following steps:
1. Create LUNs (Logical Unit Numbers) on the source DS8000 system.
2. Assign LUNs on the source DS8000 system to the IBM i system.
3. Create LUNs on the target DS8000 system.
254 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: Do not assign target LUNs to the IBM i system until after Metro Mirror is
configured on the DS8000 side.
4. Configure Metro Mirror between the source and target DS8000 systems.
5. Assign the LUNs on the target DS8000 system to the same IBM i system.
6. Verify the HyperSwap configuration with the Display HyperSwap Status (DSPHYSSTS) CL
command.
Figure 6-4 shows an example of result of the DSPHYSSTS CL command. The direction of arrows
in the Copy Status column indicates the direction of mirroring between LUNs.
Display HyperSwap Status Y319BP17
10/15/14 12:18:04
Volume Copy Volume
Resource Identifier Status Resource Identifier
DMP366 IBM.2107-75TT911/3F00 ---> DMP004 IBM.2107-75BPF81/3D00
DMP006 IBM.2107-75TT911/3F01 ---> DMP005 IBM.2107-75BPF81/3D01
DMP013 IBM.2107-75TT911/3F02 ---> DMP007 IBM.2107-75BPF81/3D02
DMP369 IBM.2107-75TT911/3F03 ---> DMP009 IBM.2107-75BPF81/3D03
DMP371 IBM.2107-75TT911/3F04 ---> DMP010 IBM.2107-75BPF81/3D04
DMP373 IBM.2107-75TT911/3F05 ---> DMP011 IBM.2107-75BPF81/3D05
DMP376 IBM.2107-75TT911/3F06 ---> DMP012 IBM.2107-75BPF81/3D06
DMP393 IBM.2107-75TT911/3F07 ---> DMP014 IBM.2107-75BPF81/3D07
DMP380 IBM.2107-75TT911/3F08 ---> DMP016 IBM.2107-75BPF81/3D08
DMP395 IBM.2107-75TT911/3F09 ---> DMP017 IBM.2107-75BPF81/3D09
DMP384 IBM.2107-75TT911/3F0A ---> DMP018 IBM.2107-75BPF81/3D0A
DMP386 IBM.2107-75TT911/3F0B ---> DMP020 IBM.2107-75BPF81/3D0B
DMP388 IBM.2107-75TT911/3F0C ---> DMP021 IBM.2107-75BPF81/3D0C
DMP390 IBM.2107-75TT911/3F0D ---> DMP023 IBM.2107-75BPF81/3D0D
DMP392 IBM.2107-75TT911/3F0E ---> DMP025 IBM.2107-75BPF81/3D0E
More...
Press Enter to continue
F3=Exit F5=Refresh F11=View 2 F12=Cancel
Figure 6-4 Results of the Display HyperSwap Status (DSPHYSSTS) CL command
The Change HyperSwap Status (CHGHYSSTS) CL command that is shown in Figure 6-5 can be
used for suspending and resuming mirror operations between a storage node and for
switching a storage node manually. This solution can also be used for planned outage events
on a storage node side.
Change HyperSwap Status (CHGHYSSTS)
Type choices, press Enter.
Option . . . . . . . . . . . . . *STOP, *START, *SWAP
Figure 6-5 Change HyperSwap Status (CHGHYSSTS) CL command prompt
Chapter 6. High availability 255
When you suspend mirroring by running the CHGHYSSTS CL command, the Copy Status
column in DSPHYPSTS panel changes from ‘--->’ to ‘-\->’, as shown in Figure 6-6.
Display HyperSwap Status Y319BP17
10/15/14 12:19:11
Volume Copy Volume
Resource Identifier Status Resource Identifier
DMP366 IBM.2107-75TT911/3F00 -\-> DMP004 IBM.2107-75BPF81/3D00
DMP006 IBM.2107-75TT911/3F01 -\-> DMP005 IBM.2107-75BPF81/3D01
DMP013 IBM.2107-75TT911/3F02 -\-> DMP007 IBM.2107-75BPF81/3D02
DMP369 IBM.2107-75TT911/3F03 -\-> DMP009 IBM.2107-75BPF81/3D03
DMP371 IBM.2107-75TT911/3F04 -\-> DMP010 IBM.2107-75BPF81/3D04
DMP373 IBM.2107-75TT911/3F05 -\-> DMP011 IBM.2107-75BPF81/3D05
DMP376 IBM.2107-75TT911/3F06 -\-> DMP012 IBM.2107-75BPF81/3D06
DMP393 IBM.2107-75TT911/3F07 -\-> DMP014 IBM.2107-75BPF81/3D07
DMP380 IBM.2107-75TT911/3F08 -\-> DMP016 IBM.2107-75BPF81/3D08
DMP395 IBM.2107-75TT911/3F09 -\-> DMP017 IBM.2107-75BPF81/3D09
DMP384 IBM.2107-75TT911/3F0A -\-> DMP018 IBM.2107-75BPF81/3D0A
DMP386 IBM.2107-75TT911/3F0B -\-> DMP020 IBM.2107-75BPF81/3D0B
DMP388 IBM.2107-75TT911/3F0C -\-> DMP021 IBM.2107-75BPF81/3D0C
DMP390 IBM.2107-75TT911/3F0D -\-> DMP023 IBM.2107-75BPF81/3D0D
DMP392 IBM.2107-75TT911/3F0E -\-> DMP025 IBM.2107-75BPF81/3D0E
More...
Press Enter to continue
F3=Exit F5=Refresh F11=View 2 F12=Cancel
Figure 6-6 DSPHYSSTS CL command when mirroring is suspended
HyperSwap also can be combined with IBM i Live Partition Mobility (LPM), as shown in
Figure 6-7 on page 257. By using HyperSwap with LPM, you can realize a minimal downtime
solution to migrate from one server/storage combination to another.
256 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 6-7 HyperSwap with Live Partition Mobility
After the affinity between a Power Systems server and a DS8000 server is defined, moving a
partition by LPM also triggers switching a DS8000 server by HyperSwap when appropriate.
To define the affinity between a Power Systems server and a DS8000 server, run the Add
HyperSwap Storage Desc (ADDHYSSTGD) CL command, as shown in Figure 6-8.
Add HyperSwap Storage Desc (ADDHYSSTGD)
Type choices, press Enter.
System Serial Number . . . . . . Character value
IBM System Storage device . . .
Figure 6-8 Add HyperSwap Storage Desc (ADDHYSSTGD) CL command prompt
For more information about how to configure and manage the PowerHA SystemMirror for i
with a HyperSwap environment, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Power
HA%20SystemMirror%20for%20i/page/7.2%20Enhancements
6.2.3 Support for SVC/Storwize Global Mirror with Change Volumes
IBM PowerHA SystemMirror for i supports Global Mirror with Change Volumes (GCMV) of
SAN Volume Controller and Storwize by applying a PTF. Here are the PTFs for each release
of IBM PowerHA SystemMirror for i Version 7 supporting this enhancement:
5770HAS V7R1M0 SI52687
5770HAS V7R2M0 SI53476
Chapter 6. High availability 257
GMCV was introduced in Version 6.3 for SAN Volume Controller and Storwize. Before this
release, Global Mirror ensured a consistent copy on the target side, but the recovery point
objective (RPO) was not tunable.
This solution requires enough bandwidth to support the peak workload. GMCV uses
IBM FlashCopy® internally to ensure the consistent copy, but offers a tunable RPO, called a
cycling period. GMCV can be appropriate when bandwidth is an issue, although if bandwidth
cannot support the replication, the cycling period might need to be adjusted from seconds up
to 24 hours.
Configuring GMCV is done from the SAN Volume Controller / Storwize user interface or
Global Mirror. After the required PTFs are applied, IBM PowerHA SystemMirror for i
recognizes that GMCV is configured and manages the replication environment.
For more information about Global Mirror with Change Volumes, see IBM System Storage
SAN Volume Controller and Storwize V7000 Replication Family Services, SG24-7574.
6.2.4 GUI changes in IBM Navigator for i
In IBM Navigator for i, the High Availability Solution Manager GUI and the Cluster Resource
Services GUI were removed. Alternatively, the PowerHA GUI can be used for configuring and
managing a high availability environment, as shown in Figure 6-9.
Figure 6-9 PowerHA GUI in IBM Navigator for i
6.2.5 Minimum cluster and PowerHA versions for upgrading nodes to IBM i 7.2
When upgrading an existing IBM i cluster node to IBM i 7.2, you must consider the version of
the cluster and PowerHA. In IBM i 7.2, the cluster version is 8 and the PowerHA version is 3.0,
as shown in Figure 6-10 on page 259. The Change Cluster Version (CHGCLUVER) CL command
can be used to adjust the cluster and PowerHA versions.
258 IBM i 7.2 Technical Overview with Technology Refresh Updates
Display Cluster Information
Cluster . . . . . . . . . . . . . . . . : CLUSTER
Consistent information in cluster . . . : Yes
Current PowerHA version . . . . . . . . : 3.0
Current cluster version . . . . . . . . : 8
Current cluster modification level . . . : 0
Configuration tuning level . . . . . . . : *NORMAL
Number of cluster nodes . . . . . . . . : 2
Number of device domains . . . . . . . . : 0
Number of administrative domains . . . . : 0
Number of cluster resource groups . . . : 0
Cluster message queue . . . . . . . . . : *NONE
Library . . . . . . . . . . . . . . . : *NONE
Failover wait time . . . . . . . . . . . : *NOWAIT
Failover default action . . . . . . . . : *PROCEED
Press Enter to continue.
F1=Help F3=Exit F5=Refresh F7=Change versions F8=Change cluster
F12=Cancel F13=Work with cluster menu
Figure 6-10 Display Cluster Information CL command showing the cluster and PowerHA versions
6.2.6 DS8000 IASP-based HyperSwap Technology Preview
In IBM i 7.2, the PowerHA SystemMirror for i product supports full system DS8000
HyperSwap as part of the Express Edition of PowerHA. This is not compatible with
IASP-based replication because the HyperSwap relationship is defined at the system level,
not at the ASP group level.
In a future IBM i 7.2 Technology Refresh, the HyperSwap relationship can be defined on an
ASP within the partition, allowing SYSBAS and the IASPs to be in separate HyperSwap
relationships.
A Technology preview of the IBM PowerHA SystemMirror for i IASP-based HyperSwap
function is now available to interested customers who meet the criteria.
Important: This function is available only through the Technology Preview program
currently.
Chapter 6. High availability 259
Figure 6-11 shows the general configuration of DS8000 IASP-based HyperSwap, where
SYSBAS and IASP can be defined in separate HyperSwap relationships.
P rod
D S-A D S-B
HA
*SY S B A S M etro *SY S B A S
M irror
M etro
IA S P IA S P
M irror
M etro
*S Y S B A S M irror *S YS B A S
Figure 6-11 DS8000 with IASP-based HyperSwap
With this support, HyperSwap can be used as near-zero downtime storage for outages. After
HyperSwap is configured, the application I/O can automatically switch to use the auxiliary
storage system if thee primary storage system fails, as shown in Figure 6-12.
Prod
DS-A DS-B
HA
*SYSB A S *SYSB A S
IA SP IA SP
*SYSB A S *SYSB A S
Figure 6-12 HyperSwarp automatically switches when a storage outage occurs
260 IBM i 7.2 Technical Overview with Technology Refresh Updates
If there is an operating system outage or disaster, PowerHA does a vary off/vary on of the
IASP and switches to the secondary site, as shown in Figure 6-13.
Prod
DS-A DS-B
Metro HA
*SYSBAS *SYSBAS
Mirror
Metro
IASP IASP
Mirror
Metro
*SYSBAS Mirror *SYSBAS
Figure 6-13 PowerHA vary off/vary on of the IASP and a switch of the connection to a secondary site
Live Partition Mobility (LPM) can be used with IASP- based HyperSwap to migrate a partition
to the secondary server due to a planned server outage or maintenance.
For more information about DS8000 HyperSwap with IASP Technology Preview, see the IBM
PowerHA SystemMirror for i wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Power
HA%20SystemMirror%20for%20i/page/IASP%20HyperSwap
6.3 Administrative domain
To maintain the consistency of objects in SYSBAS in a clustering environment, IBM i provides
the administrative domain function. This section covers the following enhancements of the
administrative domain in IBM i 7.2:
6.3.1, “Increased administrative domain limit” on page 261
6.3.2, “Synchronization of object authority and ownership” on page 262
For more information about the IBM PowerHA SystemMirror for i enhancements in IBM i 7.2,
see the IBM PowerHA SystemMirror for i wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Power
HA%20SystemMirror%20for%20i/page/7.2%20Enhancements
6.3.1 Increased administrative domain limit
Before IBM i 7.2, the supported number of monitored resources entries (MREs) was 25,000.
In IBM i 7.2, the number of MREs is increased to 45,000.
To maintain MREs, you can use the Work with Monitored Resources (WRKCADMRE) CL
command or PowerHA GUI in IBM Navigator for i.
Chapter 6. High availability 261
For more information about the WRKCADMRE CL command, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/wrkcadmre.htm
6.3.2 Synchronization of object authority and ownership
Object authority and ownership can be monitored and synchronized with the administrative
domain. The supported object attributes of these entries are object owner, authority entry,
authorization list, and primary group. If you add new MREs in the IBM i 7.2 administrative
domain, these four attributes are added by default. For existing MREs that were added with
*ALL attributes, these four attributes will be synchronized after upgrading the PowerHA
version to 3.0.
MREs are marked as inconsistent until a source node for the new attributes is determined. If
you want to synchronize these attributes instantly, run the Remove Admin Domain MRE
(RMVCADMRE) CL command followed by the Add Admin Domain MRE (ADDCADMRE) CL command
for the specific objects or you can use the PowerHA GUI in IBM Navigator for i, which enables
selecting a source node when synchronizing, as shown in Figure 6-14.
Figure 6-14 Manage MRE options in the IBM Navigator for i PowerHA GUI
For more information about the RMVCADMRE and ADDCADMRE CL commands, see IBM Knowledge
Center:
Remove Admin Domain MRE (RMVCADMRE) CL command:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/rmvcadmre.htm
Add Admin Domain MRE (ADDCADMRE) CL command:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/addcadmre.htm
6.4 Independent Auxiliary Storage Pools
This section describes the following enhancements that are related to Independent Auxiliary
Storage Pools (IASPs) in IBM i 7.2:
6.4.1, “DSPASPSTS improvements for better monitoring of vary-on time” on page 263
6.4.2, “Reduced UID/GID processing time during vary-on” on page 264
6.4.3, “IASP assignment for consolidated backups” on page 264
262 IBM i 7.2 Technical Overview with Technology Refresh Updates
6.4.1 DSPASPSTS improvements for better monitoring of vary-on time
The Display ASP Status (DSPASPSTS) CL command now can preserve and display up to 64
vary histories and show additional information, such as UDFS and STATFS. Figure 6-15
shows an example of the DSPASPSTS ENTRIES(*ALL) CL command, which lists several
histories of varying on and off an IASP.
Display ASP Vary Status
ASP Device . . . . : 033 IASP01 Current time . . . : 00:00:22
ASP State . . . . : AVAILABLE Previous time . . : 00:00:32
Step . . . . . . . : / 35 Start date . . . . : 10/14/14
Step Elapsed time
Cluster vary job submission
Waiting for devices - none are present 00:00:00
Waiting for devices - not all are present 00:00:00
DASD checker 00:00:00
Storage management recovery
Synchronization of mirrored data
Synchronization of mirrored data - 2 00:00:00
Scanning DASD pages
More...
Press Enter to continue
-------------------------------------------------------------------------------
Display ASP Vary Status
ASP Device . . . . : 033 IASP01 Current time . . . : 00:00:24
ASP State . . . . : VARIED OFF Previous time . . : 00:00:30
Step . . . . . . . : / 5 Start date . . . . : 10/14/14
Step Elapsed time
Cluster vary job submission 00:00:00
Ending jobs using the ASP
Waiting for jobs to end
Image catalog synchronization 00:00:03
Writing changes to disk 00:00:21
Bottom
Press Enter to continue
Figure 6-15 Display ASP Vary Status CL command displaying records of previous varying operations
Chapter 6. High availability 263
Figure 6-16 shows an example of displaying UDFS information by using the Display
User-Defined FS (DSPASPSTS) CL command.
For more information about the DSPASPSTS CL command, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/dspaspsts.htm
Display User-Defined FS
User-defined file system . . . : /dev/IASP01/qdefault.udfs
Owner . . . . . . . . . . . . : QSYS
Coded character set ID . . . . : 37
Case sensitivity . . . . . . . : *MONO
Preferred storage unit . . . . : *ANY
Default file format . . . . . : *TYPE2
Default disk storage option . : *NORMAL
Default main storage option . : *NORMAL
Creation date/time . . . . . . : 10/14/14 13:27:15
Change date/time . . . . . . . : 10/14/14 13:27:15
Path where mounted . . . . . . : /IASP01
Description . . . . . . . . . :
Bottom
Press Enter to continue.
F3=Exit F12=Cancel
Figure 6-16 Display UDFS information by using the DSPASPSTS CL command
6.4.2 Reduced UID/GID processing time during vary-on
In IBM i 7.2, the processing time for /QSYS.LIB objects is eliminated and the processing time
for IFS objects is minimized during the vary-on of an IASP. In addition, the processing time for
correcting the mismatch of UID and GID is also reduced.
Note: It is still considered a preferred practice to synchronize the UID/GID between cluster
nodes by using the administrative domain to eliminate all UID/GID processing time during
vary-on.
6.4.3 IASP assignment for consolidated backups
In IBM i 7.2, an existing IASP that is not in the cluster device domain can be attached to a
partition. This enhancement provides a benefit to an environment that uses FlashCopy for
minimizing a backup window.
Before IBM i 7.2, an IASP as a FlashCopy target must be attached to a partition within the
cluster device domain. For the environment that is configured with multiple production
clusters and is using FlashCopy in each cluster, each cluster requires a backup partition for
attaching the FlashCopy target and must perform a backup operation on it. With this
enhancement, only one partition is needed as a backup partition for multiple different clusters,
as shown in Figure 6-17 on page 265.
264 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 6-17 Attach IASPs out of the cluster device domain to a single partition
Note: Only one IASP can be attached to a single backup partition at a time, and an IPL of
that partition is required before a different IASP is attached.
Before attaching a different IASP to a partition, remove any existing IASPs and run the
CFGDEVASP ASPDEV(*ALL) ACTION(*PREPARE) CL command that is shown in Figure 6-18 on
that partition and then perform an IPL.
Configure Device ASP (CFGDEVASP)
Type choices, press Enter.
ASP device . . . . . . . . . . . *ALL Name, *ALL
Action . . . . . . . . . . . . . *PREPARE *CREATE, *DELETE, *PREPARE
Figure 6-18 CFGDEVASP ASPDEV(*ALL) ACTION(*PREPARE) CL command
Chapter 6. High availability 265
After the IPL completes, a FlashCopy IASP can be recognized on a single backup partition by
connecting it. Figure 6-19 shows the direct-attached IASP disk units panel of SST of a single
backup partition. In Figure 6-19, disk unit DD003 is the target FlashCopy LUN that contains
the IASP data on the production partition. By pressing Enter, the IASP, which consists of
DD003, is configured.
Confirm Configure IASPs
Press Enter to confirm Configure IASPs.
Press F12=Cancel to return.
Serial Resource Hot Spare
ASP Unit Number Type Model Name Protection Protection
1 Unprotected
1 Y9D7RD3HCKHG 6B22 050 DMP002 Unprotected N
70 Unprotected
4002 50-050340F 2107 A81 DD003 Unprotected N
Figure 6-19 Direct-attached IASP disk units panel of SST
Figure 6-20 shows the Display Disk Configuration Status panel of SST, which shows that the
IASP exists and that disk unit DD003 is assigned to it.
Display Disk Configuration Status
Serial Resource Hot Spare
ASP Unit Number Type Model Name Status Protection
1 Unprotected
1 Y9D7RD3HCKHG 6B22 050 DMP002 Configured N
70 Unprotected
4001 50-050340F 2107 A81 DD003 Configured N
Figure 6-20 'Display Disk Configuration Status panel of SST
For more information about multiple IASPs assignments to a single backup partition, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaly/rzalyattachiasp.htm
266 IBM i 7.2 Technical Overview with Technology Refresh Updates
6.5 Support for SAN Volume Controller and Storwize
HyperSwap volumes
IBM i 7.2 now supports the HyperSwap function of the IBM SAN Volume Controller and IBM
Storwize product family V5000 and V7000 hardware platform.
The HyperSwap function in the SAN Volume Controller software works with the standard
multipathing drivers that are available on a wide variety of host types that support Asymmetric
Logical Unit Access (ALUA).
The SCSI protocol allows a storage device to suggest to a host the preferred port to submit
I/O. By using the ALUA state for a volume, a storage controller can know which path is active
and which path is preferred for the host.
A quorum disk is required for the SAN Volume Controller HyperSwap configuration to provide
two functions:
Act as a tiebreaker in split-brain scenarios.
Save critical configuration metadata.
The SAN Volume Controller quorum algorithm distinguishes between the active quorum disk
and quorum disk candidates. There are three quorum disk candidates. At any time, only one
of these candidates acts as the active quorum disk. All three quorum disks store configuration
metadata, but only the active quorum disk acts as a tiebreaker for split-brain scenarios.
Figure 6-21 show the general setup of the Storwize HyperSwap implementation.
Figure 6-21 HyperSwap general setup
Chapter 6. High availability 267
For more information, see IBM SpectrumVirtualize HyperSwap configuration, found at:
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP102538
268 IBM i 7.2 Technical Overview with Technology Refresh Updates
7
Chapter 7. Backup and recovery
This chapter describes the following enhancements to the backup and recovery functions in
IBM i 7.2:
7.1, “Hardware support and connectivity” on page 270
7.2, “General save and restore functions” on page 272
7.3, “Backup, Recovery, and Media Services” on page 277
For more information about the IBM i 7.2 backup and recovery enhancements, see the IBM i
Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#/wiki/IBM%20Backup
%2C%20Recovery%20and%20Media%20Services%20%28BRMS%29%20for%20i/page/Enhancements
© Copyright IBM Corp. 2015, 2016. All rights reserved. 269
7.1 Hardware support and connectivity
The following hardware and connectivity topics are covered in this section:
7.1.1, “Support for IBM 3592-E08 tape drive” on page 270
7.1.2, “Support for LTO Ultrium 7 tape drive” on page 271
7.1.3, “SAN multipath and automatic fail-over support for tape drives” on page 272
7.1.1 Support for IBM 3592-E08 tape drive
IBM has released a new tape drive 3592 model E08 (3592-E08), which is also called the
TS1150 tape drive or Jaguar-5 drive. It is supported in IBM i 7.2 for backup and recovery
purposes, which allows improvements in capacity, performance, and functions.
Table 7-1 lists the general specifications of the 3592-E08 tape drive as compared to previous
models.
Table 7-1 3592-E08 tape drive specifications as compared to previous models
3592 model Jag-1 3592 Jag-2 TS1120 Jag-3 TS1130 Jag-4 TS1140 Jag-5 TS1150
Maximum 300 GB 700 GB 1.0 TB 4.0 TB 8 - 10 TB
cartridge
capacity
Data rate 40 MBps 100 MBps 160 MBps 250 MBps Up to 360 MBps
Cartridge JA/JJ/JW/ JA/JJ/JW/ JA/JJ/JW/ JA/JJ/JW/
support JR JR/JB/JX JR/JB/JX JR/JB/JX
JC/JY/JK JC/JY/JK
JD/JZ/JL
Encryption N/A Yes Yes Yes Yes
Partitioning / N/A N/A N/A Yes Yes
LTFS
Server Fibre Fibre Fibre Fibre Fibre
attachment IBM FICON® FICON FICON FICON FICON
ESCON ESCON ESCON ESCON
Media types
The IBM TS1150 tape drive introduces the following new media types:
IBM 3592 Advanced Data Cartridge, Type D (JD)
– Read/Write (R/W) Data Media
– Up to 10 TB native capacity
IBM 3592 Advanced WORM Cartridge, Type D (JZ)
– Write-Once Read-Many (WORM) Media
– Up to 10 TB native capacity
IBM 3592 Economy Cartridge, Type D (JL)
– Read/Write (R/W) Data Media
– Up to 2 TB native capacity
In addition to new media types, the following two new logical formats are also introduced:
Jag-5 or EFMT5 for Base Jaguar 5 logical format
Jag-5 or EEFMT5 for Encrypted Jaguar 5 logical format
270 IBM i 7.2 Technical Overview with Technology Refresh Updates
Media compatibility
The overall media support for 3592-E08 includes the following items:
JD, JZ, and JL media types with Read/Write support in the new Jag-5
JC/JY/JK (Type C) media types with Read/Write support in Jag-5 format at improved
capacity and performance
JC/JY/JK (Type C) media types with Read/Write support in Jag-4 format
Important: The JA and JB media types (including short and WORD versions) are not
supported on the 3592-E08 tape drives.
Encryption capability
Compared to the previous model, there are no changes to the supported encryption methods
for 3592-E08. The supported encryption method in IBM i is Library Managed Encryption
(LME) that uses IBM Security Key Lifecycle Manager (SKLM), previously known as IBM
Tivoli® Key Lifecycle Manager (TKLM).
For more information about the TS1150, see the IBM TS1150 product page:
http://www.ibm.com/systems/storage/tape/ts1150/index.html
For more information about removable media on IBM i, see the IBM developerWorks IBM
Removable Media on the IBM i wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Remov
able%20Media%20on%20IBM%20i/page/IBM%20Removable%20Media%20on%20IBM%20i
7.1.2 Support for LTO Ultrium 7 tape drive
IBM has released a new IBM LTO Ultrium 7 tape drive (LTO7 tape drive). It is supported in
IBM i 7.2 for backup and recovery purposes, which allows improvements in capacity,
performance, and functions. The LTO7 tape drive offers significant improvements over the
LTO6 tape drives.
Note: The rule of compatibility matrix of new LTO devices remains unchanged. LTO7 tape
drives support read and write operations to LTO7 and LTO6 data cartridges, but support
only read operations to LTO5 data cartridges.
Here are some of the features of the LTO7 tape drives:
Increased performance
The maximum throughput of the native data rate performance in LTO7 drives is up to
300 MBps. Data tracks are written 32 tracks at a time.
Increased tape cartridge capacity
The compressed physical capacity of LTO7 cartridge is up to 15 TB, more than double
from LTO6. This is achieved by increasing the linear density, track density, and the media
length.
Attachment options
The LTO7 tape drive comes with 8 Gbps Fibre Channel attachments in two LC duplex
connectors.
Chapter 7. Backup and recovery 271
For more information about removable media on IBM i, see the IBM developerWorks IBM
Removable Media on IBM i wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Remov
able%20Media%20on%20IBM%20i/page/IBM%20Removable%20Media%20on%20IBM%20i
7.1.3 SAN multipath and automatic fail-over support for tape drives
IBM i 7.2 provides support to allow most Fibre Channel tape and tape library devices to be
attached by multiple paths to the same IBM i partition. These multiple paths work together in
an automatic failover mechanism, which means that the SAN multipath configuration can be
automatically recovered by using the alternate path when one of the paths is broken. The
operating system manages this automatic fail-over process by switching the I/O connection to
the other alternate path. This enhancement reduces the chances of tape backups failing to
complete due to SAN path failure.
There are some limitations for this SAN multipath and automatic fail-over feature:
IBM i 7.2 supports up to eight paths for each device.
The SAN multipath functions that are available depend on the capability of the attached
tape and tape library devices. Here are the supported devices for this feature:
– Fibre Channel LTO5 and LTO6 drives in the 7226 enclosure
– TS3100/TS3200 (3573) with LTO5 and LTO6 Fibre Channel drives
– TS3310 (3576) with LTO5 and LTO6 Fibre Channel drives
– TS3500/TS4500 with LTO5, LTO6, 3592-E07, and 3592-E08 Fibre Channel drives
– IBM ProtecTIER® virtual tape library, code level 3.3.5.1 or newer
Tape devices are sequential access devices, which means only one path to the device can
be active at a time (active-passive mechanism).
This feature uses the persistent reservation for the attached devices.
SAN multipath attachment to IBM i partitions can be done to native IBM i, VIOS NPIV
configuration, or a mix of both.
SAN multipath attachment is not supported for the following devices:
– SCSI attached tape devices
– 3494 tape library
In any case where automatic recovery is not possible, the manual procedure of failover by
using vary off and vary on can be done.
Note: The device driver utilizes persistent reservation for drives that are supported by
multipath. If the attached device is a device that emulates a supported IBM tape drive but
does not support persistent reservation as expected, the result can be unpredictable.
7.2 General save and restore functions
IBM i 7.2 introduced new native save and restore function that can improve the recoverability
of systems and assist with reducing the time that is necessary to perform saves and restores.
More granular control of system backup and recovery also is implemented. Minor changes
relating to features that are obsolete also occurred.
272 IBM i 7.2 Technical Overview with Technology Refresh Updates
The following general save and restore function topics are covered in this section:
7.2.1, “Better control over journaling during restoration of objects” on page 273
7.2.2, “Faster configuration of independent disk pools with CFGDEVASP” on page 273
7.2.3, “Spooled file save enhancements” on page 275
7.2.4, “Select parameter (SELECT) added to various commands and APIs” on page 275
7.2.5, “TCP/IP configuration data that is saved automatically” on page 276
7.2.6, “Better IFS save performance with Asynchronous Bring” on page 276
7.2.7, “Modifications of the SAVE and RESTORE menus” on page 276
7.2.8, “Removal of obsolete functions” on page 277
7.2.9, “Improving single object restore performance” on page 277
7.2.1 Better control over journaling during restoration of objects
The following enhancements to allow better control over journaling during the restoration of
objects were added:
Defer ID (DFRID) during restore now includes journal start requests.
In IBM i 7.2, new functions are added that allows for the DFRID processing to also include
journal start requests. This accommodates easier restoration of objects in libraries that are
on the system before the library containing the journal to which they should be assigned
being restored.
The types of objects whose journal start requests can be deferred are file, data area, data
queue, and library. When the deferred objects are processed in subsequent commands,
journaling is started if the journals are available then.
Start journaling (STRJRN) parameter added to commands and APIs.
Multiple restore commands and APIs now include the parameter STRJRN, which can be
applied to new objects during restore. The default is *YES, but if *NO is specified, the
following two caveats to the restore operation apply:
– Journaling information is restored whether journaling is selected to be started or not.
– Journaling is not changed for any existing objects. The parameter applies to new
objects only.
7.2.2 Faster configuration of independent disk pools with CFGDEVASP
Before IBM i 7.2, when you perform a disaster recovery of a system with independent disk
pools, an IPL was required to start IBM Navigator for i. The IPL was required because the
function for the creation of the disk pool was available only through the web interface.
At the base release of IBM i 7.2, the Configure Device ASP (CFGDEVASP) CL command was
included and removes the requirement for an IPL during the recovery. Using this command,
ASPs can be created by using the CL command interface. Use of this function has also been
included in the BRMS reports for supporting a system restoration containing multiple ASPs.
Point of technical clarification: The CFGDEVASP CL command was introduced in IBM i 7.1,
Technology Refresh 4. It is not included in the base release of IBM i 7.1, but it is included in
the base release of IBM i 7.2. Also, the *PREPARE action is not available at any level of
IBM i 7.1.
Chapter 7. Backup and recovery 273
The CFGDEVASP CL command allows for the creation, deletion, and preparation of a new ASP.
Figure 7-1 shows an example of how an ASP can be created by using the CL command
interface.
Configure Device ASP (CFGDEVASP)
Type choices, press Enter.
ASP device . . . . . . . . . . . > MYNEWASP Name, *ALL
Action . . . . . . . . . . . . . > *CREATE *CREATE, *DELETE, *PREPARE
ASP type . . . . . . . . . . . . > *PRIMARY *PRIMARY, *SECONDARY, *UDFS
Protection . . . . . . . . . . . *NO *NO, *YES
Encryption . . . . . . . . . . . *NO *NO, *YES
Disk units . . . . . . . . . . . *SELECT Name, *SELECT
+ for more values
Figure 7-1 Initial display of the Configure Device ASP (CFGDEVASP) CL command
If *SELECT is specified for the Disk units parameter, pressing Enter allows for the selection of
non-configured disk units. Figure 7-2 shows the selection of the non-configured disk units and
the processing of the ASP creation, as indicated at the bottom of the display.
After the command processing is complete, a message stating the results is presented. The
ASP can then be varied on and used.
Select Non-Configured Disk Units
ASP device . . . . . . . . . . . . . . . : MYNEWASP
Selected capacity . . . . . . . . . . . : 55929
Selected disk units . . . . . . . . . . : 3
Type options, press Enter.
1=Select
Resource
Opt Name Serial Number Type Model Capacity Rank Eligible
1 DPH001 Y77MMXCMPQE5 6B22 0050 18643 002 Yes
1 DPH002 Y3PL6FPHL33X 6B22 0050 18643 002 Yes
1 DPH003 YZUG2T3V6YG8 6B22 0050 18643 002 Yes
Bottom
F1=Help F9=Calculate Selection F11=View 2 F12=Cancel
Configuration of ASP device MYNEWASP is 99% complete.
Figure 7-2 Display allowing selection of non-configured disk units for ASP creation
274 IBM i 7.2 Technical Overview with Technology Refresh Updates
7.2.3 Spooled file save enhancements
The following spooled file save enhancements are added in IBM i 7.2:
Save Changed Object (SAVCHGOBJ) supports saving spooled files.
Saving of spooled files is now supported by the SAVCHGOBJ CL command in IBM i 7.2 by
specifying *NEW for the SPLFDTA parameter. There are various requirements and situations
that might apply depending on the Reference Date (REFDATE) and Reference Time
(REFTIME) parameters that are specified on the command:
– For each output queue that is saved, spooled file data that is created since the
Reference Date and Reference Time is saved.
– Output queues that contain spooled files that are created after the Reference Date and
Reference Time are considered changed and are saved.
– Output queues that contain spooled files with creation dates and times before the
Reference Date and Reference Time are not considered changed and are not saved.
Save Object List API can now specify spooled file expiration.
A new function is added to the Save Object List (QSRSAVO) API, which allows for expiry
of spooled files after they are saved. For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/qsrsavo.htm
7.2.4 Select parameter (SELECT) added to various commands and APIs
The Select (SELECT) parameter is added to many save and restore commands and APIs.
This new parameter allows for more granular saves and restores. Figure 7-3 shows an
example of the new parameter in a Save Object (SAVOBJ) CL command.
The SELECT parameter can be used up to 300 times per command or with a *USRSPC input, but
the 300 item limit still applies when using a user space.
When using a user space, you must define the parameters in the format that is used by the
Save Object List (QSRSAVO) API. For more information about the Object List (QSRSAVO)
API, see 7.2.3, “Spooled file save enhancements” on page 275.
Save Object (SAVOBJ)
Type choices, press Enter.
Select:
Include or omit . . . . . . . *USRSPC, *INCLUDE, *OMIT
Object . . . . . . . . . . . . *ALL Name, generic*, *ALL
Library . . . . . . . . . . *ALL Name, generic*, *ALL
Object type . . . . . . . . . *ALL *ALL, *ALRTBL, *BNDDIR...
Object attribute . . . . . . . *ALL Character value, *ALL, *BLANK
File member . . . . . . . . . *ALL Name, generic*, *ALL, *ALLMBR
+ for more values
Figure 7-3 Save Object (SAVOBJ) CL command with the new SELECT parameter
Chapter 7. Backup and recovery 275
7.2.5 TCP/IP configuration data that is saved automatically
Whenever the QUSRSYS library is saved with the Save Library (SAVLIB) or Save Changed
Objects (SAVCHGOBJ) CL commands, the current TCP/IP configuration information is also
retrieved and saved. The command that is performed automatically to gather the system’s
current configuration information is Retrieve TCP/IP Information (RTVTCPINF).
If a system must be reloaded from distribution media, the TCP/IP configuration information
can be updated by restoring the QUSRSYS library as part of the user data restore, and then
running the following Update TCP/IP Information (UPDTCPINF) CL command (see Figure 7-4):
UPDTCPINF LIB(QUSRSYS)
Update TCP/IP Information (UPDTCPINF)
Type choices, press Enter.
Library . . . . . . . . . . . . > QUSRSYS Name
Type of information . . . . . . *ALL *ALL, *TCP, *TCPCFG...
Figure 7-4 Update TCP/IP Information (UPDTCPINF) CL command
Additional subsetting of what is restored during UPDTCPINF can be performed by specifying the
required items on the Type of information parameter.
For more information about the UPDTCPINF CL command, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/updtcpinf.htm
Important: TCP/IP must be inactive when you run the UPDTCPINF CL command.
7.2.6 Better IFS save performance with Asynchronous Bring
The Asynchronous Bring (ASYNCBRING) parameter is part of the base function of IBM i 7.2 and
is included in the SAV CL command. By specifying *YES on the ASYNCBRING parameter, there is
the potential to improve the performance of some save operations. Asynchronous Bring
attempts to preload items into memory to improve save performance.
Note: In situations where many objects are in a single directory, few objects qualify for a
save, or the system is memory-constrained, the ASYNCBRING parameter being set to *YES
might degrade performance. Testing is recommended to ensure that the correct results are
achieved.
7.2.7 Modifications of the SAVE and RESTORE menus
Various items were changed on the SAVE and RESTORE menus:
Removed from SAVE menu: Save storage and save calendars.
Removed from RESTORE menu: Restore calendars.
In addition, new prompting fields are added to some of the commands when run from the
SAVE or RESTORE menu to increase the customization of the particular save or restore
command.
276 IBM i 7.2 Technical Overview with Technology Refresh Updates
7.2.8 Removal of obsolete functions
The Save Storage (SAVSTG) and Restore Storage (RSTSTG) CL commands were removed in
IBM i 7.2.
7.2.9 Improving single object restore performance
When restoring a single object from a tape sequence with several million blocks, most of the
restore time is spent locating the object on tape. The POSITION keyword can be used to skip
some blocks to reduce the time to locate the object. However, due to I/O restrictions for early
tape technologies, there is a maximum value that can be skipped per request. The locating
time might still be high if there are many requests.
IBM i 7.2 is enhanced to increase the maximum number of blocks that can be skipped per
request to reduce the locating time for the object.
7.3 Backup, Recovery, and Media Services
Many new functions are introduced for Backup, Recovery, and Media Services (BRMS) in
IBM i 7.2. The following BRMS topics are covered in this section:
7.3.1, “BRMS Enterprise” on page 277
7.3.2, “Usability improvements” on page 282
7.3.3, “Backup function enhancements” on page 282
7.3.4, “Recovery function enhancements” on page 289
7.3.5, “Media services enhancements” on page 290
7.3.6, “Maintenance enhancements” on page 300
7.3.7, “BRMS GUI in IBM Navigator for i enhancements” on page 302
7.3.8, “Migration enhancements” on page 310
7.3.9, “Miscellaneous BRMS enhancements” on page 315
Also, see the following IBM Backup, Recovery, and Media Services (BRMS) for i
developerWorks wiki for BRMS detailed examples and usability tips. This wiki also includes
the current information for new PTFs and enhancements.
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Backu
p%2C%20Recovery%20and%20Media%20Services%20%28BRMS%29%20for%20i
7.3.1 BRMS Enterprise
The following BRMS Enterprise enhancements in IBM i 7.2 are covered in this section:
“New Q1ABRMENT subsystem for specific BRMS Enterprise functions” on page 278
“Auto-refresh of the node status in IBM Navigator for i” on page 278
“Print Report using BRM (PRTRPTBRM) CL command support for reporting” on page 279
“Failed control group view to identify backup problems faster” on page 279
Reminder: BRMS Enterprise considers the system managing the remaining systems in
the group as the “hub.” All other systems participating are “nodes.” It is not necessary for
systems to be in a BRMS network for them to participate in BRMS Enterprise. In fact, even
systems in various BRMS networks can participate in the same BRMS Enterprise
instance.
Chapter 7. Backup and recovery 277
New Q1ABRMENT subsystem for specific BRMS Enterprise functions
A new subsystem that is called Q1ABRMENT processes specific jobs and tasks that are
related to BRMS Enterprise, which is in addition to the standard Q1ABRMNET subsystem
that used for BRMS networking.
Auto-refresh of the node status in IBM Navigator for i
In IBM i 7.2, BRMS Enterprise provides an automatic refresh interval for the list of nodes.
Default configurations have no automatic refresh selected; automatic refresh must be
manually configured post installation. The base installation value is shown in Figure 7-5.
Figure 7-5 IBM Navigator for i window showing the default value for automatic refresh in BRMS Enterprise
To modify the value of the automatic refresh frequency, complete the following steps:
1. From BM Navigator for i, select Backup, Recovery, and Media Services.
2. In the Backup, Recovery, and Media Services section, select Enterprise Services.
3. In the Enterprise Services window, click the Hub Administration tab and specify the Auto
refresh frequency setting, as shown in Figure 7-6. Click OK.
Figure 7-6 Specify the auto refresh value
4. The Auto refresh frequency selection is now displayed at the top of the window, as shown
in Figure 7-7 on page 279.
278 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-7 BRMS Enterprise hub center with an automatic refresh of 30 minutes specified
Print Report using BRM (PRTRPTBRM) CL command support for
reporting
In addition to new options being added to the Print Report using BRM (PRTRPTBRM) CL
command in IBM i 7.2, the report is available with additional options in BRMS Enterprise.
Reports can be defined in BRMS Enterprise and processed against all nodes in the
enterprise, not just nodes in a particular system BRMS network.
Note: The function to perform reporting for all systems in the BRMS Enterprise group
exists only through the GUI.
To process the reports against systems in the BRMS Enterprise configuration, select *ENT as
the target system, as shown in Figure 7-8.
Figure 7-8 Select *ENT as an option for reporting within BRMS Enterprise
Failed control group view to identify backup problems faster
BRMS Enterprise provides a consolidated view of the backup status for multiple systems,
which you can use to determine quickly whether backups are occurring properly, and if not,
make it simpler to take steps to correct the situation.
To view the list of failed backups, complete the following steps:
1. From BM Navigator for i, select Backup, Recovery, and Media Services.
2. In the Backup, Recovery, and Media Services section, select Enterprise Services.
Chapter 7. Backup and recovery 279
3. In the Enterprise Services window, click the Failed Backups tab. The window that is
shown in Figure 7-9 opens and shows that one of the systems, Appn.reo, had a failed
backup on the current day.
Figure 7-9 View of a BRMS Enterprise group containing a system with a failed backup
4. More detail about the system and its failed backups can be reviewed by clicking the widget
to the right of the system name and selecting View failed backups, as shown in
Figure 7-10.
Figure 7-10 Select the view failed backups option
5. The Failed Backups - Include window opens, which you can use to select various options
for subsetting the view. You can specify a date range or the most recent failure, as shown
in Figure 7-11. Click OK.
Figure 7-11 Options that are available for subsetting a view of failed backups
280 IBM i 7.2 Technical Overview with Technology Refresh Updates
6. The window that is shown in Figure 7-12 opens. You can use this window to use options
such as viewing the BRMS logs, backup histories, failed backup histories, and producing a
report of the failure.
Figure 7-12 BRMS Enterprise view of an unsuccessful control group on a node
In IBM i 7.2, the consolidated view of the backup status in BRMS Enterprise is now enhanced
to display more than 100 entries of backup processes, as shown in Figure 7-13. This
improves the usability of BRMS users to view and manage more BRMS jobs in a single view.
Figure 7-13 Backup status in BRMS Enterprise displays more than 100 entries
Chapter 7. Backup and recovery 281
7.3.2 Usability improvements
Many BRMS features that in prior releases were addressed by running programs or creating
data areas are now a part of the BRMS GUI and commands in IBM i 7.2. Some of these
usability improvements are listed in Table 7-2.
Table 7-2 BRMS usability improvements in IBM i 7.2
Function Prior release IBM i 7.2
Modification of BRMS Flight Call programs with various parameters. Available in System policy.
Recorder size.
Allow volumes that are marked for Call programs with various parameters. Available in Move policies.
duplication to be moved.
Restore of spooled files from Creation of data areas required based on BRMS now handles time zone
different time zones. needs. data automatically.
Disable the deleted library block on Creation of data area. Parameter within report creation
recovery reports. command.
7.3.3 Backup function enhancements
This section reviews the following backup function enhancements in IBM i 7.2:
“Backup lists now allow for *ALLUSR” on page 282
“Object-level omits available in 5250 interface” on page 283
“Control groups can save libraries in order of size” on page 284
“Save contents of data queues” on page 284
“Failure to reach restricted state recovery options” on page 284
“Journal receiver save exclusions” on page 286
“Incremental spool file backup support” on page 286
“New message CPF3741 in BRMS log when an object is not saved” on page 286
“Enhanced WRKMEDIBRM and RSTxxxBRM commands to support systems in
FlashCopy mode” on page 287
“Incremental saves on a spooled file with *ALL for the SPLFDTA parameter” on page 288
Backup lists now allow for *ALLUSR
To support more granular saves, a backup list can now support an entry of *ALLUSR. You can
specify *ALLUSR as the main inclusion and then omit specific objects or groups of objects.
Additionally, by putting *ALLUSR in a backup list, libraries reflect their individual save times
rather than all libraries within the *ALLUSR selection showing the same save time stamp.
For more information about performing object-level omits, see “Object-level omits available in
5250 interface” on page 283.
282 IBM i 7.2 Technical Overview with Technology Refresh Updates
Object-level omits available in 5250 interface
Before IBM i 7.2, excluding specific objects within libraries required using the BRMS GUI. In
IBM i 7.2, this GUI is no longer required. However, any control groups with object-level omits
that are defined by the BRMS GUI in IBM i 7.1 or an earlier release must continue to be
managed with the BRMS GUI. To manage a control group’s object-level omits in either the
5250 interface or the GUI, the control group must be re-created in IBM i 7.2 and exclusions
that use BRMS lists must be implemented.
Note: Omits that are specified by using the BRMS Backup policy are ignored by any
control group that uses a BRMS list with object omits.
Figure 7-14 shows an example of an object list that saves the *ALLUSR set of libraries, but
excludes specific objects within various libraries.
Display Object List REO
Use . . . . . . . . . : *BKU
List name . . . . . . : ALLUSROMIT
Text . . . . . . . . : Save *ALLUSR but add omits
Seq Library Object Type Attribute Member Inc/Exc
10 *ALLUSR *ALL *ALL *ALL *ALL *INC
20 ARCHIVE BIGFILE* *FILE *ALL *ALL *EXC
30 YEAREND PREMERGER *FILE *ALL *ALL *EXC
40 MUSIC *ALL *ALL *ALL *ALL *EXC
Figure 7-14 BRMS object list containing the *ALLUSR value along with specific exclusions
The same list can be accessed and modified by using IBM Navigator for i. Figure 7-15 shows
the same ALLUSROMIT object list that is shown in Figure 7-14.
Figure 7-15 View for the same omit object list within IBM Navigator for i
Note: In IBM i 7.2, to enable the function for include/exclude within BRMS object lists, PTF
SI53306 or its most current supersedent is required.
Chapter 7. Backup and recovery 283
Control groups can save libraries in order of size
By default, BRMS saves libraries alphabetically. In an effort to improve potentially save
performance, especially in environments where multiple tape devices are used in parallel, a
value of *SIZE can be chosen.
When specifying *SIZE for the Sort By parameter in the control group attributes, or
alternatively in the Backup policy if the control group specifies *BKUPCY for its attribute
retrieval, the system saves the libraries in order of largest to smallest based on the size
attributes that are acquired during prior save operations.
Note: If a save by *SIZE is selected and a new library that has not been saved by BRMS is
selected to be saved, the new library is saved after all libraries with known sizes are
processed. BRMS cannot acquire the size and include the new library in a sort order until it
is saved once and its size is determined.
Save contents of data queues
In addition to the data queue objects themselves, BRMS can now be instructed to save the
contents of the data queues.
To activate this option, change the control group attribute of Save Queue Data to *DTAQ. If this
is required on a system-wide level, ensure that the control group is set to *BKUPCY for the Save
Queue Data parameter and change the parameter in the Backup policy instead.
Failure to reach restricted state recovery options
Certain situations exist where intentions for a restricted statesave do not function as required.
In this case, the system can potentially become hung in a manner where it is not entirely
down, but cannot restart. This situation usually results in a skipped Save System (SAVSYS)
section of the backup, and unpredictable results when the save completes.
BRMS has the following new options that you can use to handle these situations in a more
automatic manner:
Abnormal end delay time option in System policy.
BRMS includes a new option in IBM i 7.2 that can issue abnormal job ends against
processes that fail to terminate during normal shutdown processes. The option is available
in the System policy, as shown in Figure 7-16.
V7R2M0 Change System Policy REO
Type choices, press Enter.
End all subsystems options
Controlled end delay time . . . . . . 1200 1-99999 seconds,*IMMED
Abnormal end delay time . . . . . . . 30 10-999 minutes,*NOLIMIT
End servers wait time . . . . . . . . 0 0-9999 seconds
Figure 7-16 Subsystem end options in IBM i 7.2 in BRMS System Policy
By using this function, the system can issue End Job Abnormal (ENDJOBABN) CL
commands against jobs that have not ended normally through the use of controlled
options.
284 IBM i 7.2 Technical Overview with Technology Refresh Updates
The Controlled end delay time parameter is used to determine how long to wait before
ending active jobs immediately. After active jobs have started to end with the end job
immediate option, the Abnormal end delay time parameter is used to determine how long
to wait before ending active jobs abnormally.
Note: Issuing ENDJOBABN in any situation causes the subsequent IPL to be flagged as
abnormal. This can increase the amount of time for the IPL to process.
Alternative option for BRMS behavior when unable to restrict system.
BRMS can now be configured to fail rather than bypass the Save System (SAVSYS) CL
command if the system cannot reach a restricted state. To enable this function on a
system-wide basis, run the following command:
CRTDTAARA DTAARA(QUSRBRM/Q1ANOSYSBP) TYPE(*CHAR) LEN(1)
To enable this function for only a specific job (for example, create the data area in a control
group exit before running the SAVSYS CL command), run the following CL command:
CRTDTAARA DTAARA(QTEMP/Q1ANOSYSBP) TYPE(*CHAR) LEN(1)
Note: When requiring this function in a specific job, a good example is creating the data
area in a control group exit before running the SAVSYS CL command.
BRMS can automatically undergo an IPL if the controlling subsystem cannot start.
BRMS can also be configured to perform automatically an IPL of the system if CPF1099 is
received when attempting to restart the controlling subsystem. This message is received if
the system previously attempted to restrict the system, but has thus far been unable to
reach a restricted state. The only recovery option in this situation is to perform an IPL.
BRMS can handle this task on its own now, potentially saving hours of downtime.
If BRMS receives a CPF1099 when it tries to start the controlling subsystem and data
area QUSRBRM/Q1AIPLSUB exists, the system undergoes IPL. IPL options from the
control group are used. These options can reference the BRMS Backup policy or even the
BRMS System policy.
Important: The control group does not need to be set to IPL *YES in order for this IPL
to occur.
To enable this function, run the following CL command:
CRTDTAARA DTAARA(QUSRBRM/Q1AIPLSUB) TYPE(*CHAR) LEN(1)
Automatic restart on abnormal ends of STRBKUBRM.
The following parameters now exist for the STRBKUBRM CL command to allow for automatic
retries if the backup ends abnormally:
– Allow Retry (ALWRTY)
Provides choices of *NO or *YES.
– Retry Time Limit (RTYTIMLMT)
If the Allow Retry parameter is set to *YES, and an abnormal end occurs within the
specified time limit after the control group begins processing, then the backup control
group is retried. Allowable values are *NOMAX and 1 - 99999, where 1- 99999 are in
minutes.
Chapter 7. Backup and recovery 285
– Retry Starting Sequence (RTYSTRSEQ)
Three choices are available for the Retry Starting Sequence (RTYSTRSEQ) parameter,
which are *ERRSEQ, *STRSEQ, or *NXTSEQ:
• If *ERRSEQ is selected, the sequence that received the abnormal end is retried.
• If *STRSEQ is selected, the entire control group is started from the beginning.
• If *NXTSEQ is selected, the next sequence in the control group is processed, skipping
the one that ended abnormally.
Journal receiver save exclusions
Function exists in BRMS across multiple versions of IBM i to allow saving of only changed or
detached journal receivers by using the values of *CHGJRNRCV or *DTCJRNRCV in a control
group. These special values are modified to process journals from libraries with names that
start with the letter Q.
In IBM i 7.2, excluded entries can be specified in object list QCHGJRNRCV or
QDTCJRNRCV to exclude certain journals from the save.
Numerous customization options exist for this particular feature. The most current information
and required PTFs are available on the IBM Backup, Recovery, and Media Services (BRMS)
for i DeveloperWorks wiki at the BRMS wiki page:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Backu
p%2C%20Recovery%20and%20Media%20Services%20%28BRMS%29%20for%20i
Incremental spool file backup support
In IBM i 7.2, BRMS now can perform incremental spooled file saves without requiring the use
of a BRMS *SPL list.
Users who have previously handled spool file saves by using BRMS lists might find that
simply changing the attribute on a different control group (one that contains the out queues
that are needed) to save spool data will meet their needs of saving spool files. This can
potentially save time and effort by reducing the number of save operations that are required.
New message CPF3741 in BRMS log when an object is not saved
In IBM 7.2, a new message is added to the BRMS log when there is a condition where an
object is not saved during the save operation. This is a helpful feature for users to know about
the unsaved objects from the BRMS log. The details of this message are shown in
Figure 7-17 on page 287.
286 IBM i 7.2 Technical Overview with Technology Refresh Updates
Display Formatted Message Text
System: IBMSYS1
Message ID . . . . . . . . . : CPF3741
Message file . . . . . . . . : QCPFMSG
Library . . . . . . . . . : QSYS
Message . . . . : &2 &1 in &3 not saved.
Recovery . . . : Press F10 or use the Display Job Log (DSPJOBLOG) command
to see the previously listed messages. Correct any errors and try the
request again.
Bottom
Press Enter to continue.
F3=Exit F11=Display unformatted message text F12=Cancel
Figure 7-17 CPF3741 message description
Enhanced WRKMEDIBRM and RSTxxxBRM commands to support
systems in FlashCopy mode
The parameter FROMSYS in the WRKMEDIBRM command is enhanced to support systems that are
in FlashCopy mode. With this enhancement, users can see the media information of the
FlashCopy system by running the WRKMEDIBRM command on the primary partition. This
enhanced FROMSYS parameter also applies to the RSTxxxBRM commands so that users can
easily restore an object from a FlashCopy system to the primary partition.
Chapter 7. Backup and recovery 287
Figure 7-18 shows the example of the RSTOBJBRM command with the FROMSYS parameter
pointing to a FlashCopy system.
Restore Object using BRM (RSTOBJBRM)
Type choices, press Enter.
Allow object differences . . . . ALWOBJDIF *NONE
+ for more values
Private authorities . . . . . . PVTAUT *NO
Restore to library . . . . . . . RSTLIB *SAVLIB
Auxiliary storage pool . . . . . RSTASP *SAVASP
From system . . . . . . . . . . FROMSYS APPN.UT30P05
Additional Parameters
Output . . . . . . . . . . . . . OUTPUT *NONE
File to receive output . . . . . OUTFILE
Library . . . . . . . . . . . *LIBL
Output member options: OUTMBR
Member to receive output . . . *FIRST
Replace or add records . . . . *REPLACE
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-18 FROMSYS parameter on the RSTOBJBRM command
Incremental saves on a spooled file with *ALL for the SPLFDTA
parameter
You can use IBM i 7.2 to perform incremental saves on a spooled file. This save operation is
based on the creation date of the spooled file. The incremental save back ups all specified
spooled files with a created date after the last incremental save reference date.
This incremental save on a spooled file can be performed with the SAVxxxBRM commands by
using a control group with spooled file list (*SPL) entries, *ALL for the spooled file data
(SPLFDTA) parameter, and *INCR for Type of save (SAVTYPE) parameter, as shown in the
example in Figure 7-19 on page 289.
288 IBM i 7.2 Technical Overview with Technology Refresh Updates
Save Object using BRM (SAVOBJBRM)
Type choices, press Enter.
Data compression . . . . . . . . DTACPR *DEV
Data compaction . . . . . . . . COMPACT *DEV
Save contents of save files . . SAVFDTA *YES
Spooled file data . . . . . . . SPLFDTA > *ALL
Queue data . . . . . . . . . . . QDTA *NONE
Type of save . . . . . . . . . . SAVTYPE > *INCR
Reference date . . . . . . . . . REFDATE *REF
Reference time . . . . . . . . . REFTIME *REF
Journaled objects . . . . . . . OBJJRN *NO
Objects to omit: OMITOBJ
Object . . . . . . . . . . . . *NONE
Library . . . . . . . . . . *ALL
Object type . . . . . . . . . *ALL
+ for more values
Auxiliary storage pool . . . . . ASPDEV *SYSBAS
Expiration date . . . . . . . . EXPDATE *MEDPCY
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-19 SAVOBJBRM command showing the ability to save a spooled file incrementally
7.3.4 Recovery function enhancements
This section reviews the following recovery function enhancements in IBM i 7.2:
“Recovery reports now use commands for ASP creation” on page 289
“Spool file restore based on time zone” on page 289
“Restoring libraries by using BRM (RSTLIBBRM) with *RSTLST” on page 290
Recovery reports now use commands for ASP creation
In IBM i 7.2, recovery reports that are created by using the Start Recovery using BRM
(STRRCYBRM) or Start Maintenance for BRM (STRMNTBRM) CL commands are enhanced to use
the Configure Device ASP (CFGDEVASP) CL command to configure independent auxiliary
storage pools (IASPs). The step where you performed an IPL of the system to configure
IASPs was removed from recovery reports.
For more information about the Configure Device ASP (CFGDEVASP) CL command and how it
can improve recovery time, see 7.2.2, “Faster configuration of independent disk pools with
CFGDEVASP” on page 273.
Spool file restore based on time zone
BRMS now tracks the time zone in which a spooled file was created, which assists with the
restoration of spooled files based on time, especially when being performed on a system in a
different time zone. The time zone is tracked within the saved spooled file details file in the
field OQTIMZON.
Note: The time zone in which the spooled file was created is not available for viewing from
standard BRMS panels.
Chapter 7. Backup and recovery 289
Restoring libraries by using BRM (RSTLIBBRM) with *RSTLST
When performing a library restoration by using BRMS, a list of libraries can be specified in a
BRMS list. After that list is defined, the list can be specified and the restoration processed. To
create the list, run the WRKLBRM CL command and create a *BKU list of type *OBJ. Specify
each library for restore in the newly created list.
One example where this function can be useful is if a restore is integral to a compiled
program. Rather than needing to modify the program code each time a library needed to be
removed or added to the process, all that is necessary is to modify the BRMS object list.
Example 7-1 shows the command syntax for saving 15 libraries.
Example 7-1 Restoration of 15 libraries by using RSTLIBBRM
RSTLIBBRM SAVLIB(DATALIB001 DATALIB002 DATALIB003 OBJLIB001A OBJLIB002A
OBJLIB003A CUSTOM123 ARCH_2013 ARCH_2012 ARCH_2011 ARCH_2010 SECURE UNSECURE
MISC_STUFF MYNEWDATA) DEV(TAPMLB01)
As shown in Example 7-2, using a BRMS *RSTLST, the command is smaller and now can
easily be modified by using the BRMS list rather than needing to modify a program.
Example 7-2 Restoration of libraries that are specified in a *RSTLST by using RSTLIBBRM
RSTLIBBRM SAVLIB(*RSTLST) DEV(TAPMLB01) RSTLST(MYRSTLST)
7.3.5 Media services enhancements
This section reviews the following media services enhancements in IBM i 7.2:
“Resetting the move cycle in the Move policy”
“Support for moving media that are marked for duplication” on page 292
“Initializing media on expiration in a media class” on page 292
“Submitting DUPMEDBRM in a batch job” on page 293
“CHGMEDBRM command with the Location and Container parameters” on page 294
“Support to eject a tape media library volume on remote systems” on page 295
“Enhanced assigned alternate media when the original is not available” on page 296
“Support media expiration date after 12/31/2038” on page 296
“Marking a volume for duplicate and marking history for duplicate” on page 297
“Support for checking the number of expired media for a save operation” on page 298
290 IBM i 7.2 Technical Overview with Technology Refresh Updates
Resetting the move cycle in the Move policy
The Move policy in IBM i 7.2 introduces *RESET as a new value for Duration field. The *RESET
value indicates that the media remains in that location sequence until it expires or until
another save is written to the media. If no writes are done to the media, the media stays in this
location until it expires and then returns to the home location. Otherwise, if a write is done to
the media while in this location, the move pattern is reset to the first move sequence and the
creation date of the media is set to the current date and time.
Note: Move policy sequences after a sequence with *RESET duration are not used.
Figure 7-20 shows the example of *RESET in the Change Move Policy CL command.
Change Move Policy UT30P05
Move policy . . . . . . . . . : OFFSITE
Home location . . . . . . . . . *SYSPCY Name, *SYSPCY, *ORIGIN, F4 list
Use container . . . . . . . . . *NO *YES, *NO
Verify moves . . . . . . . . . . *YES *YES, *NO
Calendar for working days . . . *ALLDAYS Name, *ALLDAYS, F4 for list
Calendar for move days . . . . . *ALLDAYS Name, *ALLDAYS, F4 for list
Move marked for duplication . . *NO *NO, *YES
Text . . . . . . . . . . . . . . Move Policy 01
Type choices, press Enter.
Seq Location Duration Container Action
10 LOC01 10
20 LOC02 *RESET
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel
Figure 7-20 Reset a move cycle in the Change Move Policy CL command
This feature is also available in IBM Navigator for i, as shown in Figure 7-21.
Figure 7-21 Reset a move cycle in IBM Navigator for i
Chapter 7. Backup and recovery 291
Support for moving media that are marked for duplication
You can use IBM i 7.2 to move the media that is marked for duplication. You can see this
feature in the Change Move Policy CL command with the Move marked for duplication
parameter, as shown in Figure 7-22. If this parameter is set to *YES, the Move policy includes
volumes that are marked for duplication during media movement.
Change Move Policy UT30P05
Move policy . . . . . . . . . : OFFSITE
Home location . . . . . . . . . *SYSPCY Name, *SYSPCY, *ORIGIN, F4 list
Use container . . . . . . . . . *NO *YES, *NO
Verify moves . . . . . . . . . . *YES *YES, *NO
Calendar for working days . . . *ALLDAYS Name, *ALLDAYS, F4 for list
Calendar for move days . . . . . *ALLDAYS Name, *ALLDAYS, F4 for list
Move marked for duplication . . *YES *NO, *YES
Text . . . . . . . . . . . . . . Entry created by BRM configuration
Type choices, press Enter.
Seq Location Duration Container Action
10 VAULT *EXP
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel
Figure 7-22 Change Move Policy CL command with the option to move marked for duplication
This feature is also available in IBM Navigator for i, as shown in Figure 7-23.
Figure 7-23 Move volumes that are marked for duplication parameter in IBM Navigator for i
Initializing media on expiration in a media class
IBM i 7.2 supports the option to initialize media on expiration when setting up the media class.
If this parameter is set to *YES, BRMS automatically initializes the media after it is expired.
Initialization occurs during the STRMNTBRM process and requires the media to be mounted
on a device.
292 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-24 shows the Change Media Class CL command with the Initialize media on
expiration parameter set to *NO.
Change Media Class
Media class . . . . . . . . . . . : SAVSYS
Type choices, press Enter.
Density . . . . . . . . . . . . . . *UDF F4 for list
Media capacity . . . . . . . . . . *DENSITY *DENSITY, Number nnnnn.nn
Unit of measure . . . . . . . . . 1=KB, 2=MB, 3=GB
Mark for label print . . . . . . . *NONE *NONE, *MOVE, *WRITE
Label size . . . . . . . . . . . . 1 1=6 LPI, 2=8 LPI, 3=9 LPI
Label output queue . . . . . . . . *SYSPCY Name, *SYSPCY, *PRTF
Library . . . . . . . . . . . . . Name, *LIBL
Shared media . . . . . . . . . . . *NO *YES, *NO
Write once media . . . . . . . . . *NO *YES, *NO
Initialize media on expiration. . . *NO *NO, *YES
Text . . . . . . . . . . . . . . . Entry created by BRM configuration
More...
F3=Exit F4=Prompt F12=Cancel
Figure 7-24 Change Media Class CL command with the parameter for expired media initialization
This feature is also available in IBM Navigator for i, as shown in Figure 7-25.
Figure 7-25 Initialize media on expiration in IBM Navigator for i
Submitting DUPMEDBRM in a batch job
IBM i 7.2 enhances the Duplicate Media using BRM (DUPMEDBRM) CL command with the
Submit batch options parameter, which you can use to run media duplication processes in
batch and indicate the number of media sets to be produced. The job queue and the job
description for this batch job submission uses the settings that are specified in the System
policy.
Chapter 7. Backup and recovery 293
Figure 7-26 shows the DUPMEDBRM CL command with the Submit batch options.
Duplicate Media using BRM (DUPMEDBRM)
Type choices, press Enter.
From system . . . . . . . . . . *LCL
Submit batch options:
Submit to batch . . . . . . . > *YES *NO, *YES
Media sets . . . . . . . . . . *MEDSET 1-99, *MEDSET
Additional Parameters
To volume identifier . . . . . . *MOUNTED
+ for more values
Retain object detail . . . . . . *NO *NO, *YES
Expiration date . . . . . . . . *MEDPCY Date, *MEDPCY, *PERM...
Move policy . . . . . . . . . . *MEDPCY *MEDPCY, *NONE, OFFSITE
Media class . . . . . . . . . . *MEDPCY *MEDPCY, *SYSPCY ...
Location . . . . . . . . . . . . *MEDPCY *MEDPCY, *ANY, *HOME ...
Secure volume . . . . . . . . . *MEDPCY *MEDPCY, *NO, *YES
Required volumes . . . . . . . . *MEDPCY 1-9999, *MEDPCY, *NONE
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-26 DUPPMEDBRM CL command with Submit batch options
This new DUPMEDBRM enhancement is helpful in the following examples:
There are multiple media sets that are produced from the backup processes.
To have multiple media sets duplicated by using multiple tape resources, you can easily
issue only one DUPMEDBRM CL command with the Submit to batch parameter set to *YES
and the Media sets parameter set to a required number of output media set.
Backup and recovery processes that use ProtecTier TS7650 Virtual Tape Library (VTL).
Users that use VTL for their backup and recovery usually have multiple tape resources for
parallel save and restore. When duplicating multiple virtual tapes to physical tapes, they
usually expect less physical tapes being produced than the virtual ones. With this
enhancement, you can use the Media sets parameter to specify the number of output
media sets to be less than the number of input media sets. Therefore, they can have less
media sets produced as physical tapes.
Note: DUPMEDBRM in batch processes does not work for auto-duplication.
For more information about the DUPMEDBRM CL command, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/dupmedbrm.htm?lang=en
CHGMEDBRM command with the Location and Container parameters
IBM i 7.2 enhances the Change Media using BRM (CHGMEDBRM) command to support the
Location and Container parameters, which allows users to move a single volume to a different
location or container.
294 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-27 shows the CHGMEDBRM command with the Location and Container parameters.
Change Media using BRM (CHGMEDBRM)
Type choices, press Enter.
Volume identifier . . . . . . . > A00001
Media class . . . . . . . . . . SAVSYS *SAME, FMTOPTUDF, SAVSYS,...
Expiration date . . . . . . . . '10/31/40' Date, *SAME, *PERM, *NONE
Last moved date . . . . . . . . *NONE Date, *SAME, *NONE
Move policy . . . . . . . . . . *NONE *SAME, *NONE, OFFSITE
Exempt from movement . . . . . . *SAME 0-9999, *SAME
Creation date . . . . . . . . . '10/16/15' Date, *SAME
Secure volume . . . . . . . . . *NO *SAME, *NO, *YES
Slot number . . . . . . . . . . *NONE 1-999999, *SAME, *NONE
System . . . . . . . . . . . . . APPN.UT30P05
Text . . . . . . . . . . . . . . *NONE
Image catalog . . . . . . . . . *NONE Name, *SAME, *NONE
Location . . . . . . . . . . . . *HOME *SAME, *HOME, LOC01,...
Container . . . . . . . . . . . *NONE *SAME, *NONE
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-27 CHGMEDBRM command with Location and Container parameters
For more information about the CHGMEDBRM command, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/chgmedbrm.htm?lang=en
Support to eject a tape media library volume on remote systems
In IBM i 7.2, if media that is being moved is owned by another system and the media is in an
MLB that is not configured on the system doing movement, BRMS can be set up to attempt to
eject the volume from the tape media library (MLB) on the system that owns the volume.
To enable this function, run the following command:
CRTDTAARA DTAARA(QUSRBRM/Q1ARMTEJT) TYPE(*CHAR)
Note: When volumes are set for duplications, BRMS does not move or request that these
volumes be ejected from MLBs until the duplication process completes. Message ID
BRM1364 is posted and the volume remains at the current location.
Chapter 7. Backup and recovery 295
Enhanced assigned alternate media when the original is not available
Users can select the “Allow alternate input media” option in the System Policy to allow BRMS
to use the alternate media as an input when the requested original input media is not
available.
For a restore operation, if the media for the restore operation is not found, BRMS attempts to
locate and use a duplicate volume to complete the restore operation. In IBM i 7.2, parallel
restores try more than five alternate media sets to complete the restore operation.
Figure 7-28 shows the Change System Policy command with the “Allow alternate input
media” parameter specified.
V7R2M0 Change System Policy UT30P05
Type choices, press Enter.
End all subsystems options
Controlled end delay time . . . . . . 01200 1-99999 seconds,*IMMED
Abnormal end delay time . . . . . . . *NOLIMIT 10-999 minutes,*NOLIMIT
End servers wait time . . . . . . . . 0 0-9999 seconds
Controlling subsystem:
Allow backups in batch . . . . . . . . *NO *NO, *YES
Restricted state time limit . . . . . *NOMAX 5-9999 minutes, *NOMAX
Allow alternate input media. . . . . . . *YES *NO, *YES
Volume prefix . . . . . . . . . . . . . Prefix
Enable FlashCopy . . . . . . . . . . . . *NO *NO, *YES
BRMS submitted jobs:
Job description. . . . . . . . . . . . *USRPRF Name, *USRPRF
Library. . . . . . . . . . . . . . . Name, *LIBL, *CURLIB
Job queue. . . . . . . . . . . . . . . *JOBD Name, *JOBD
Library. . . . . . . . . . . . . . . Name, *LIBL, *CURLIB
BRMS flight recorder size . . . . . . . 050 001-999 megabytes
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel
Figure 7-28 Change System Policy command with the Allow alternate input media option
Support media expiration date after 12/31/2038
Prior to IBM i 7.2, BRMS did not support creating media with an expiration date after
12/31/2038. Even media policies can be set up with a retention type of day for up to 9,999
days, but for media volumes that have an expiration date after 12/31/2038, BRMS converted
the expiration to *PERM.
In IBM i 7.2, BRMS now supports creating media with an expiration date 1990 - 2089. The
Change Media using BRM (CHGMEDBRM) command, the Work Media using BRM (WRKMEDBRM)
command with option 2, or the Work Media Information (WRKMEDIBRM) command with option 2
can be used to change the expiration date of media or media information to a date after 2038.
296 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-29 show that BRMS now supports media expiration date after 12-31-2038.
Work With Media
System: UT30P05
Position to . . . . . Starting characters
Type options, press Enter.
1=Add 2=Change 4=Remove 5=Display 6=Work with serial set 7=Expire
8=Move 9=Remove volume error status 10=Reinitialize ...
Volume Creation Expiration Move Media Dup
Opt Serial Status Date Date Location Date Class Sts
A00001 *ACT 10/16/15 01/01/39 *HOME *NONE SAVSYS
A00002 *ACT 10/16/15 12/31/88 *HOME *NONE SAVSYS
Bottom
Parameters or command:
===>
F3=Exit F4=Prompt F5=Refresh F11=Volume system F12=Cancel F17=Top
F18=Bottom F23=More options
Figure 7-29 BRMS supporting a media expiration date after 12-31-2038
Marking a volume for duplicate and marking history for duplicate
In IBM i 7.2, BRMS provides two ways to assist the user to produce duplicate media:
Set the Mark volumes for duplication field to *YES for save media.
This assists the user in creating duplicate media. The data and save history for all saved
items on the media is duplicated.
Set the Mask history for duplication field to *YES for save item.
This assists the user in creating duplication saved items. The data and save history for
specific saved is duplicated.
Figure 7-30 shows the Change Media Policy window with the Mark volumes for duplication
and Mark history for duplication options.
Change Media Policy
Media policy . . . . . . . . . . : TPOLICY
Type choices, press Enter.
Required volumes . . . . . . . . . *NONE *NONE, 1-9999
Mark volumes for duplication . . . *YES *NO, *YES
Mark history for duplication . . . *YES *NO, *YES
Text . . . . . . . . . . . . . . . *NONE
More
F3=Exit F5=Refresh F12=Cancel
Figure 7-30 Change Media Policy command
Chapter 7. Backup and recovery 297
Note: Media duplication and save history duplication are independent. When both the
“Mark volumes for duplication” and “Mark history for duplication” options are specified, the
following commands must be run:
DUPMEDBRM VOL(*LIST/*SEARCH/VOLUME ID)
DUPMEDBRM VOL(SCHHST)
Support for checking the number of expired media for a save operation
IBM i 7.2 adds the capability for users to check whether there is enough expired media to
satisfy the media requirements of a save operation. This function is available to use in the
Check Expired Media for BRM (CHKEXPBRM) command.
The CHKEXPBRM command calculates the number of media with a specified media class that is
available for use in a save operation. It also accounts for the location of the media based on
the location that is specified in the media policy or a certain location that is specified by the
user. This command is run before running a save operation to make sure that the save
operation does not fail because the number of available media is less than the number of
required media for a save.
An example of the CHKEXPBRM command is shown in Figure 7-31.
Check Expired Media for BRM (CHKEXPBRM)
Type choices, press Enter.
Required volumes . . . . . . . . > 21 1-9999, *MEDPCY
Media class . . . . . . . . . . > CLS_DAY01 CLS_DAY01, CLS_SYS01, CLS_...
Location . . . . . . . . . . . . > TAPMLB01 *ANY, *HOME, BRMS, ...
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-31 Check Expired Media for BRM (CHKEXPBRM) command
The CHKEXPBRM message is shown in the BRMS log, as shown in Figure 7-32 on page 299.
298 IBM i 7.2 Technical Overview with Technology Refresh Updates
Display BRM Log Information
Current date/time . . . . . : 10/16/15 18:28:35
Position to date . . . . . . : 10/16/15
Date sent Time sent
Message
10/16/15 6:01:43Library ZJ0A is not included in save strategy.
10/16/15 6:01:43Library ZJ0B is not included in save strategy.
10/16/15 6:01:44Library ZJ01 is not included in save strategy.
10/16/15 6:01:44Library ZJ02 is not included in save strategy.
10/16/15 6:01:44Library ZJ03 is not included in save strategy.
10/16/15 6:01:44Library ZLWLIB is not included in save strategy.
10/16/15 6:01:44Library ZZLIB is not included in save strategy.
10/16/15 6:01:44Library ZZLIB1 is not included in save strategy.
10/16/15 6:01:44Library ZZLIB2 is not included in save strategy.
10/16/15 6:01:44Save analysis indicated 1841 libraries not being saved.
10/16/15 6:03:03BRM maintenance procedure completed.
10/16/15 18:18:42Request for 21 expired volumes for media class CLS_DAY01
Bottom
Press Enter to continue.
F3=Exit F4=Message details F5=Refresh F11=Alternate view
F12=Cancel F17=Top F18=Bottom
Figure 7-32 Message entry that is generated from the CHKEXPBRM command in DSPLOGBRM
Pressing F4 on the message displays a report that shows whether the required number
media for a save operation is available. See Figure 7-33.
Additional BRM Log Information
Message ID . . . . . . . . : BRM1930 Severity . . . . . . . : 70
Job . . . : QPADEV000K User . . : ID010886 Number . . . . : 493371
Date sent . . . . . . . . : 10/16/15 Time sent . . . . . . : 18:18:42
Program . . . . . . . . . : Q1ACCEM Area . . . . . . . . . : *BKU
Message . . . . : Request for 21 expired volumes for media class
CLS_DAY01 was not successful.
Cause . . . . . : The check expired media command requested 21 expired
volumes. 0 expired volumes are available for media class CLS_DAY01 at
location TAPMLB01.
Recovery . . . : Make more volumes available by using WRKMEDBRM to expire
volumes, STREXPBRM to expire volumes that have reached expiration, or add
more volumes to the media inventory.
Bottom
Press Enter to continue
F3=Exit F12=Cancel
Figure 7-33 Detailed results of the CHKEXPBRM command
Chapter 7. Backup and recovery 299
7.3.6 Maintenance enhancements
This section reviews the following media services enhancements in IBM i 7.2:
“Reorganizing the BRMS database by using a batch job”
“Additional parameters in RMVMEDIBRM” on page 301
“STRMNTBRM command enhancement” on page 302
Reorganizing the BRMS database by using a batch job
When performing BRMS maintenance by using the Start Maintenance for BRM (STRMNTBRM)
CL command, you can use IBM i 7.2 to set the Reorganize BRMS database (RGZBRMDB)
parameter to *BATCH, as shown in Figure 7-34. By using this setting, you can submit database
reorganization to a batch job. The job queue and the job description are specified in the
System policy for BRMS submitted jobs.
When this command is used, STRMNTBRM can complete processing much sooner than a batch
job that performs the reorganization. Normal BRMS activity can be resumed while the batch
job is still active.
Start Maintenance for BRM (STRMNTBRM)
Type choices, press Enter.
Audit system media . . . . . . . *NONE
+ for more values
Change BRM journal receivers . . *YES *YES, *NO
Print expired media report . . . *YES *YES, *NO
Print version report . . . . . . *EXPMED *EXPMED, *NO, *YES
Print media information . . . . *YES *YES, *NO
Print recovery reports . . . . . *ALL *ALL, *NONE, *RCYACT...
+ for more values
Recovery locations . . . . . . . *ALL Name, *ALL, *HOME
+ for more values
Print system information . . . . *NO *NO, *YES
Reorganize BRMS database . . . . > *BATCH *NO, *YES, *BATCH
Auto-retrieved objects:
Refree . . . . . . . . . . . . *NO *NO, *YES
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-34 Reorganize BRMS database (RGZBRMDB) parameter in the STRMNTBRM CL command
300 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-35 shows the option to run BRMS database reorganization in IBM Navigator for i. To
modify the BRMS database reorganization parameter, complete the following steps:
1. From IBM Navigator for i, select Backup, Recovery, and Media Services and then click
Advanced.
2. Click the small arrow beside Backup, Recovery, and Media Services for IBM i and then
click Run Maintenance.
3. In the Run Maintenance Options window, click the File Management tab and change the
Reorganize BRMS database value, as shown in Figure 7-35.
Figure 7-35 Reorganize BRMS database option in IBM Navigator for i
Additional parameters in RMVMEDIBRM
As shown in Figure 7-36, IBM i 7.2 adds more parameters to the Remove Media Info from
BRM (RMVMEDIBRM) CL command to give users more control over a file’s details and how long
the users can retain the information.
Remove Media Info from BRM (RMVMEDIBRM)
Type choices, press Enter.
Media contents . . . . . . . . . *EXP *EXP, *REUSE
Object level detail . . . . . . *MEDCON 1-9999, *MEDCON
Link level detail . . . . . . . *OBJDTL 1-9999, *OBJDTL, *MEDCON
Spooled file level detail . . . *MEDCON 1-9999, *MEDCON, *OBJDTL
Folder level detail . . . . . . *OBJDTL 1-9999, *OBJDTL, *MEDCON
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-36 Additional parameters of the RMVMEDIBRM CL command
Chapter 7. Backup and recovery 301
Here are the additional parameters of the RMVMEDIBRM CL command:
Link level detail
The Link level detail parameter specifies when you want to remove directory- and file-level
details for media records in the media content information.
Spooled file level detail
Spooled file level detail specifies when you want to remove spooled file-level detail for
media records in the media content information. This parameter applies only to spooled
file details that are created by specifying *YES for the Spooled file data (SPLFDTA)
parameter of the SAVLIBBRM or SAVOBJBRM CL commands or in the control group attributes.
However, spooled file lists are not affected, as you must have the detail history to restore
them.
Folder level detail
Folder level detail specifies when you want to remove folder-level detail for media records
in the media content information.
For more information about the RMVMEDIBRM CL command and its parameter values, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/rmvmedibrm.htm?lang=en
STRMNTBRM command enhancement
In IBM i 7.2, the Start Maintenance for BRM (STRMNTBRM) command with the parameter
Reorganize BRMS database (RGZBRMDB) set to *YES is enhanced to input a database
message into the job log when a problem is encountered during database reorganization.
This helps the DB2 support person better understand the problem.
7.3.7 BRMS GUI in IBM Navigator for i enhancements
In IBM i 7.2, BRMS has GUI enhancements in IBM Navigator for i, which improves the
usability of the BRMS GUI functions and its coexistence with functions that have CL
commands.
The following topics are covered in this section:
“BRMS policies” on page 302
“Volume initialization and ignoring active files” on page 308
“Ability to select multiple items in backup and archive lists” on page 309
BRMS policies
You can use IBM Navigator for i to view or modify various BRMS policies, including the
following ones:
System policy
Backup policy
Archive policy
Retrieve policy
Recovery policy
302 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-37 shows the policy properties that are available in IBM Navigator for i. To view or
modify these policies, complete the following steps:
1. From IBM Navigator for i, click File Systems → Backup Recovery and Media Services.
2. On the Backup, Recovery and Media Services tab, click the small arrow next to Backup,
Recovery, and Media Services for IBM i and select the policy that you want to view or
modify.
Figure 7-37 Select the BRMS policies in Navigator for i
Chapter 7. Backup and recovery 303
System policy
The System policy provides the same function as the Work with System Policy (WRKPCYBRM
TYPE(*SYS)) CL command. You can use this policy to configure the media, notification, IPL
options, presentation, and so on. The overall System Policy Properties in IBM Navigator for i
are shown in Figure 7-38.
Figure 7-38 BRMS System policy in IBM Navigator for i
304 IBM i 7.2 Technical Overview with Technology Refresh Updates
Backup policy
You can use the Backup policy to look at what parameters or information are set in the system
policy. Figure 7-39 shows an example of seeing system policy values while modifying the
Backup policy.
Figure 7-39 BRMS Backup policy in IBM Navigator for i
Chapter 7. Backup and recovery 305
Archive policy
Similar to the Backup policy, you can use the Archive policy in IBM Navigator for i to look
ahead into what parameters or information are set in the System policy, as shown in
Figure 7-40.
Figure 7-40 BRMS Archive policy in IBM Navigator for i
306 IBM i 7.2 Technical Overview with Technology Refresh Updates
Retrieve policy
Figure 7-41 shows the Retrieve policy properties that can be modified in IBM Navigator for i.
Figure 7-41 BRMS Retrieve policy in IBM Navigator for i
Chapter 7. Backup and recovery 307
Recovery policy
Figure 7-42 shows the Retrieve policy properties that can be modified in IBM Navigator for i.
Figure 7-42 BRMS Recovery policy in IBM Navigator for i
Volume initialization and ignoring active files
You can use IBM Navigator for i to select/deselect all volumes for initialization and
select/deselect all active files to ignore them. This ability can be useful in the case where you
have many volumes for initialization and you want to ignore active files.
To enable this feature, complete the following steps:
1. From IBM Navigator for i, click File Systems → Backup Recovery and Media Services.
2. On the Backup, Recovery and Media Services tab, click the small arrow next to Volumes
and then click Add.
308 IBM i 7.2 Technical Overview with Technology Refresh Updates
3. Figure 7-43 shows the Add Volumes - Initialize Volumes window where you can select the
following actions:
– Select all for Initialize
– Deselect all for Initialize
– Select all Ignore Active Files
– Deselect all for Ignore Active Files
These actions check or clear the Initialize or Ignore Active Files check boxes that are
shown in the window.
Figure 7-43 Check boxes for marking a volume for initialization and ignoring active files
Ability to select multiple items in backup and archive lists
The BRMS GUI in IBM Navigator for i adds the capability to select multiple items within
backup and archive lists. This enables users to change easily the sequence of several entries
at a time by using the Move up and Move down buttons. Before this enhancement, users
could select only one entry at a time.
Chapter 7. Backup and recovery 309
This GUI enhancement is shown in Figure 7-44.
Figure 7-44 BRMS GUI in Navigator for i showing the multiple selection feature in a backup list
7.3.8 Migration enhancements
Major changes in IBM i 7.2 provide the modernization of storage tiering in the BRMS
migration function as an enhancement to the existing function. In prior releases, the migration
function in BRMS worked only for library migration between Auxiliary Storage Pools (ASPs)
based on the specified policies for frequency of use. This function is described in Figure 7-45
on page 311.
310 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-45 BRMS migration function for library migration in prior releases
Now in IBM i 7.2, BRMS migration is enhanced to support the migration to Independent ASPs
(IASPs), migration of *LNK lists for IFS files, and migration of database files within the same
ASP. These IBM i 7.2 enhancements are described in Figure 7-46.
Figure 7-46 Current BRMS migration functions in IBM i 7.2
Similar to the IBM Storage Easy Tier® function, the BRMS storage tiering function within an
ASP responds to the presence of flash or SSD drives in a storage pool that also contains hard
disk drives (HDDs). Those drives can be either internal or external disk drives. However,
unlike IBM storage implementations of Easy Tier, which move small pieces of data to and
from faster storage based on patterns of usage, the BRMS migration function operates at a
file or library level to automatically migrate frequently accessed database files in their entirety
from HDDs to flash or SSDs, placing such files in a faster tier of storage, and vice versa.
Chapter 7. Backup and recovery 311
A system administrator also can choose to move a file or a library to SSD based on the
knowledge that the whole file or library will be needed in the future. This aspect can be useful
for the month-end or quarter-end processing by moving the necessary file with periodically
having frequent access into faster storage.
Each of these BRMS migration improvements is explained in the following sections:
“Added support for migration to independent ASPs” on page 312
“Enhanced migration function to migrate *LNK lists (IFS)” on page 312
“Enhanced migration function of database files within an ASP” on page 313
“MGRBRM command enhancement for force migration” on page 314
Added support for migration to independent ASPs
Migration support is now extended to support migration to IASPs. This enhancement enables
users to migrate easily their libraries from a regular ASP to an IASP. With an appropriate
migration policy in place, users can also easily manage the migration rule based on the size
of the libraries and how many times the libraries are used.
To set an IASP as migration eligible, run the following command:
QSYS/CALL QBRM/Q1AOLD PARM('SETMGRELIG' 'asp-name' 'asp-class' 'Y')
Figure 7-47 shows the Work with ASP Descriptions (WRKASPBRM) command, displaying the
Eligible for migration parameter of IASPs as *YES.
Work with ASP Descriptions
System: UT30P05
Type options, press Enter.
2=Change
ASP ASP ASP ASP Hierarchy Migration
Opt Name Number Type Class Priority Eligible
*SYSTEM 00001 *SYSBAS CLS1 1 *YES
ASP02 00002 *SYSBAS CLS2 8 *YES
IASP01 00033 *PRIMARY CLS3 68 *YES
IASP02 00034 *SECONDARY CLS3 72 *YES
Bottom
Type command, press Enter.
===>
F3=Exit F4=Prompt F5=Refresh F9=Retrieve F11=Show utilization
F12=Cancel
Figure 7-47 Work with ASP Descriptions command showing migration eligible for IASPs
Enhanced migration function to migrate *LNK lists (IFS)
BRMS migration in IBM i 7.2 now supports the migration of IFS files in *LNK lists. Use this
feature to move the files in the form of a complete directory tree. This is useful for certain
situations, such as easily moving a complete directory of an IBM Lotus® Notes application
from a slower ASP to another faster ASP with SSDs when needed.
312 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-48 shows the example of a *LNK list for BRMS migration.
Work with Lists UT30P05
Position to . . . . . . Starting characters
Type options, press Enter.
1=Add 2=Change 3=Copy 4=Remove 5=Display 6=Print
Opt List Name Use Type Text
DAILYDIR *MGR *LNK List of daily directory
HEDWARDSPL *BKU *SPL Spooled files for HEDWARD OUTQ
IBMIDSPL *BKU *SPL Daily spooled file for IBMID
NOTESLNK *MGR *LNK List for Notes Application
QALLSPLF *BKU *SPL All printed output
QALLUSRLNK *BKU *LNK All user directories
QIBMLINK *BKU *LNK All IBM directories
QLNKOMT *BKU *LNK Associated user omit list for *LINK.
Bottom
F3=Exit F5=Refresh F12=Cancel
Figure 7-48 Work with BRMS lists showing a *LNK lists type for migration
Here are some restrictions of using the *LNK list for migration:
Only the first-level directory path names are allowed, for example, /dirName.
Only one directory entry is allowed in each *LNK list.
IBM product directories (directories that are started with /Q) are not supported.
Non IBM product directories, such as ‘/’, ‘/tmp’, and ‘/dev’, are not supported.
The directory tree contents must have the same file system.
Enhanced migration function of database files within an ASP
BRMS migration now supports the migration of database files (both physical and logical files)
within the same ASP. With this capability, the system administrator now has increased control
to ensure that the most frequently accessed files have priority placement on a faster tier of
storage.
For example, a migration policy can be set up so that after a file has not been viewed for a
period (for example, a week or a month), it can be automatically migrated to slower storage of
the ASP, and after a period (perhaps a couple months) of being dormant, it can automatically
be archived out to tape. With dynamic retrieval from archive storage, when the file is needed
again, it can be automatically brought back in to disk storage.
An example of an effective use of this feature is migrating several read-intensive files that are
needed by month end processing to SSDs, and then moving them back to HDDs when the
process finishes.
Chapter 7. Backup and recovery 313
Figure 7-49 shows an example of an object list containing database files for BRMS migration.
Display Object List UT30P05
Use . . . . . . . . . : *MGR
List name . . . . . . : MONTHENDDB
Text . . . . . . . . : List of month-end database files
Seq Library Object Type Attribute Member Inc/Exc
10 BEXIHIST *ALL *FILE PF *ALL *INC
20 BDNIHIST *ALL *FILE PF *ALL *INC
Bottom
Press Enter to continue.
F3=Exit F12=Cancel
Figure 7-49 Object list containing database files for BRMS migration
Here are some restrictions of using a *OBJ list containing database files for migration:
Moving database objects by using an object list can be done only within the same ASP or
IASP.
Specific library names and member names are required. Special values and generic
names are not supported.
Supports only a database file (*FILE object type with PF or LF attributes).
MGRBRM command enhancement for force migration
The Migrate using BRM (MGRBRM) command is enhanced to support force migration for an
object in the object list. Option *OBJ is added to parameter Type (TYPE) and parameter Object
list is added to support force migration.
Figure 7-50 shows the MGRBRM command with the Object list parameter to force migration of
the *OBJ type.
Migrate using BRM (MGRBRM)
Type choices, press Enter.
To asp . . . . . . . . . . . . . > *SSD Name, 1-32, *SYSTEM
Type . . . . . . . . . . . . . . *OBJ *LIB, *FLR, *LNK, *OBJ
Library . . . . . . . . . . . . Name
Folder . . . . . . . . . . . . . Name
Link list . . . . . . . . . . . Name
Object list . . . . . . . . . . MONTHENDDB Name
Bottom
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 7-50 Command MGRBRM with Object list parameter
314 IBM i 7.2 Technical Overview with Technology Refresh Updates
7.3.9 Miscellaneous BRMS enhancements
This section reviews the following miscellaneous BRMS enhancements in IBM i 7.2:
“Performance enhancement in INZBRM *RUNPRDINZ”
“Improved help text in BRMS functions”
“Less locking on the QUSRBRM library” on page 317
“Enhancement on the BRMS network notification message interval” on page 317
“Prompt message to users when a required volume is not available” on page 318
“Recovery report includes a user-defined BRMS system name” on page 318
“Allowing a backslash to be used as a delimiter in a path name” on page 318
“INZBRM enhanced to verify network communication” on page 318
Performance enhancement in INZBRM *RUNPRDINZ
The BRMS product initialization process is required after you perform a product update or
when you receive the following message:
BRM40A2 - BRMS product initialization required.
As this initialization process takes a long time to complete, BRMS is enhanced so that you
can perform BRMS product initialization faster than in the previous releases. The new INZBRM
OPTION(*RUNPRDINZ) CL command rebuilds a logical file only when the whole physical file
changes.
If there is no physical file change, BRMS product initialization does not process anything. In
addition, this product initialization uses Alter Table on detail files, instead of creating more
logical files. These two changes improve the overall BRMS product initialization.
Improved help text in BRMS functions
IBM i 7.2 provides improvements for the help texts in BRMS functions, which provide BRMS
users with more detailed and complete explanations of BRMS functions.
Chapter 7. Backup and recovery 315
Control group in PRTRPTBRM
Figure 7-51 shows the improved help text for the Control Group (CTLGRP) parameter in the
Print Report using BRM (PRTRPTBRM) CL command. This improved help text explains the
Control Group options for the PRTRPTBRM TYPE(*CTLGRPSTAT) CL command.
Print Report using BRM (PRTRPTBRM)
..............................................................................
: Control Group (CTLGRP) - Help :
: :
: Specifies which backup control group should be included in the report. :
: This parameter is ignored when parameter Type (TYPE) is not *CTLGRPSTAT. :
: Note: Backups produced by running STRBKUBRM commands will be included in :
: the report for all values except *NONE. :
: :
: *ALL :
: All backups produced by running STRBKUBRM will be included in this :
: report. Note: The output generated by CTLGRP(*NONE) will not be :
: included in this report. :
: :
: *SYSTEM :
: Backups produced by the *SYSTEM control group will be included in :
: the report. :
: :
: *BKUGRP :
: More... :
: F2=Extended help F3=Exit help F10=Move to top F11=Search Index :
: F12=Cancel F13=Information Assistant F14=Print help :
: :
:............................................................................:
Figure 7-51 Control Group help text for the PRTRPTBRM TYPE(*CTLGRPSTAT) CL command
Data compaction in DUPMEDBRM
Figure 7-52 on page 317 shows the added help text for the Duplicate Media using BRM
(DUPMEDBRM) CL command, which explains the Data compaction parameter in detail.
316 IBM i 7.2 Technical Overview with Technology Refresh Updates
Duplicate Media using BRM (DUPMEDBRM)
Type choices, press Enter.
Save media information . . . . . SAVMEDINF *NONE
Data compaction . . . . . . . . COMPACT *FROMFILE
................................................................
: Data Compaction Key (COMPACT) - Help :
: :
: Specifies whether device data compaction is performed. If :
: the device specified does not support compaction, this :
: parameter is ignored. :
: :
: *FROMFILE :
: Device data compaction is performed if the file being :
: read from the device specified on the From device :
: (FROMDEV) parameter was written using device data :
: compaction. :
: :
: More... :
: F2=Extended help F10=Move to top F11=Search Index :
F3=Exit F4= : F12=Cancel F20=Enlarge F24=More keys :
F24=More keys : :
Messages pend :..............................................................:
Figure 7-52 Data compaction help text for the DUPMEDBRM CL command
Less locking on the QUSRBRM library
In IBM i 7.2, BRMS using Save While Active (SWA) to perform a Save Media Info using BRM
(SAVMEDIBRM) needs less locking on the QUSRBRM library and allows other jobs to continue
working.
Enhancement on the BRMS network notification message interval
In the BRMS network environment, if a connection cannot be established to the system in the
BRMS network, messages are periodically added to the BRMS log based on the notify period
field in the System policy.
Before IBM i 7.2, this field has a default value of 30 seconds. In IBM i 7.2, the notify period
default value is changed to 3600 seconds (1 hour) and can be changed when option 4
“Change network group” is selected from the System policy panel.
Chapter 7. Backup and recovery 317
Figure 7-53 shows the Change network group panel with the Notify period field.
Change Network Group UT30P05 APPN
Network group . . . . : *MEDINV Position to . . . . :
FlashCopy state . . . : *ENDPRC
Communication method : *SNA *AVAIL, *IP, *SNA, *NONE, *RDB
Notify period . . . . : 3600 30-99999 seconds
Type options, press Enter.
1=Add 4=Remove
Remote Local Remote System Network
Opt Location Name Network ID Status Status
(No entries found)
F3=Exit F5=Refresh F11=BRMS Media Information F12=Cancel
Figure 7-53 Notify period default value changed to 3600 seconds
Prompt message to users when a required volume is not available
In IBM i 7.2, the BRMS restore process is enhanced to prompt the user to load the required
volumes when they are not available instead of failing with a message indicating that the
volume is not available.
Recovery report includes a user-defined BRMS system name
The recovery report (QP1ARCY), created by the Start Recovery using BRM (STRRCYBRM)
command with *REPORT specified for the Action (ACTION) parameter is enhanced to include
BRMS user-defined system name.
Allowing a backslash to be used as a delimiter in a path name
By default, the Save Object using BRM (SAVBRM) command and BRMS lists for integrated file
system object (*LNK) allow only the slash character ‘/’ to be used as a delimiter in a path
name. In IBM i 7.2, backslash ‘\’ can also be used as a delimiter in a path name.
To enable this function, run the following command:
CRTDTAARA DTAARA(QUSRBRM/Q1ACVTBSLS) TYPE(*CHAR)
INZBRM enhanced to verify network communication
The Initialize BRMS (INZBRM) command is enhanced through the Option (OPTION) parameter
to check network communication.
The following values for the OPTION parameter are used to check network communication:
*VFYENT: Verify whether the system is set correctly and communicating with other systems
in the BRMS enterprise network. No other INZBRM parameters are used for this option.
*VFYNET: Verify whether the system is set correctly and communicating with other systems
in the BRMS network. No other INZBRM parameters are used for this option.
*VFYSYS: Verify whether the system is set correctly and communicating with the system
that is specified in System name (SYSNAME) parameter.
318 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 7-54 show an example of the results of running the INZBRM command with option
*VFYSYS.
3>> INZBRM OPTION(*VFYSYS) SYSNAME(NOACTIVE)
Attempt to map host name to IP address failed with reason code 5.
Cannot establish DDM connection with remote system.
Cannot open DDM file @@QA1AAU in QTEMP.
Object @@QA1AAU in QTEMP type *FILE deleted.
File @@QA1AAU created in library QTEMP.
Open of member *N file @@QA1AAU in QTEMP failed.
Attempt to map host name to IP address failed with reason code 5.
Cannot establish DDM connection with remote system.
Cannot open DDM file @@QA1AAU in QTEMP.
Object @@QA1AAU in QTEMP type *FILE deleted.
Cannot establish connection with remote system.
Error found on INZBRM command.
Figure 7-54 Results of the INZBRM OPTION(*VFYSYS) command
Chapter 7. Backup and recovery 319
320 IBM i 7.2 Technical Overview with Technology Refresh Updates
8
Chapter 8. IBM DB2 for i
This chapter describes the following enhancements to the DB2 for i functions in IBM i version
7.2:
8.1, “Introduction to DB2 for i” on page 322
8.2, “Separation of duties concept” on page 323
8.3, “DB2 security enhancements” on page 332
8.4, “DB2 functional enhancements” on page 339
8.5, “DB2 for i services and catalogs” on page 362
8.6, “DB2 performance” on page 377
8.7, “Database engineering” on page 398
8.8, “DB2 Web Query for i” on page 410
8.9, “OmniFind Text Search Server for DB2 for i” on page 412
For more information about the IBM i 7.2 database enhancements, see the IBM i Technology
Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/DB2%20for%20i%20-%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 321
8.1 Introduction to DB2 for i
DB2 for i is a member of the DB2 family. This database is integrated and delivered with the
IBM i operating system. DB2 for i has been enhanced from release to release of IBM i. In
addition, DB2 for i is also enhanced by using the DB2 PTF Groups, where PTF Group
SF99702 applies to IBM i 7.2 for DB2. This group does not change in V7R2.
IBM i 7.2 brings many DB2 functional, security, performance, and management
enhancements. Most of these enhancements are implemented to support agility or what is
referred to as a data-centric approach for the platform.
A data-centric paradigm requires business application designers, architects, and developers
to focus on the database as a central point of modern applications for better data integrity,
security, business agility, and a lower time to market factor. This is in contrast to an
application-centric approach, where data manipulation, security, and integrity is, at least
partially, governed by the application code. A data-centric concept moves these
responsibilities over the underlying database.
A data-centric approach ensures consistent and secure data access and manipulation
regardless of the application and the database interface that are used. Implementing security
patterns for business critical data, and data access and manipulation procedures within DB2
for i, is now easier than ever, and more importantly, it removes code complexity and a
security-related burden from business applications.
This approach is especially crucial for contemporary IT environments where the same data is
being manipulated by web, mobile, and legacy applications at the same time. Moving data
manipulation logic over the DB2 for i also uses all the current and future performance
enhancements, database monitoring capabilities, and performance problem investigation
tools and techniques.
The following key IBM i 7.2 database enhancements support this data-centric approach:
Row and column access control (RCAC)
Separation of duties
DB2 for i services
Global variables
Named and default parameter support on user-defined functions (UDFs) and user-defined
table functions (UDTFs)
Pipelined table functions
SQL plan cache management
Performance enhancements
Interoperability and portability
LIMIT x OFFSET y clause
This chapter describes all the major enhancements to DB2 for i in IBM i 7.2.
322 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.2 Separation of duties concept
Separation of duties is a concept that helps companies to stay compliant with standards and
government regulations.
One of these requirements is that users doing administration tasks on operating systems
(usually they have *ALLOBJ special authority) should not be able to see and manipulate
customer data in DB2 databases.
Before IBM i 7.2, when users had *ALLOBJ special authority, they could manipulate DB2 files
on a logical level and see the data in these database files. Also, there was a problem because
someone who was able to grant permission to other users to work with data in the database
had also authority to see and manipulate the data inside the databases.
To separate out the operating system administration permissions and data manipulation
permissions, DB2 for i uses the QIBM_DB_SECADM function. For this function, authorities to see
and manipulate of data can be set up for individual users or groups. Also, a default option can
be configured. For more information about the QIBM_DB_SECADM function, see 8.2.1,
“QIBM_DB_SECADM function usage” on page 323.
Although the QIBM_DB_SECADM function usage can decide who can manipulate DB2 security,
there is another concept in DB2 for i 7.2, which helps to define which users or groups can
access rows and columns. This function is called Row and Column Access Control (RCAC).
For more information about RCAC, see 8.2.2, “Row and Column Access Control support” on
page 325.
8.2.1 QIBM_DB_SECADM function usage
IBM i 7.2 now allows management of data security without exposing the data to be read or
modified.
Users with *SECADM special authority can grant or revoke privileges to any object even if they
do not have these privileges. This can be done by using the Work with Function Usage
(WRKFCNUSG) CL command and specifying the authority of *ALLOWED or *DENIED for particular
users of the QIBM_DB_SECADM function.
From the Work with Function Usage (WRKFCNUSG) panel (Figure 8-1), enter option 5 (Display
usage) next to QIBM_DB_SECADM and press Enter.
Work with Function Usage
Type options, press Enter.
2=Change usage 5=Display usage
Opt Function ID Function Name
QIBM_DIRSRV_ADMIN IBM Tivoli Directory Server Administrator
QIBM_ACCESS_ALLOBJ_JOBLOG Access job log of *ALLOBJ job
QIBM_ALLOBJ_TRACE_ANY_USER Trace any user
QIBM_WATCH_ANY_JOB Watch any job
QIBM_DB_DDMDRDA DDM & DRDA Application Server Access
5 QIBM_DB_SECADM Database Security Administrator
QIBM_DB_SQLADM Database Administrator
Figure 8-1 Work with Function Usage panel
Chapter 8. IBM DB2 for i 323
In the example that is shown in Figure 8-2, in the Display Function Usage panel, you can see
that default authority for unspecified user profiles is *DENIED. Also, both the DEVELOPER1
and DEVELOPER2 user profiles are specifically *DENIED.
Display Function Usage
Function ID . . . . . . : QIBM_DB_SECADM
Function name . . . . . : Database Security Administrator
Description . . . . . . : Database Security Administrator Functions
Product . . . . . . . . : QIBM_BASE_OPERATING_SYSTEM
Group . . . . . . . . . : QIBM_DB
Default authority . . . . . . . . . . . . : *DENIED
*ALLOBJ special authority . . . . . . . . : *NOTUSED
User Type Usage User Type Usage
DEVELOPER1 User *DENIED
DEVELOPER2 User *DENIED
Figure 8-2 Display Function Usage panel
If you return back to the Work with Function Usage panel (Figure 8-1 on page 323) and enter
option 2 (Change usage) next to QIBM_DB_SECADM and press Enter, you see the Change
Function Usage (CHGFCNUSG) panel, as shown in Figure 8-3. You can use the CHGFCNUSG CL
command to change who is authorized to use the QIBM_DB_SECADM function.
Change Function Usage (CHGFCNUSG)
Type choices, press Enter.
Function ID . . . . . . . . . . > QIBM_DB_SECADM
User . . . . . . . . . . . . . . Name
Usage . . . . . . . . . . . . . *ALLOWED, *DENIED, *NONE
Default authority . . . . . . . *DENIED *SAME, *ALLOWED, *DENIED
*ALLOBJ special authority . . . *NOTUSED *SAME, *USED, *NOTUSED
Figure 8-3 Change Function Usage panel
324 IBM i 7.2 Technical Overview with Technology Refresh Updates
In the example that is shown in Figure 8-4, the DBADMINS group profile is being authorized
for the QIBM_DB_SECADM function.
Change Function Usage (CHGFCNUSG)
Type choices, press Enter.
Function ID . . . . . . . . . . > QIBM_DB_SECADM
User . . . . . . . . . . . . . . DBADMINS Name
Usage . . . . . . . . . . . . . *ALLOWED *ALLOWED, *DENIED, *NONE
Default authority . . . . . . . *DENIED *SAME, *ALLOWED, *DENIED
*ALLOBJ special authority . . . *NOTUSED *SAME, *USED, *NOTUSED
Figure 8-4 Allow the DBADMINS group profile access to the QIBM _DB_SECADM function
Showing the function usage for the QIBM_DB_SECADM function now shows that all users in the
DBADMINS group now can manage DB2 security. See Figure 8-5.
Display Function Usage
Function ID . . . . . . : QIBM_DB_SECADM
Function name . . . . . : Database Security Administrator
Description . . . . . . : Database Security Administrator Functions
Product . . . . . . . . : QIBM_BASE_OPERATING_SYSTEM
Group . . . . . . . . . : QIBM_DB
Default authority . . . . . . . . . . . . : *DENIED
*ALLOBJ special authority . . . . . . . . : *NOTUSED
User Type Usage User Type Usage
DBADMINS Group *ALLOWED
DEVELOPER1 User *DENIED
DEVELOPER2 User *DENIED
Figure 8-5 Display Function Usage panel showing the authority that is granted to DBADMINS group
profile
8.2.2 Row and Column Access Control support
IBM i 7.2 is now distributed with option 47, IBM Advanced Data Security for IBM i. This option
must be installed before using Row and Column Access Control (RCAC).
RCAC is based on the DB2 for i ability to define rules for row access control (by using the
SQL statement CREATE PERMISSION) and to define rules for column access control and
creation of column masks for specific users or groups (by using the SQL statement CREATE
MASK).
Note: RCAC is described in detail in Row and Column Access Support in IBM DB2 for i,
REDP-5110. This section only briefly describes the basic principles of RCAC and provides
a short example that shows the ease of implementing the basic separation of duties
concept.
Chapter 8. IBM DB2 for i 325
Special registers that are used for user identifications
To implement RCAC, special registers are needed to check which user is trying to display or
use data in a particular table. To be able to identify users for the RCAC, IBM i uses several
special registers that are listed in Table 8-1.
Table 8-1 Special registers for identifying users
Special register Definition
USER The effective user of the thread is returned.
or
SESSION_USER
SYSTEM_USER The authorization ID that initiated the connection is returned.
CURRENT USER The most recently program adopted authorization ID within the thread is
or returned. When no adopted authority is active, the effective user of the thread
CURRENT_USER Is returned.
CURRENT_USER: The CURRENT_USER special register is new in DB2 for IBM i 7.2. For
more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaq9/rzaq9osDBcurrentu
ser.htm
VERIFY_GROUP_FOR_USER function
The VERIFY_GROUP_FOR_USER function has two parameters: userid and group.
For RCAC, the userid parameter is usually one of special register values (SESSION_USER,
SYSTEM_USER, or CURRENT_USER), as described in “Special registers that are used for
user identifications” on page 326.
This function returns a large integer value. If the user is member of group, this function
returns a value of 1; otherwise, it returns a value of 0.
RCAC example
This section provides a brief example of implementing RCAC. This example uses an
employee database table in a library called HR. This employee database table contains the
following fields:
Last name
First name
Date of birth
Bank account number
Employee number
Department number
Salary
Another database table that is called CHIEF contains, for each employee number, the
employee number of their boss or chief.
326 IBM i 7.2 Technical Overview with Technology Refresh Updates
You must create the following group profiles, as shown in Example 8-1:
EMPGRP, which contains members of all employees
HRGRP, which contains members from the HR department
BOARDGRP, which contains members of all bosses or chiefs in the company
Example 8-1 Create group profiles for the RCAC example
CRTUSRPRF USRPRF(EMPGRP)
PASSWORD(*NONE)
TEXT('Employee group')
CRTUSRPRF USRPRF(HRGRP)
PASSWORD(*NONE)
TEXT('Human resources group')
CRTUSRPRF USRPRF(BOARDGRP)
PASSWORD(*NONE)
TEXT('Chiefs group')
Next, create the user profiles, as shown in the Example 8-2. For simplicity, this example
assumes the following items:
The user profile password is the same as the user profile name.
For all employees, the user profile name is the same as employee’s last name.
Example 8-2 Create user profiles for the RCAC example
CRTUSRPRF USRPRF(JANAJ)
TEXT('Jana Jameson')
GRPPRF(EMPNO)
SUPGRPRF(HRGRP)
-- Jana Jameson works in the HR department
CRTUSRPRF USRPRF(JONES)
TEXT('George Jones - the company boss')
GRPPRF(EMPGRP)
SUPGRPPRF(BOARDGRP)
-- George James is a boss in the company and is an employee as well.
CRTUSRPRF USRPRF(FERRANONI)
TEXT('Fabrizion Ferranoni')
GRPPRF(EMPGRP)
CRTUSRPRF USRPRF(KADLEC)
TEXT('Ian Kadlec')
GRPPRF(EMPGRP)
CRTUSRPRF USRPRF(NORTON)
TEXT('Laura Norton')
GRPPRF(EMPGRP)
CRTUSRPRF USRPRF(WASHINGTON)
TEXT('Kimberly Washington')
GRPPRF(EMPGRP)
Chapter 8. IBM DB2 for i 327
Now, create the DB2 schema (collection) HR and employee table EMPLOYEE. The primary
key for the employee table is the employee number. After creating the database table
EMPLOYEE, create indexes EMPLOYEE01 and EMPLOYEE02 for faster access. Then, add
records to the database by using the SQL insert command. See Example 8-3.
Note: When entering SQL commands, you can use either the STRSQL CL command to start
an interactive SQL session or use IBM Navigator for i. If you use STRSQL, make sure to
remove the semicolon marks at the end of each SQL statement.
Example 8-3 Create the schema, database table, and indexes, and populate the table with data
CREATE TABLE HR/EMPLOYEE
(FIRST_NAME FOR COLUMN FNAME CHARACTER (15 ) NOT NULL WITH DEFAULT,
LAST_NAME FOR COLUMN LNAME CHARACTER (15 ) NOT NULL WITH DEFAULT,
DATE_OF_BIRTH FOR COLUMN BIRTHDATE DATE NOT NULL WITH DEFAULT,
BANK_ACCOUNT CHARACTER (9 ) NOT NULL WITH DEFAULT,
EMPLOYEE_NUM FOR COLUMN EMPNO CHARACTER(6) NOT NULL WITH DEFAULT,
DEPARTMENT FOR COLUMN DEPT DECIMAL (4, 0) NOT NULL WITH DEFAULT,
SALARY DECIMAL (9, 0) NOT NULL WITH DEFAULT,
PRIMARY KEY (EMPLOYEE_NUM)) ;
CREATE INDEX HR/EMPLOYEE01 ON HR/EMPLOYEE
(LAST_NAME ASC,
FIRST_NAME ASC) ;
CREATE INDEX HR/EMPLOYEE02 ON HR/EMPLOYEE
(DEPARTMENT ASC,
LAST_NAME ASC,
FIRST_NAME ASC);
-- Now created the table CHIEF and add data
CREATE TABLE HR/CHIEF
(EMPLOYEE_NUM FOR COLUMN EMPNO CHARACTER(6 ) NOT NULL WITH DEFAULT,
CHIEF_NO CHARACTER(6 ) NOT NULL WITH DEFAULT,
PRIMARY KEY (EMPLOYEE_NUM)) ;
INSERT INTO HR/CHIEF VALUES
(
'G76852', 'G00012') ;
INSERT INTO HR/CHIEF VALUES
(
'G12835', 'G00012');
INSERT INTO HR/CHIEF VALUES
(
'G23561', 'G00012');
INSERT INTO HR/CHIEF VALUES
(
'G00012', 'CHIEF ');
INSERT INTO HR/CHIEF VALUES
(
'G32421', 'G00012');
328 IBM i 7.2 Technical Overview with Technology Refresh Updates
-- Load exapmple data into EMPLOYEE table
INSERT INTO HR/EMPLOYEE
VALUES('Fabrizio', 'Ferranoni',
DATE('05/12/1959') , 345723909, 'G76852','0001', 96000) ;
INSERT INTO HR/EMPLOYEE
VALUES('Ian', 'Kadlec',
DATE('11/23/1967') , 783920125, 'G23561', '0001', 64111) ;
INSERT INTO HR/EMPLOYEE
VALUES('Laura', 'Norton',
DATE('02/20/1972') , 834510932, 'G00012', '0001', 55222) ;
INSERT INTO HR/EMPLOYEE
VALUES('Kimberly', 'Washington',
DATE('10/31/1972') , 157629076, 'G12435', '0005' , 100000);
INSERT INTO HR/EMPLOYEE
VALUES('George', 'Jones',
DATE('10/11/1952') , 673948571, 'G00001', '0000' , 1100000);
INSERT INTO HR/EMPLOYEE
VALUES('Jana ', 'Jameson',
DATE('10/11/1952') , 643247347, 'G32421', '0205' , 30000);
Now comes the most important and most interesting part of this example, which is defining
the row and column access rules. First, specify the row permission access rules, as shown in
Example 8-4. The following rules are implemented:
Each employee should see only their own record, except for employees from the human
resources department (group HRGRP).
Chiefs (group BOARDGRP) should have access to all rows.
Example 8-4 Example of row access rule
CREATE PERMISSION ACCESS_TO_ROW ON HR/EMPLOYEE
FOR ROWS WHERE
(VERIFY_GROUP_FOR_USER(SESSION_USER,'BOARDGRP') = 1)
OR
(VERIFY_GROUP_FOR_USER(SESSION_USER,'EMPGRP') = 1
AND UPPER(LAST_NAME) = SESSION_USER)
OR
(VERIFY_GROUP_FOR_USER(SESSION_USER,'HRGRP') = 1)
ENFORCED FOR ALL ACCESS
ENABLE ;
-- Activate row access control
ALTER TABLE HR/EMPLOYEE ACTIVATE ROW ACCESS CONTROL ;
Chapter 8. IBM DB2 for i 329
Here is an explanation of Example 8-4 on page 329:
1. This example creates a rule that is called ACCESS_ON_ROW.
2. First, a check is done by using the VERIFY_GROUP_FOR_USER function to see whether the
user profile of the person who is querying the employee table (SESSION_USER) is part of
the group BOARDGRP. If the user is a member of BOARDGRP, the function returns a
value of 1 and they are granted access to the row.
3. If the user is member of the EMPGRP group, a check is done to see whether this user has
records in the file (UPPER(LAST_NAME) = SESSION_USER). For example, employee
Ian Kadlec cannot see the row (record) of the employee Laura Norton.
4. Another verification is done to see whether the user profile is a member of the group
HRGRP. If yes, the user profile has access to all employee records (rows).
5. If none of conditions are true, the user looking at the table data sees no records.
6. Finally, using the SQL command ALTER TABLE....ACTIVATE ROW ACCESS CONTROL, the row
permission rules are activated.
Example 8-5 shows an example of using column masks. The SQL CREATE MASK statement is
used to hide data in specific columns that contain sensitive personal information, such as a
bank account number or salary, and present that data to only authorized people.
Example 8-5 Example of creating column masks
-- Following are masks for columns, BANK_ACCOUNT and SALARY
CREATE MASK BANKACC_MASK ON HR/EMPLOYEE FOR
COLUMN BANK_ACCOUNT RETURN
CASE
WHEN (VERIFY_GROUP_FOR_USER(SESSION_USER, 'BOARDGRP' ) = 1
AND UPPER(LAST_NAME) = SESSION_USER )
THEN BANK_ACCOUNT
WHEN VERIFY_GROUP_FOR_USER(SESSION_USER, 'HRGRP' ) = 1
THEN BANK_ACCOUNT
WHEN UPPER(LAST_NAME) = SESSION_USER
AND
VERIFY_GROUP_FOR_USER(SESSION_USER, 'EMPGRP' ) = 1
THEN BANK_ACCOUNT
ELSE '*********'
END
ENABLE;
CREATE MASK SALARY_MASK ON HR/EMPLOYEE FOR
COLUMN SALARY RETURN
CASE
WHEN UPPER(LAST_NAME) = SESSION_USER
AND VERIFY_GROUP_FOR_USER(SESSION_USER, 'EMPNO') = 1
THEN SALARY
WHEN VERIFY_GROUP_FOR_USER(SESSION_USER, 'BOARDGRP' ) = 1
THEN SALARY
WHEN VERIFY_GROUP_FOR_USER(SESSION_USER, 'HRGRP' ) = 1
THEN SALARY
ELSE 0
END
ENABLE;
-- Activate both column masks
ALTER TABLE HR/EMPLOYEE ACTIVATE COLUMN ACCESS CONTROL ;
330 IBM i 7.2 Technical Overview with Technology Refresh Updates
Here is an explanation of Example 8-5 on page 330:
1. This example is creating a column mask that is called BANKACC_MASK, which is related
to the BANK_ACCOUNT column.
2. If the user accessing the data is a chief (member of the BORADGRP group), then show
only their bank account data.
3. If the user accessing the data is an HR department employee (member of the HRGRP
group), then show all employee bank account numbers.
4. All other users should not see the bank account number, so the data is masked with
‘*********’.
5. Next, create the column mask that is called SALARY_MASK, which is related to the
SALARY column.
6. If the user accessing the data is an employee (member of the EMPGRP group), then show
only their salary data.
7. If the user accessing the data is an HR employee (member of the HRGRP group), then
show all the salary data.
8. If the user accessing the data is a chief (member of the BOARDGRP group), then show all
the salary data.
9. All other users should not see the salary data, so the data is masked with ‘*********’.
10.Finally, using the SQL command ALTER TABLE....ACTIVATE Column ACCESS CONTROL, the
column mask rules are activated.
Results
When user JONES logs on (they are a member of the BOARDGRP group), they see the
results from the EMPLOYEE table, as shown in Figure 8-6. A chief can see all employees and
their salaries, but can see only their own bank account number.
Figure 8-6 EMPLOYEE table as seen by the JONES user profile (Chief)
When any employee (in this example, the KADLEC user profile) logs on, they see the results
from the EMPLOYEE table, as shown in Figure 8-7. In this case, each employee sees all
data, but only data that is related to their person. This is a result of the ACCESS_TO_ROW
row permission rule.
Figure 8-7 EMPLOYEE table as seen by the KADLEC user profile
Chapter 8. IBM DB2 for i 331
When a human resources employee (in this example, the JANAJ user profile) logs on, they
see the results from EMPLOYEE table, as shown in Figure 8-8. A human resources employee
sees the bank accounts and salaries of all employees.
Figure 8-8 EMPLOYEE table as seen by the JANAJ user profile (human resources employee)
All other user profiles see an empty database file.
Adding the OR REPLACE clause to masks and permissions
Similar to other Data Definition Language (DDL) statements, the OR REPLACE clause was
added to the following SQL commands:
CREATE MASK
REPLACE MASK
CREATE PERMISSION
REPLACE PERMISSION
The use of the OR REPLACE clause makes it easier to redeploy the RCAC rule text. For
more information about the OR REPLACE clause, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
8.3 DB2 security enhancements
This section describes the following DB2 security-related enhancements in IBM i 7.2:
8.3.1, “QIBM_DB_ZDA and QIBM_DB_DDMDRDA function usage IDs” on page 333
8.3.2, “Authorization list detail added to authorization catalogs” on page 333
8.3.3, “New user-defined table function: QSYS2.GROUP_USERS()” on page 334
8.3.4, “New security view: QSYS2.GROUP_PROFILE_ENTRIES” on page 334
8.3.5, “New attribute column in the SYSIBM.AUTHORIZATIONS catalog” on page 334
8.3.6, “New QSYS2.SQL_CHECK_AUTHORITY() UDF” on page 335
8.3.7, “Refined object auditing control on QIBM_DB_OPEN exit program” on page 335
8.3.8, “Simplified DDM/DRDA authentication management by using group profiles” on
page 336
8.3.9, “IBM InfoSphere Guardium V9.0 and IBM Security Guardium V10” on page 337
332 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.3.1 QIBM_DB_ZDA and QIBM_DB_DDMDRDA function usage IDs
The QIBM_DB_ZDA and QIBM_DB_DDMDRDA function usage IDs block database server inbound
connections. These function usage IDs ship with the default authority of *ALLOWED:
You can use the QIBM_DB_ZDA function usage ID to restrict ODBC and JDBC Toolbox from
the server side, including Run SQL Scripts, System i Navigator, and DB2 specific portions
of Systems Director Navigator for i.
You can use the QIBM_DB_DDMDRDA function usage ID to lock down DDM and IBM DRDA
application server access.
These function usage IDs can be managed by the Work with Function Usage (WRKFCNUSG) CL
command or by using the Change Function Usage (CHGFCNUSG) CL command. For an example
of using the CHGFCNUSG CL command, see Example 8-6.
Example 8-6 Deny user profile user1 the usage of the DDM and DRDA application server access
CHGFCNUSG FCNID(QIBM_DB_DDMDRDA) USER(user1) USAGE(*DENIED)
8.3.2 Authorization list detail added to authorization catalogs
Using an authorization list eases security management and also improves performance
because user profiles do not need to contain a list of objects to which they are authorized.
They need to contain the authorization list that contains these objects.
Table 8-2 lists the DB2 for i catalogs that were updated to include the AUTHORIZATION_LIST
column.
Note: Catalogs QSYS2/SYSXSROBJECTAUTH and QSYS2/SYSVARIABLEAUTH were
already updated in IBM i 7.1 to have the AUTHORIZATION_LIST column.
Table 8-2 Catalogs containing the AUTHORIZATION_LIST column
Catalog Catalog description|
QSYS2/SYSPACKAGEAUTH *SQLPKG - Packages
QSYS2/SYSUDTAUTH *SQLUDT - User-defined types
QSYS2/SYSTABAUTH *FILE - Tables
QSYS2/SYSSEQUENCEAUTH *DTAARA - Sequences
QSYS2/SYSSCHEMAAUTH *LIB - Schema
QSYS2/SYSROUTINEAUTH *PGM and *SRVPGM - Procedures and Functions
QSYS2/SYSCOLAUTH Columns
QSYS2/SYSXSROBJECTAUTH *XSROBJ - XML Schema Repositories
QSYS2/SYSVARIABLEAUTH *SRVPGM - Global Variables
Chapter 8. IBM DB2 for i 333
8.3.3 New user-defined table function: QSYS2.GROUP_USERS()
QSYS2.GROUP_USERS() is a new UDTF that you can use to create queries that can specify a
group profile as its parameter and list user profiles in this group as the output.
The QSYS2.GROUP_USERS() function returns user profiles that have the specified group set up
as their main or supplemental group. See Figure 8-9.
Figure 8-9 Example of the QSYS2.GROUP_USERS() UDTF
8.3.4 New security view: QSYS2.GROUP_PROFILE_ENTRIES
The new QSYS2.GROUP_PROFILE_ENTRIES security view returns a table with the
following three columns:
GROUP_PROFILE_NAME
USER_PROFILE_NAME
USER_TEXT
It accounts for both group and supplemental group profiles.
Figure 8-10 shows an example of using the QSYS2.GROUP_PROFILE_ENTRIES security
view.
Figure 8-10 Example of the QSYS2.GROUP_PROFILE_ENTRIES security view
8.3.5 New attribute column in the SYSIBM.AUTHORIZATIONS catalog
The SYSIBM.AUTHORIZATIONS view is a DB2 family compatible catalog that contains a
row for every authorization ID.
The SYSIBM.AUTHORIZATIONS catalog is extended to include a new column that is called
ALTHORIZATION_ATTR, which differentiates users from groups. See Figure 8-11 on
page 335.
334 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-11 SYSIBM.AUTHORIZATIONS catalog showing the new ALTHORIZATION_ATTR column
8.3.6 New QSYS2.SQL_CHECK_AUTHORITY() UDF
The QSYS2.SQL_CHECK_AUTHORITY() UDF is used to determine whether the user calling this
function has the authority to object that is specified. The object type must be *FILE. The first
parameter is the library and the second parameter is the object name. The result type is
SMALLINT.
There are two possible result values:
1: User has authority
0: User does not have authority
Figure 8-12 shows the user that has authority to the CZZ62690/QTXTSRC object.
Figure 8-12 Example of user of the QSYS2.SQL_CHECK_AUTHORITY UDF
8.3.7 Refined object auditing control on QIBM_DB_OPEN exit program
Previously, an exit program control (*OBJAUD) was added to limit exit program calls. Because
of the wide use of *CHANGE object auditing in some environments, the *OBJAUD control did not
reduce the calls to the exit program enough in some environments.
The Open Data Base File exit program was enhanced to support two new values for the exit
program data: OBJAUD(*ALL) and OBJAUD(*CHANGE).
Example 8-7 shows that three approaches are now possible.
Example 8-7 Object auditing control on the QIBM_DB_OPEN exit program
First example: The exit program is called when using any object auditing.
ADDEXITPGM EXITPNT(QIBM_QDB_OPEN) FORMAT(DBOP0100) PGMNBR(7) PGM(MJATST/OPENEXIT2)
THDSAFE(*YES) TEXT('MJA') REPLACE(*NO)PGMDTA(*JOB *CALC '*OBJAUD')
Second example: The exit program is called when using *ALL object auditing.
ADDEXITPGM EXITPNT(QIBM_QDB_OPEN) FORMAT(DBOP0100) PGMNBR(7) PGM(MJATST/OPENEXIT2)
THDSAFE(*YES) TEXT('MJA') REPLACE(*NO) PGMDTA(*JOB *CALC 'OBJAUD(*ALL)')
Chapter 8. IBM DB2 for i 335
Third example: The exit program is called when using *CHANGE object auditing.
ADDEXITPGM EXITPNT(QIBM_QDB_OPEN) FORMAT(DBOP0100) PGMNBR(7) PGM(MJATST/OPENEXIT2)
THDSAFE(*YES) TEXT('MJA') REPLACE(*NO) PGMDTA(*JOB *CALC 'OBJAUD(*CHANGE)')
8.3.8 Simplified DDM/DRDA authentication management by using group
profiles
The new function of simplified DDM/DRDA authentication management by using group
profiles enhances the authentication process when users connect to a remote database by
using DDM or DRDA, for example, by using the SQL command CONNECT TO <database>.
Before this enhancement, any user connecting to a remote database needed to have a server
authentication entry (by using the Add Server Authentication Entry (ADDSVRAUTHE) CL
command) with a password for their user profile.
Note: To use the ADDSRVAUTE CL command, you must have the following special
authorities:
Security administrator (*SECADM) user special authority
Object management (*OBJMGT) user special authority
You can use this enhancement to have a server authentication entry that is based on a group
profile instead of individual users. When a user is a member of a group profile, or has a group
profile set up as supplemental in their user profile, then only the group profile must have a
server authentication entry. See Example 8-8.
Example 8-8 Use a group profile authentication entry to access a remote database
First create a group profile called TESTGROUP:
CRTUSRPRF USRPRF(TESTGROUP) PASSWORD(*NONE)
Then create a user profile TESTUSR and make it a member of TESTGROUP:
CRTUSRPRF USRPRF(TESTUSR) PASSWORD(somepasswd) GRPPRF(TESTTEAM)
Create the server authentication entry:
ADDSVRAUTE USRPRF(TESTGROUP) SERVER(QDDMDRDASERVER or <RDB-name>) USRID(sysbusrid)
PASSWORD(sysbpwd)
User TESTUSR then uses the STRSQL command to get to an interactive SQL session and
issues the following command, where RDB-name is a remote relational database
registered using the command WRKRDBDIRE:
CONNECT TO <RDB-name>
The connection attempt is done to the system with <RDB-name> using <sysbusrid>
user profile and <sysbpwd> password.
The following steps define the process of group profile authentication:
1. Search the authentication entries where USRPRF=user profile and SERVER=application
server name.
2. Search the authentication entries where USRPRF=user profile and
SERVER='QDDMDRDASERVER'.
336 IBM i 7.2 Technical Overview with Technology Refresh Updates
3. Search the authentication entries where USRPRF=group profile and SERVER=application
server name.
4. Search the authentication entries where USRPRF=group profile and
SERVER='QDDMDRDASERVER'.
5. Search the authentication entries where USRPRF=supplemental group profile and SERVER=
application server name.
6. Search the authentication entries where USRPRF=supplemental group profile and
SERVER='QDDMDRDASERVER'.
7. If no entry was found in all the previous steps, a USERID only authentication is attempted.
Note: When the default authentication entry search order (explained in the previous steps)
is used, the search order ceases at connect time if a match is found for QDDMDRDASERVER.
The QIBM_DDMDRDA_SVRNAM_PRIORITY environment variable can be used to specified whether
an explicit server name order is used when searching for authentication entries.
Example 8-9 shows an example of creating the QIBM_DDMDRDA_SVRNAM_PRIORITY environment
variable.
Example 8-9 Create the QIBM_DDDMDRDA_SVRNAM_PRIORITY environment variable
ADDENVVAR ENVVAR(QIBM_DDMDRDA_SVRNAM_PRIORITY) VALUE(’Y’) LEVEL(*JOB or *SYS)
For more information about how to set up authority for DDM and DRDA, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/ddp/rbal1sourcesecurity.ht
m?lang=en
8.3.9 IBM InfoSphere Guardium V9.0 and IBM Security Guardium V10
IBM Security Guardium® (formerly known as IBM InfoSphere® Guardium) is an enterprise
information database audit and protection solution that helps enterprises protect and audit
information across a diverse set of relational and non-relational data sources. It allows
companies to stay compliant with wide range of standards. Here are some of security areas
that are monitored:
Access to sensitive data (successful or failed SELECTs)
Schema changes (CREATE, DROP, ALTER TABLES, and so on)
Security exceptions (failed logins, SQL errors, and so on)
Accounts, roles, and permissions (GRANT and REVOKE)
The Security Guardium product captures database activity from DB2 for i by using the AIX
based IBM S-TAP® software module running in PASE. Both audit information and SQL
monitor information is streamed to S-TAP. Audit details that are passed to S-TAP can be
filtered for both audit data and also DB2 monitor data for performance reasons.
Chapter 8. IBM DB2 for i 337
Figure 8-13 shows how Security Guardium collects data from DB2 monitors and the audit
journal.
Figure 8-13 InfoSphere Guardium V9.0 Collection Data flow
With InfoSphere Guardium V9.0, DB2 for IBM i can now be included as a data source,
enabling the monitoring of accesses from native interfaces and through SQL. Supported DB2
for i data sources are from IBM i 6.1, 7.1, and 7.2.
The Data Access Monitor feature is enhanced in V9.0 with the following capabilities:
Failover support for IBM i was added.
Support for multiple policies (up to nine), with IBM i side configuration.
Filtering improvements, with IBM i side configuration.
For more information about InfoSphere Guardium V9.0 and DB2 for i support, see the
following website:
https://ibm.biz/GuardiumDAMonIBMi
The successor version of InfoSphere Guardium V9.0 is IBM Security Guardium V10.
Version 10 has the Data Access Monitor feature and has a new Vulnerability Assessment (VA)
feature. Vulnerability Assessment with IBM i contains a comprehensive set of more than 130
tests that show weaknesses in your IBM i security setup. It allows reporting for IBM i 6.1, 7.1,
and 7.2 partitions.
Data Access Monitor Enhancements in IBM Security Guardium V10
The Data Access Monitor feature has the following functions for the IBM i client:
Failover support for IBM i was added.
Support for multiple policies (up to nine), with IBM i side configuration.
Filtering improvements, with IBM i side configuration.
Support for S-TAP load balancing (non-enterprise).
Encrypted traffic between S-TAP and collector.
Closer alignment with other UNIX S-TAP.
338 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-14 shows the revised S-TAP architecture and enhanced Guardium topology for
IBM Security Guardium V10.
Figure 8-14 IBM Security Guardium V10 Collection Data flow
For more information about Security Guardium V10 and DB2 for i support, see the following
website:
https://ibm.biz/BdsDUJ
There is also an article in IBM developerWorks covering more details of IBM Security
Guardium V10:
http://www.ibm.com/developerworks/library/se-guardium-v10/index.html
8.4 DB2 functional enhancements
This section introduces the functional enhancements of DB2 for i 7.2, which include the
following items:
8.4.1, “OFFSET and LIMIT clauses” on page 340
8.4.2, “CREATE OR REPLACE table SQL statement” on page 340
8.4.3, “DB2 JavaScript Object Notation store” on page 344
8.4.4, “Remote 3-part name support on ASSOCIATE LOCATOR” on page 344
8.4.5, “Flexible views” on page 344
8.4.6, “Increased time stamp precision” on page 345
8.4.7, “Named and default parameter support for UDF and UDTFs” on page 346
8.4.8, “Function resolution by using casting rules” on page 347
8.4.9, “Use of ARRAYs within scalar UDFs” on page 349
8.4.10, “Built-in global variables” on page 351
8.4.11, “Expressions in PREPARE and EXECUTE IMMEDIATE statements” on page 352
8.4.12, “Autonomous procedures” on page 353
8.4.13, “New SQL TRUNCATE statement” on page 354
Chapter 8. IBM DB2 for i 339
8.4.14, “New LPAD() and RPAD() built-in functions” on page 355
8.4.15, “Pipelined table functions” on page 356
8.4.16, “Regular expressions” on page 358
8.4.17, “JOB_NAME and SERVER_MODE_JOB_NAME built-in global variables” on
page 359
8.4.18, “RUNSQL control of output listing” on page 359
8.4.19, “LOCK TABLE ability to target non-*FIRST members” on page 360
8.4.20, “QUSRJOBI() retrieval of DB2 built-in global variables” on page 360
8.4.21, “SQL functions (user-defined functions and user-defined table functions)
parameter limit” on page 360
8.4.22, “New binary scalar functions” on page 360
8.4.23, “Adding and dropping partitions spanning DDS logical files” on page 361
8.4.24, “Direct control of system names for global variables” on page 361
8.4.25, “LOCK TABLE ability to target non-FIRST members” on page 362
8.4.1 OFFSET and LIMIT clauses
In SQL queries, it is now possible to specify OFFSET and LIMIT clauses:
The OFFSET clause specifies how many rows to skip before any rows are retrieved as
part of a query.
The LIMIT clause specifies the maximum number of rows to return.
This support is useful when programming a web page containing data from large tables and
the user must page up and page down to see additional records. You can use OFFSET to
retrieve data only for a specific page, and use LIMIT to see how many records a page has.
The following considerations apply:
This support is possible only when LIMIT is used as part of the outer full select of a
DECLARE CURSOR statement or a prepared SELECT statement.
The support does not exist within the Start SQL (STRSQL) command.
For more information about the OFFSET and LIMIT clauses, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzpdf.pdf?lang=en
8.4.2 CREATE OR REPLACE table SQL statement
DB2 for i now allows optional OR REPLACE capability to the CREATE TABLE statement. This
improvement gives users the possibility of a much better approach to the modification of
tables strategy. Before this support, the only way to modify a table was to use an ALTER TABLE
statement and manually remove and re-create dependent objects.
The OR REPLACE capability specifies replacing the definition for the table if one exists at the
current server. The existing definition is effectively altered before the new definition is
replaced in the catalog.
340 IBM i 7.2 Technical Overview with Technology Refresh Updates
Definition for the table exists if the following is true:
FOR SYSTEM NAME is specified and the system-object-identifier matches the
system-object-identifier of an existing table.
FOR SYSTEM NAME is not specified and table-name is a system object name that matches
the system-object-identifier of an existing table.
If a definition for the table exists and table-name is not a system object name, table-name can
be changed to provide a new name for the table.
This option is ignored if a definition for the table does not exist in the current server.
When the table already exists, the CREATE OR REPLACE TABLE SQL statement can specify
behavior that is related to the process of changing the database table by using the ON REPLACE
clause.
There are three options:
PRESERVE ALL ROWS
The current rows of the specified table are preserved. PRESERVE ALL ROWS is not allowed if
WITH DATA is specified with result-table-as.
All rows of all partitions in a partitioned table are preserved. If the new table definition is a
range partitioned table, the defined ranges must be able to contain all the rows from the
existing partitions.
If a column is dropped, the column values are not preserved. If a column is altered, the
column values can be modified.
If the table is not a partitioned table or is a hash partitioned table, PRESERVE ALL ROWS and
PRESERVE ROWS are equivalent.
PRESERVE ROWS
The current rows of the specified table are preserved. PRESERVE ROWS is not allowed if
WITH DATA is specified with result-table-as.
If a partition of a range partitioned table is dropped, the rows of that partition are deleted
without processing any delete triggers. To determine whether a partition of a range
partitioned table is dropped, the range definitions and the partition names (if any) of the
partitions in the new table definition are compared to the partitions in the existing table
definition. If either the specified range or the name of a partition matches, it is preserved. If
a partition does not have a partition-name, its boundary-spec must match an existing
partition.
If a partition of a hash partition table is dropped, the rows of that partition are preserved.
If a column is dropped, the column values are not preserved. If a column is altered, the
column values can be modified.
DELETE ROWS
The current rows of the specified table are deleted. Any existing DELETE triggers are not
fired.
REPLACE rules
When a table is re-created by REPLACE by using PRESERVE ROWS, the new definition of the table
is compared to the old definition and logically, for each difference between the two, a
corresponding ALTER operation is performed. When the DELETE ROWS option is used, the table
is logically dropped and re-created; if objects that depend on the table remain valid, any
modification is allowed.
Chapter 8. IBM DB2 for i 341
For more information, see Table 8-3. For columns, constraints, and partitions, the
comparisons are performed based on their names and attributes.
Table 8-3 Behavior of REPLACE compared to ALTER TABLE functions
New definition versus existing definition Equivalent ALTER TABLE function
Column
The column exists in both and the attributes are the No change
same.
The column exists in both and the attributes are ALTER COLUMN
different.
The column exists only in new table definition. ADD COLUMN
The column exists only in existing table definition. DROP COLUMN RESTRICT
Constraint
The constraint exists in both and is the same. No change
The constraint exists in both and is different. DROP constraint RESTRICT and ADD
constraint
The constraint exists only in the new table ADD constraint
definition.
The constraint exists only in the existing table DROP constraint RESTRICT
definition.
materialized-query-definition
materialized-query-definition exists in both and is No change
the same.
materialized-query-definition exists in both and is ALTER MATERIALIZED QUERY
different.
materialized-query-definition exists only in the new ADD MATERIALIZED QUERY
table definition.
materialized-query-definition exists only in the DROP MATERIALIZED QUERY
existing table definition.
partitioning-clause
partitioning-clause exists in both and is the same. No change
partitioning-clause exists in both and is different. ADD PARTITION, DROP PARTITION, and ALTER
PARTITION
partitioning-clause exists only in the new table ADD partitioning-clause
definition.
partitioning-clause exists only in the existing table DROP PARTITIONING
definition.
NOT LOGGED INITIALLY
NOT LOGGED INITIALLY exists in both. No change
NOT LOGGED INITIALLY exists only in the new table NOT LOGGED INITIALLY
definition.
342 IBM i 7.2 Technical Overview with Technology Refresh Updates
New definition versus existing definition Equivalent ALTER TABLE function
NOT LOGGED INITIALLY exists only in the existing Logged initially
table definition.
VOLATILE
The VOLATILE attribute exists in both and is the No change
same.
The VOLATILE attribute exists only in the new table VOLATILE
definition.
The VOLATILE attribute exists only in the existing NOT VOLATILE
table definition.
media-preference
media-preference exists in both and is the same. No change
media-preference exists only in the new table ALTER media-preference
definition.
media-preference exists only in the existing table UNIT ANY
definition.
memory-preference
memory-preference exists in both and is the same. No change
memory-preference exists only in the new table ALTER memory-preference
definition.
memory-preference exists only in the existing table KEEP IN MEMORY NO
definition.
Any attributes that cannot be specified in the CREATE TABLE statement are preserved:
Authorized users are maintained. The object owner might change.
Current journal auditing is preserved. However, unlike other objects, REPLACE of a table
generates a ZC (change object) journal audit entry.
Current data journaling is preserved.
Comments and labels are preserved.
Triggers are preserved, if possible. If it is not possible to preserve a trigger, an error is
returned.
Masks and permissions are preserved, if possible. If it is not possible to preserve a mask
or permission, an error is returned.
Any views, materialized query tables, and indexes that depend on the table are preserved
or re-created, if possible. If it is not possible to preserve a dependent view, materialized
query table, or index, an error is returned.
The CREATE statement (including the REPLACE capability) can be complex. For more
information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
Chapter 8. IBM DB2 for i 343
8.4.3 DB2 JavaScript Object Notation store
Support for JavaScript Object Notation (JSON) documents was added to DB2 for i. You can
store any JSON documents in DB2 as BLOBs. The current implementation for DB2 for i
supports the DB2 JSON command-line processor and the DB2 JSON Java API.
The current implementation of DB2 for i matches the subset of support that is available for
DB2 for Linux, UNIX, and Windows, and DB2 for z/OS.
The following actions are now supported:
Use the JDB2 JSON Java API in Java applications to store and retrieve JSON documents
as BLOB data from DB2 for i tables.
Create JSON collections (single BLOB column table).
Insert JSON documents into a JSON collection.
Retrieve JSON documents.
Convert JSON documents from BLOB to character data with the SYSTOOLS.BSON2JSON()
UDF.
For details and examples, see the following article in IBM developerWorks:
https://www.ibm.com/developerworks/ibmi/library/i-json-store-technology/
8.4.4 Remote 3-part name support on ASSOCIATE LOCATOR
Before this enhancement, programmers could not consume result sets that were created on
behalf of a remote procedure CALL. With this enhancement, the ASSOCIATE LOCATOR SQL
statement can target RETURN TO CALLER style result sets that are created by a procedure that
ran on a remote database due to a remote 3-part CALL.
This style of programming is an alternative to the INSERT with remote subselect statement.
Requirements:
The application requestor (AR) target must be IBM i 7.1 or higher.
The application server (AS) target must be IBM i 6.1 or higher.
For more information about how to use this enhancement, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
8.4.5 Flexible views
Before the flexible views enhancement, programmers could build static views only by using
the CREATE VIEW SQL statement, which created a logical file. If a different view or a view with
different parameters (WHERE clause) was needed, a new static view had to be created again by
using the CREATE VIEW SQL statement.
This enhancement provides a way to build views that are flexible and usable in many more
situations just by changing the parameters. The WHERE clause of the flexible view can contain
both global built-in variables and the DB2 global variables. These views also can be used for
inserting and updating data.
344 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.4.6 Increased time stamp precision
In IBM i 7.2, up to 12 digits can be set as the time stamp precision. Before IBM i 7.2, only six
digits were supported as the time stamp precision. This enhancement applies to DDL and
DML. You can specify the time stamp precision in the CREATE TABLE statement. You can also
adjust existing tables by using the ALTER TABLE statement.
Example 8-10 shows the results of mixed precision time in the CREATE TABLE and INSERT
statements.
Example 8-10 Increased time stamp precision
CREATE TABLE corpdb.time_travel(
old_time TIMESTAMP,
new_time TIMESTAMP(12),
no_time TIMESTAMP(0),
Last_Change TIMESTAMP NOT NULL IMPLICITLY HIDDEN FOR EACH ROW ON UPDATE AS
ROW CHANGE TIMESTAMP);
INSERT INTO corpdb.time_travel
VALUES(current timestamp, current timestamp,
current timestamp);
INSERT INTO corpdb.time_travel
VALUES(current timestamp, current timestamp(12),
current timestamp);
SELECT old_time,
new_time,
no_time,
last_change
FROM corpdb.time_travel;
SELECT new_time - last_change as new_minus_last,
new_time - old_time as new_minus_old,
new_time - no_time as new_minus_no
FROM corpdb.time_travel;
Figure 8-15 shows the results of the first SELECT statement in Example 8-10. Notice that the
precision of the data of each field varies depending on the precision digits.
Figure 8-15 Results of the first SELECT statement
The second SELECT statement in Example 8-10 calculates the difference of NEW_TIME and
each other field. Figure 8-16 shows the results of this SELECT statement. The second record of
the result is expressed with the precision as 12 digits because the value that is stored in
NEW_TIME has 12 digits as its precision.
Figure 8-16 Results of the second SELECT statement
Chapter 8. IBM DB2 for i 345
Note: You can adjust the precision of the time stamp columns of existing tables by using an
ALTER TABLE statement. However, the existing data in those columns has the remaining
initial digits because precision of time stamp data is determined at the time of generation.
For more information about timestamp precision, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzch2timestamp.htm
8.4.7 Named and default parameter support for UDF and UDTFs
Similar to named and default parameters for procedures in IBM i 7.1 TR5, IBM i 7.2 adds this
support for SQL and external UDFs. This enhancement provides the usability that is found
with CL commands to UDF and UDTFs.
Example 8-11 shows an example of a UDF that specifies a default value to a parameter.
Example 8-11 Named and default parameter support on UDF and UDTFs
CREATE OR REPLACE FUNCTION DEPTNAME(
P_EMPID VARCHAR(6) , P_REQUESTED_IN_LOWER_CASE INTEGER DEFAULT 0)
RETURNS VARCHAR(30)
LANGUAGE SQL
D:BEGIN ATOMIC
DECLARE V_DEPARTMENT_NAME VARCHAR(30);
DECLARE V_ERR VARCHAR(70);
SET V_DEPARTMENT_NAME = (
SELECT CASE
WHEN P_REQUESTED_IN_LOWER_CASE = 0 THEN
D.DEPTNAME
ELSE
LOWER(D.DEPTNAME)
END CASE
FROM DEPARTMENT D, EMPLOYEE E
WHERE E.WORKDEPT = D.DEPTNO AND
E.EMPNO = P_EMPID);
IF V_DEPARTMENT_NAME IS NULL THEN
SET V_ERR = 'Error: employee ' CONCAT P_EMPID CONCAT ' was not found';
SIGNAL SQLSTATE '80000' SET MESSAGE_TEXT = V_ERR;
END IF ;
RETURN V_DEPARTMENT_NAME;
END D;
Example 8-12 shows the VALUES statement that uses the example UDF in Example 8-11 as
specifying different values to the P_REQUESTED_IN_LOWER_CASE parameter.
Example 8-12 VALUES statement specifying a different value to the parameter in the UDF
VALUES(DEPTNAME('000110'),
DEPTNAME('000110', 1 ),
DEPTNAME('000110', P_REQUESTED_IN_LOWER_CASE=>1));
Figure 8-17 on page 347 shows the results of Example 8-12.
346 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-17 Results of the VALUES statement that uses the UDF
8.4.8 Function resolution by using casting rules
Before IBM i 7.2, function resolution looked for only an exact match with the following
perspectives:
Function name
Number of parameters
Data type of parameters
With IBM i 7.2, if DB2 for i does not find an exact match when using function resolution, it
looks for the best fit by using casting rules. With these new casting rules, if CAST() is
supported for the parameter data type mismatch, the function is found.
For more information about rules, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzbestfit.htm
Example 8-13 describes a sample function and a VALUES statement that uses that function.
Example 8-13 Sample function that casting might have occurred
CREATE OR REPLACE FUNCTION MY_CONCAT(
FIRST_PART VARCHAR(10),
SECOND_PART VARCHAR(50))
RETURNS VARCHAR(60)
LANGUAGE SQL
BEGIN
RETURN(FIRST_PART CONCAT SECOND_PART);
END;
VALUES(MY_CONCAT(123,456789));
Chapter 8. IBM DB2 for i 347
Figure 8-18 shows the results of the VALUES statement with an SQLCODE-204 error before
IBM i 7.2.
Figure 8-18 Results of the VALUES statement with an SQLCODE-204 error before IBM i 7.2
348 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-19 shows the results with IBM i 7.2, in which the function is found with casting rules.
Figure 8-19 Results of the VALUES statement with the FUNCTION found with casting rules
8.4.9 Use of ARRAYs within scalar UDFs
IBM i 7.2 can create a type that is an array and use it in SQL procedures. In addition to this
array support, an array can be used in scalar UDFs and in SQL procedures.
Example 8-14 shows an example of creating an array type and using it in a UDF.
Example 8-14 Array support in scalar UDFs
CREATE TABLE EMPPHONE(ID VARCHAR(6) NOT NULL,
PRIORITY INTEGER NOT NULL,
PHONENUMBER VARCHAR(12),
PRIMARY KEY (ID, PRIORITY));
INSERT INTO EMPPHONE VALUES('000001', 1, '03-1234-5678');
INSERT INTO EMPPHONE VALUES('000001', 2, '03-9012-3456');
INSERT INTO EMPPHONE VALUES('000001', 3, '03-7890-1234');
CREATE TYPE PHONELIST AS VARCHAR(12) ARRAY[10];
CREATE OR REPLACE FUNCTION getPhoneNumbers (EmpID CHAR(6)) RETURNS VARCHAR(130)
BEGIN
DECLARE numbers PHONELIST;
DECLARE i INTEGER;
DECLARE resultValue VARCHAR(130);
SELECT ARRAY_AGG(PHONENUMBER ORDER BY PRIORITY) INTO numbers
FROM EMPPHONE
WHERE ID = EmpID;
SET resultValue = '';
SET i = 1;
WHILE i <= CARDINALITY(numbers) DO
Chapter 8. IBM DB2 for i 349
SET resultValue = TRIM(resultValue) ||','|| TRIM(numbers[i]);
SET i = i + 1;
END WHILE;
RETURN TRIM(L ',' FROM resultValue);
END;
VALUES(getPhoneNumbers('000001'));
Figure 8-20 shows the results of creating an array type and using it in a UDF.
Figure 8-20 Results of a scalar UDF that uses an array
350 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.4.10 Built-in global variables
New built-in global variables are supported in IBM i 7.2, as shown in Table 8-4. These
variables are referenced-purpose-only variables and maintained by DB2 for i automatically.
These variables can be referenced anywhere a column name can be used. Global variables
fit nicely into view definitions and RCAC masks and permissions.
Table 8-4 DB2 built-in global variables that are introduced in IBM i 7.2
Variable name Schema Data type Size
CLIENT_IPADDR SYSIBM VARCHAR 128
CLIENT_HOST SYSIBM VARCHAR 255
CLIENT_PORT SYSIBM INTEGER -
PACKAGE_NAME SYSIBM VARCHAR 128
PACKAGE_SCHEMA SYSIBM VARCHAR 128
PACKAGE_VERSION SYSIBM VARCHAR 64
ROUTINE_SCHEMA SYSIBM VARCHAR 128
ROUTINE_SPECIFIC_NAME SYSIBM VARCHAR 128
ROUTINE_TYPE SYSIBM CHAR 1
JOB_NAME QSYS2 VARCHAR 28
SERVER_MODE_JOB_NAME QSYS2 VARCHAR 28
Example 8-15 shows an example of a SELECT statement querying some client information.
Example 8-15 Example of a SELECT statement to get client information from global variables
SELECT SYSIBM.client_host AS CLIENT_HOST,
SYSIBM.client_ipaddr AS CLIENT_IP,
SYSIBM.client_port AS CLIENT_PORT
FROM SYSIBM.SYSDUMMY1
As for getting client information, TCP/IP services in QSYS2, which were introduced in
IBM i 7.1, can be also used, as shown in Example 8-16.
Example 8-16 Get client information from TCP/IP services in QSYS2
SELECT * FROM QSYS2.TCPIP_INFO
For more information about DB2 built-in global variables, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
Chapter 8. IBM DB2 for i 351
8.4.11 Expressions in PREPARE and EXECUTE IMMEDIATE statements
In IBM i 7.2, expressions can be used in the PREPARE and EXECUTE IMMEDIATE statements in
addition to variables.
Example 8-17 and Example 8-18 are the statements for getting the information about advised
indexes from QSYS2 and putting them into a table in QTEMP. Example 8-17 is an example for
before IBM i 7.2 and Example 8-18 is the example for IBM i 7.2. With this enhancement, many
SET statements can be eliminated from the generation of the WHERE clause.
Example 8-17 Example of EXECUTE IMMEDIATE with concatenating strings before IBM i 7.2
SET INSERT_STMT = 'INSERT INTO QTEMP.TMPIDXADV SELECT * FROM
QSYS2.CONDENSEDINDEXADVICE WHERE ';
IF (P_LIBRARY IS NOT NULL) THEN
SET WHERE_CLAUSE = 'TABLE_SCHEMA = ''' CONCAT
RTRIM(P_LIBRARY) CONCAT ''' AND ';
ELSE
SET WHERE_CLAUSE = '';
END IF;
IF (P_FILE IS NOT NULL) THEN
SET WHERE_CLAUSE = WHERE_CLAUSE CONCAT ' SYSTEM_TABLE_NAME = ''' CONCAT
RTRIM(P_FILE) CONCAT ''' AND ';
END IF;
IF (P_TIMES_ADVISED IS NOT NULL) THEN
SET WHERE_CLAUSE = WHERE_CLAUSE CONCAT ' TIMES_ADVISED >= ' CONCAT
P_TIMES_ADVISED CONCAT ' AND ';
END IF;
IF (P_MTI_USED IS NOT NULL) THEN
SET WHERE_CLAUSE = WHERE_CLAUSE CONCAT 'MTI_USED >= ' CONCAT
P_MTI_USED CONCAT ' AND ';
END IF;
IF (P_AVERAGE_QUERY_ESTIMATE IS NOT NULL) THEN
SET WHERE_CLAUSE = WHERE_CLAUSE CONCAT ' AVERAGE_QUERY_ESTIMATE >= ' CONCAT
P_AVERAGE_QUERY_ESTIMATE CONCAT ' AND ';
END IF;
SET WHERE_CLAUSE = WHERE_CLAUSE CONCAT ' NLSS_TABLE_NAME = ''*HEX'' ';
SET INSERT_STMT = INSERT_STMT CONCAT WHERE_CLAUSE;
EXECUTE IMMEDIATE INSERT_STMT;
Example 8-18 Example of EXECUTE IMMEDIATE with concatenating strings for IBM i 7.2
EXECUTE IMMEDIATE 'INSERT INTO QTEMP.TMPIDXADV SELECT * FROM
QSYS2.CONDENSEDINDEXADVICE WHERE ' CONCAT
CASE WHEN P_LIBRARY IS NOT NULL THEN
' TABLE_SCHEMA = ''' CONCAT RTRIM(P_LIBRARY) CONCAT ''' AND '
ELSE '' END CONCAT
CASE WHEN P_FILE IS NOT NULL THEN
' SYSTEM_TABLE_NAME = ''' CONCAT RTRIM(P_FILE) CONCAT ''' AND '
ELSE '' END CONCAT
CASE WHEN P_TIMES_ADVISED IS NOT NULL THEN
' TIMES_ADVISED >= ' CONCAT P_TIMES_ADVISED CONCAT ' AND '
ELSE '' END CONCAT
CASE WHEN P_MTI_USED IS NOT NULL THEN
' MTI_USED >= ' CONCAT P_MTI_USED CONCAT ' AND '
ELSE '' END CONCAT
352 IBM i 7.2 Technical Overview with Technology Refresh Updates
CASE WHEN P_AVERAGE_QUERY_ESTIMATE IS NOT NULL THEN
' AVERAGE_QUERY_ESTIMATE >= ' CONCAT P_AVERAGE_QUERY_ESTIMATE CONCAT ' AND '
ELSE '' END CONCAT
' NLSS_TABLE_NAME = ''*HEX'' ';
8.4.12 Autonomous procedures
In IBM i 7.2, an autonomous procedure was introduced. An autonomous procedure is run in a
unit of work that is independent from the calling application. A new AUTONOMOUS option is
supported in the CREATE PROCEDURE and ALTER PROCEDURE statements.
By specifying a procedure as autonomous, any process in that procedure can be performed
regardless of the result of the invoking transaction.
Example 8-19 shows an example of creating an autonomous procedure that is intended to
write an application log to a table. In this example, procedure WriteLog is specified as
AUTONOMOUS.
Example 8-19 Autonomous procedure
CREATE TABLE TRACKING_TABLE (LOGMSG VARCHAR(1000),
LOGTIME TIMESTAMP(12));
COMMIT;
CREATE OR REPLACE PROCEDURE WriteLog(loginfo VARCHAR(1000))
AUTONOMOUS
BEGIN
INSERT INTO TRACKING_TABLE VALUES(loginfo, current TIMESTAMP(12));
END;
CALL WriteLog('*****INSERTION 1 START*****');
INSERT INTO EMPPHONE VALUES('000002', 1, '03-9876-5432');
CALL WriteLog('*****INSERTION 1 END*****');
CALL WriteLog('*****INSERTION 2 START*****');
INSERT INTO EMPPHONE VALUES('000002', 2, '03-8765-4321');
CALL WriteLog('*****INSERTION 2 END*****');
/**roll back insertions**/
ROLLBACK;
SELECT * FROM EMPPHONE WHERE ID = '000002';
SELECT * FROM TRACKING_TABLE;
Chapter 8. IBM DB2 for i 353
Figure 8-21 show the results of creating an array type and using it in a UDF.
Figure 8-21 Results of an AUTONOMOUS procedure
For more information about AUTONOMOUS, see the IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
8.4.13 New SQL TRUNCATE statement
A new SQL TRUNCATE statement deletes all rows from a table. This statement can be used in
an application program and also interactively.
The TRUNCATE statement has the following additional functions:
DROP or REUSE storage
IGNORE or RESTRICT when delete triggers are present
CONTINUE or RESTART identity values
IMMEDIATE, which performs the operation without commit, even if it is running under
commitment control
354 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-22 shows the syntax of the TRUNCATE statement.
Figure 8-22 Syntax of the TRUNCATE statement
For more information about the TRUNCATE statement, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafztruncate.htm
8.4.14 New LPAD() and RPAD() built-in functions
Two new built-in functions, LPAD() and RPAD(), are introduced in IBM i 7.2. These functions
return a string that is composed of strings that is padded on the left or right.
Example 8-20 shows an example of the LPAD() built-in function. This example assumes that
the CUSTOMER table, which has a NAME column with VARCHAR(15), contains the values of
Chris, Meg, and John.
Example 8-20 LPAD() built-in function
CREATE TABLE CUSTOMER(CUSTNO CHAR(6), NAME VARCHAR(15));
INSERT INTO CUSTOMER VALUES('000001', 'Chris');
INSERT INTO CUSTOMER VALUES('000002', 'Meg');
INSERT INTO CUSTOMER VALUES('000003', 'John');
SELECT LPAD(NAME, 15, '.') AS NAME FROM CUSTOMER;
Figure 8-23 show the results of the SELECT statement, which pads out a value on the left with
periods.
Figure 8-23 Results of the SELECT statement with LPAD()
Example 8-21 shows the example of RPAD() built-in function.
Example 8-21 SELECT statement with RPAD()
SELECT RPAD(NAME, 10, '.') AS NAME FROM CUSTOMER;
Chapter 8. IBM DB2 for i 355
Opposite to LPAD(), the results of the SELECT statement, which is shown in Figure 8-24, pads
out a value on the right with periods. Note that 10 is specified as the length parameter in
RPAD() so that the result is returned as a 10-digit value.
Figure 8-24 Results of the SELECT statement with RPAD()
Both LPAD() and RPAD() can be used on single-byte character set (SBCS) data and
double-byte character set (DBCS) data, such as Japan Mix CCSID 5035. DBCS characters
can also be specified as a pad string, as can SBCS characters.
Figure 8-25 shows an example of LPAD() for DBCS data within a column that is defined as
VARCHAR(15) CCSID 5035 and aligned each row at the right end. A double-byte space
(x’4040’ in CCSID 5035) is used as a pad string in this example. As shown in Figure 8-25,
specifying DBCS data as a pad string is required for aligning DBCS data at the right or left
end.
Figure 8-25 Results of an example of LPAD() for DBCS data
For more information about LPAD() and RPAD(), including considerations when using Unicode,
DBCS, or SBCS/DBCS mixed data, see IBM Knowledge Center:
LPAD()
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzscalpad.htm
RPAD()
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzscarpad.htm
8.4.15 Pipelined table functions
Pipelined table functions provide the flexibility to create programmatically virtual tables that
are greater than what the SELECT or CREATE VIEW statements can provide.
Pipelined table functions can pass the result of an SQL statement or process and return the
result of UDTFs. Before IBM i 7.2 TR1, creating an external UDTF is required for obtaining the
same result as the pipelined table function.
356 IBM i 7.2 Technical Overview with Technology Refresh Updates
Example 8-22 shows an example of creating a pipeline SQL UDTF that returns a table of
CURRENT_VALUE from QSYS2.SYSLIMITS.
Example 8-22 Example of pipeline SQL UDTF
CREATE FUNCTION producer()
RETURNS TABLE (largest_table_sizes INTEGER)
LANGUAGE SQL
BEGIN
FOR LimitCursor CURSOR FOR
SELECT CURRENT_VALUE
FROM QSYS2.SYSLIMITS
WHERE SIZING_NAME = 'MAXIMUM NUMBER OF ALL ROWS'
ORDER BY CURRENT_VALUE DESC
DO
PIPE (CURRENT_VALUE);
END FOR;
RETURN;
END;
Example 8-23 shows an example of creating an external UDTF that returns the same result of
a pipeline SQL UDTF, as shown in Example 8-22. These examples show that pipelined
functions allow the flexibility to code more complex UDTFs purely in SQL without having to
build and manage a compiled program or service program.
Example 8-23 Example of external UDTF
CRTSQLCI OBJ(applib/producer) SRCFILE(appsrc/c80) COMMIT(*NONE) OUTPUT(*PRINT)
OPTION(*NOGEN)
CRTCMOD MODULE(applib/producer) SRCFILE(qtemp/qsqltemp) TERASPACE(*YES)
STGMDL(*INHERIT)
CRTSRVPGM SRVPGM(applib/udfs) MODULE(applib/producer) EXPORT(*ALL) ACTGRP(*CALLER)
CREATE FUNCTION producer() RETURNS TABLE (int1 INTEGER) EXTERNAL NAME
applib.udfs(producer) LANGUAGE C PARAMETER STYLE SQL
Pipelined table functions can be used in the following cases:
UDTF input parameters
Ability to handle errors and warnings
Application logging
References to multiple databases in a single query
Customized join behavior
These table functions are preferred in the case where only a subset of the result table is
consumed in big data, analytic, and performance scenarios, rather than building a temporary
table. Using pipelined table functions provides memory savings and better performance
instead of creating a temporary table.
For more information about pipelined table functions, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Pipelined%20Table%20Functions
Chapter 8. IBM DB2 for i 357
8.4.16 Regular expressions
A regular expression in an SQL statement is supported by IBM i 7.2. A regular expression is
one of the ways of expressing a collection of strings as a single string and is used for
specifying a pattern for a complex search.
Table 8-5 shows the built-in functions and predicates for regular expressions in DB2 for i.
Table 8-5 Function or predicate for regular expressions
Function or predicate Description
REGEXP_LIKE predicate Searches for a regular expression pattern in a string and returns True
or False.
REGEXP_COUNT Returns a count of the number of times that a pattern is matched in a
REGEXP_MATCH_COUNT string.
REGEXP_INSTR Returns the starting or ending position of the matched substring.
REGEXP_SUBSTR Returns one occurrence of a substring of a string that matches the
REGEXP_EXTRACT pattern.
REGEXP_REPLACE Returns a modified version of the source string where occurrences of
the pattern found in the source string are replaced with the specified
replacement string.
Example 8-24 shows an example of a regular expression in a pipelined table function that
searches and returns URL candidates from a given string.
Example 8-24 Example of a regular expression in a pipelined table function
CREATE OR REPLACE FUNCTION FindHits(v_search_string CLOB(1M), v_pattern
varchar(32000) DEFAULT '(\w+\.)+((org)|(com)|(gov)|(edu))')
RETURNS TABLE (website_reference varchar(512))
LANGUAGE SQL
BEGIN
DECLARE V_Count INTEGER;
DECLARE LOOPVAR INTEGER DEFAULT 0;
SET V_Count = REGEXP_COUNT(v_search_string, v_pattern,1,'i');
WHILE LOOPVAR < V_Count DO
SET LOOPVAR = LOOPVAR + 1;
PIPE(values(REGEXP_SUBSTR(v_search_string,v_pattern, 1, LOOPVAR, 'i')));
END WHILE;
RETURN;
END;
SELECT * FROM TABLE(FindHits('Are you interested in any of these colleges:
abcd.EDU or www.efgh.Edu. We could even visit WWW.ijkl.edu if we have time.')) A;
For more information about regular expressions, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Regular%20Expressions
358 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.4.17 JOB_NAME and SERVER_MODE_JOB_NAME built-in global variables
New built-in global variables JOB_NAME and SERVER_MODE_JOB_NAME are supported by IBM i 7.2.
JOB_NAME contains the name of the current job and SERVER_MODE_JOB_NAME contains the name
of the job that established the SQL server mode connection.
Each of these global variables has the following characteristics:
Read-only, with values maintained by the system.
Type is VARCHAR(28).
Schema is QSYS2.
Scope of this global variable is session.
If there is no server mode connection, the value of SERVER_MODE_JOB_NAME is NULL. This means
that SERVE_MODE_JOB_NAME is valid for only QSQSRVR and if it referenced outside of a
QSQSRVR job, the NULL value is returned.
For more information about these global variables, see the following links:
IBM i Technology Updates:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/JOB_NAME%20%26%20SERVER_MODE_JOB_NAME%20-%20DB2%20b
uilt-in%20global%20variables
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
8.4.18 RUNSQL control of output listing
The parameters that are shown in Figure 8-26 are now available in the Run SQL (RUNSQL) CL
command. The RUNSQL CL command can be used to run a single SQL statement. These new
parameters work the same as described in the RUNSQLSTM CL command.
Run SQL (RUNSQL)
Type choices, press Enter.
Source listing options . . . . . OPTION *NOLIST
Print file . . . . . . . . . . . PRTFILE QSYSPRT
Library . . . . . . . . . . . *LIBL
Second level text . . . . . . . SECLVLTXT *NO
Figure 8-26 New parameters on the RUNSQL CL command
For more information about the RUNSQL CL command, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/RUNSQL%20control%20of%20output%20listing
Chapter 8. IBM DB2 for i 359
8.4.19 LOCK TABLE ability to target non-*FIRST members
The LOCK TABLE SQL statement is enhanced to allow applications to target specific members
within a multiple-member physical file. An application can use the Override Database File
(OVRDBF) or the CREATE ALIAS SQL statements to identify the non-*FIRST member.
For more information about LOCK TABLE SQL statement, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
8.4.20 QUSRJOBI() retrieval of DB2 built-in global variables
The QUSRJOBI() API JOBI0900 format is extended to allow for direct access to the following
DB2 for i built-in global variable values that are mentioned in 8.4.10, “Built-in global variables”
on page 351:
CLIENT_IPADDR
CLIENT_HOST
CLIENT_PORT
ROUTINE_TYPE
ROUTINE_SCHEMA
ROUTINE_NAME
For more information about this enhancement, including the position of each value in
JOBI0900, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/QUSRJOBI%28%29%20retrieval%20of%20DB2%20built-in%20global
%20variables
8.4.21 SQL functions (user-defined functions and user-defined table
functions) parameter limit
The maximum number of parameters for user-defined functions and user-defined table
functions was increased from 90 to 1024. Also, the maximum number of returned columns
was increased from (125 minus the number of parameters) to (1025 minus the number of
parameters).
8.4.22 New binary scalar functions
New built-in scalar functions were introduced in IBM i 7.2 to support interaction with Universal
Unique Identifiers (UUIDs) across distribute systems:
VARBINARY_FORMAT scalar function: This scalar function converts character data and
returns a binary string.
VARCHAR_FORMAT_BINARY scalar function: This scalar function converts binary data
and returns a character string.
Both scalar functions can specify a format-string that is used to interpret a given expression
and then convert from or into the UUIDs standard format.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzscale.htm?lang=en
360 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.4.23 Adding and dropping partitions spanning DDS logical files
In previous IBM i versions, if you wanted to add a partition or drop a partition of a DDS logical
file, you had to delete the logical file or all members in that logical file had to be removed
before running the ALTER TABLE statement.
In IBM i 7.2, the ALTER TABLE ADD PARTITION and DROP PARTITION statements allow spanning
of DDS logical files. If the DDS logical file was created over all existing partitions, DB2 for i
manages the automatic re-creation of the logical file to compensate for removed partitions
and to include new partitions.
Figure 8-27 shows the ALTER TABLE ADD PARTITON support for spanning DDS logical files.
Figure 8-27 Spanning DDS logical files
8.4.24 Direct control of system names for global variables
The optional clause FOR SYSTEM NAME was added to the CREATE VARIABLE SQL statement.
The FOR SYSTEM NAME clause directly defines the name for these objects.
In Example 8-25, LOC is the system-object-identifier, which is assigned as a system object
name instead of an operating system-generated one. However, selecting this
system-object-identifier has some considerations:
The system name must not be the same as any global variable already existing on the
same system.
The system name must be unqualified.
Example 8-25 Example of a CREATE VARIABLE SQL statement using the FOR SYSTEM NAME
clause
CREATE VARIABLE MYSCHEMA.MY_LOCATION FOR SYSTEM NAME LOC CHAR(20) DEFAULT (select
LOCATION from MYSCHEMA.locations where USER_PROFILE_NAME = USER);
For more information about this topic, see the IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/db2/rbafzpdf.pdf?view=kc
Chapter 8. IBM DB2 for i 361
8.4.25 LOCK TABLE ability to target non-FIRST members
The LOCK TABLE SQL statement is enhanced to allow applications to target specific members
within a multiple-member physical file. The application can use the Override Database File
(OVRDBF) command or the CREATE ALIAS SQL statement to identify the non-*FIRST member.
8.5 DB2 for i services and catalogs
DB2 for i now allows programmers to use SQL as a query language and a traditional
programming language. Over time, the SQL language has gained new language elements
that allow traditional programming patterns. Using UDFs, stored procedures, triggers, and
referential integrity support, it is now easy to keep part of the programming logic
encapsulated within the database itself, reducing the complexity of programming in
third-generation programming languages, such as ILE RPG, ILE C/C++, ILE COBOL, and
Java.
Moreover, DB2 for i provides a service that allows programmers and system administrators to
access system information by using the standard SQL interface. This allows programming
and system management to be managed in an easier way.
The following topics are covered in this section:
8.5.1, “DB2 for i catalogs” on page 362
8.5.2, “DB2 for i Services” on page 367
8.5.3, “IBM i Services” on page 371
8.5.1 DB2 for i catalogs
DB2 for i catalogs contain information about DB2 related objects, such as tables, indexes,
schemas, columns, fields, labels, and views.
There are three classes of catalog views:
DB2 for i catalog tables and views (QSYS2)
The catalog tables and view contain information about all tables, parameters, procedures,
functions, distinct types, packages, XSR objects, views, indexes, aliases, sequences,
variables, triggers, and constraints in the entire relational database.
ODBC and JDBC catalog views (SYSIBM)
The ODBC and JDBC catalog views are designed to satisfy ODBC and JDBC metadata
API requests.
ANS and ISO catalog views (QSYS2)
The ANS and ISO catalog views are designed to comply with the ANS and ISO SQL
standard. These views will be modified as the ANS and ISO standard is enhanced or
modified.
Note: IBM i catalogs contain tables or views that are related only to the IBM i operating
system.
DB2 for i catalogs can be grouped by related objects, as shown in the following tables.
362 IBM i 7.2 Technical Overview with Technology Refresh Updates
Table 8-6 lists the catalogs.
Table 8-6 Catalogs
Name Catalog type Description
SYSCATALOGS DB2 Information about relational
database
INFORMATION_SCHEMA_CATALOG_NAME ANS/ISO Information about relational
database
Table 8-7 lists the schemas.
Table 8-7 Schemas
Name Catalog type Description
SYSSCHEMAS DB2 Information about schemas
SQLSCHEMAS ODBC/JDBC Information about schemas
SCHEMATA ANS/ISO Statistical information about schemas
Table 8-8 lists the database support.
Table 8-8 Database support
Name Catalog type Description
SQL_FEATURES ANS/ISO Information about the feature that is
supported by the database manager
SQL_LANGUAGES ANS/ISO Information about the supported languages
SQL_SIZING ANS/ISO Information about the limits that are
supported by the database manager
CHARACTER_SETS ANS/ISO Information about supported CCSIDs
Table 8-9 lists the tables, views, and indexes.
Table 8-9 Tables, views, and indexes
Name Catalog type Description
SYSCOLUMS DB2 Information about column attributes
SYSCOLUMS2 DB2 Information about column attributes
SYSFIELDS DB2 Information about field procedures
SYSINDEXES DB2 Information about indexes
SYSKEYS DB2 Information about indexes keys
SYSTABLEDEP DB2 Information about materialized query table
dependencies
SYSTABLES DB2 Information about tables and views
SYSVIEWDEP DB2 Information about view dependencies on
tables
Chapter 8. IBM DB2 for i 363
Name Catalog type Description
SYSVIEWS DB2 Information about definition of a view
SQLCOLUMNS ODBC/JDBC Information about column attributes
SQLSPECIALCOLUMNS ODBC/JDBC Information about the columns of a table
that can be used to uniquely identify a row
SQLTABLES ODBC/JDBC Information about tables
COLUMNS ANS/ISO Information about columns
TABLES ANS/ISO Information about tables
VIEWS ANS/ISO Information about views
Table 8-10 lists the constraints.
Table 8-10 Constraints
Name Catalog type Description
SYSCHKCST DB2 Information about check constraints
SYSCST DB2 Information about all constraints
SYSCSTCOL DB2 Information about columns referenced in a
constraint
SYSCSTDEP DB2 Information about constraint dependencies
on tables
SYSKEYCST DB2 Information about unique, primary, and
foreign keys
SYSREFCST DB2 Information about referential constraints
SQLFOREIGNKEYS ODBC/JDBC Information about foreign keys
SQLPRIMARYKEYS ODBC/JDBC Information about primary keys
CHECK_CONSTRAINTS ANS/ISO Information about check constraints
REFERENTIAL_CONSTRAINTS ANS/ISO Information about referential constraints
TABLE_CONSTRAINTS ANS/ISO Information about constraints
Table 8-11 lists the privileges.
Table 8-11 Privileges
Name Catalog type Description
SYSCOLAUTH DB2 Information about column privilege
SYSCONTROLS DB2 Information about row permissions and
column masks
SYSCONTROLSDEP DB2 Information about row permissions and
column masks dependencies
SYSPACKAGEAUTH DB2 Information about package privilege
SYSROUTINEAUTH DB2 Information about routine privilege
364 IBM i 7.2 Technical Overview with Technology Refresh Updates
Name Catalog type Description
SYSSCHEMAAUTH DB2 Information about schema privilege
SYSSEQUENCEAUTH DB2 Information about sequence privilege
SYSTABAUTH DB2 Information about table privilege
SYSUDTAUTH DB2 Information about type privilege
SYSVARIABLEAUTH DB2 Information about global variable privilege
SYSXSROBJECTAUTH DB2 Information about XML schema privilege
SQLCOLPRIVILEGES ODBC/JDBC Information about privileges granted on
columns
SQLTABLEPRIVILEGES ODBC/JDBC Information about privileges granted on
tables
AUTHORIZATIONS ANS/ISO Information about authorization IDs
ROUTINE_PRIVILEGES ANS/ISO Information about routine privilege
UDT_PRIVILEGES ANS/ISO Information about type privilege
USAGE_PRIVILEGES ANS/ISO Information about sequence and XML
schema privilege
VARIABLE_PRIVILEGES ANS/ISO Information about global variable privilege
Table 8-12 lists the triggers.
Table 8-12 Triggers
Name Catalog type Description
SYSTRIGCOL DB2 Information about columns used in a trigger
SYSTRIGDEP DB2 Information about objects used in a trigger
SYSTRIGGERS DB2 Information about trigger
SYSTRIGUPD DB2 Information about columns in the WHEN
clause of a trigger
Table 8-13 lists the routines.
Table 8-13 Routines
Name Catalog type Description
SYSFUNCS DB2 Information about user-defined functions
SYSJARCONTENTS DB2 Information about JAR files for Java
routines
SYSJAROBJECTS DB2 Information about JAR files for Java
routines
SYSPARMS DB2 Information about routine parameters
SYSPROCS DB2 Information about procedures
Chapter 8. IBM DB2 for i 365
Name Catalog type Description
SYSROUTINEDEP DB2 Information about function and procedure
dependencies
SYSROUTINES DB2 Information about functions and
procedures
SQLFUNCTIONSCOLS ODBC/JDBC Information about function parameters
SQLFUNCTIONS ODBC/JDBC Information about functions
SQLPROCEDURECOLS ODBC/JDBC Information about procedure parameters
SQLPROCEDURES ODBC/JDBC Information about procedures
PARAMETERS ANS/ISO Information about procedure parameters
ROUTINES ANS/ISO Information about routines
Table 8-14 lists the XML schemas.
Table 8-14 XML schemas
Name Catalog type Description
XSRANNOTATIONINFO DB2 Information about annotations
XSROBJECTCOMPONENTS2 DB2 Information about components in an XML
schema
XSROBJECTHIERARCHIES DB2 Information about XML schema document
hierarchy relationships
XSROBJECTS DB2 Information about XML schemas
Table 8-15 lists the statistics.
Table 8-15 Statistics
Name Catalog type Description
SYSCOLUMSTAT DB2 Information about column statistics
SYSINDEXSTAT DB2 Information about index statistics
SYSMQTSTAT DB2 Information about materialized query table
statistics
SYSPACKAGESTAT DB2 Information about package statistics
SYSPACKAGESTMTSTAT DB2 Information about the SQL statement in
packages
SYSPARTITIONDISK DB2 Information about partition disk usage
SYSPARTITIONINDEXES DB2 Information about partition indexes
SYSPARTITIONINDEXDISK DB2 Information about index disk usage
SYSPARTITIONINDEXSTAT DB2 Information about partition index statistics
SYSPARTITIONMQTS DB2 Information about partition materialized
query tables
366 IBM i 7.2 Technical Overview with Technology Refresh Updates
Name Catalog type Description
SYSPARTITIONSTAT DB2 Information about partition statistics
SYSPROGRAMSTAT DB2 Information about programs, service
programs, and modules that contain SQL
statements
SYSPROGRAMSTMTSTAT DB2 Information about SQL statements
embedded in programs, service programs,
and modules
SYSTABLEINDEXSTAT DB2 Information about table index statistics
SYSTABLESTAT DB2 Information about table statistics
SQLSTATISTICS ODBC/JDBC Statistical information about tables
Table 8-16 lists the miscellaneous objects.
Table 8-16 Miscellaneous objects
Name Catalog type Description
SYSPACKAGE DB2 Information about packages
SYSSEQUENCES DB2 Information about sequences
SYSTYPES DB2 Information about built-in data types and
distinct types
SYSVARIABLEDEP DB2 Information about objects that are used in
global variables
SYSVARIABLES DB2 Information about global variables
SQLTYPEINFO ODBC/JDBC Information about types of tables
SQLUDTS ODBC/JDBC Information about built-in data types and
distinct types
USER_DEFINED_TYPES ANS/ISO Information about types
SEQUENCES ANS/ISO Information about sequences
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzcatalog.htm
8.5.2 DB2 for i Services
DB2 for i Services is a consistent set of procedures, UDFs, UDTFs, tables, and views that
make programming in SQL easier.
DB2 for i Services is grouped by the following related areas:
“DB2 for i Services health center procedures”
“DB2 for i Services utility procedures”
“DB2 for i Services plan cache procedures” on page 369
“DB2 for i performance services” on page 370
“DB2 for i application services” on page 370
Chapter 8. IBM DB2 for i 367
DB2 for i Services health center procedures
You can use DB2 for i Services health center procedures to capture and view information
about the database.
Table 8-17 lists the DB2 for i Services health center procedures.
Table 8-17 DB2 for i Services health center procedures
Service name Type Descriptions
QSYS2.HEALTH_ACTIVITY Procedure Returns summary counts of database and SQL
operations over a set of objects within one or more
schemas.
QSYS2.HEALTH_DATABASE_OVERVIEW Procedure Returns counts of all the different types of DB2 for i
objects within the target schemas.
QSYS2.HEALTH_DESIGN_LIMITS Procedure Returns detailed counts of design limits over a set of
objects within one or more schemas.
QSYS2.HEATH_ENVIRONMENTAL_LIMITS Procedure Returns detail on the top 10 jobs on the system for
different SQL or application limits.
QSYS2.HEALTH_SIZE_LIMITS Procedure Returns detailed size information for database objects
within one or more schemas.
QSYS2.RESET_ENVIRONMENTAL_LIMITS Procedure Clears out the environment limit cache for the database.
Fro more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqhealthcentersql
procs.htm?lang=en
DB2 for i Services utility procedures
DB2 for i Services utility procedures provide interfaces to monitor and work with SQL in jobs
on the current system or to compare constraint and routine information across the system.
Table 8-18 lists the DB2 for i Services utility procedures.
Table 8-18 DB2 for i Services utility procedures
Service name Type Descriptions
QSYS2.CANCEL_SQL Procedure Requests cancellation of an SQL statement for the
specified job.
QSYS2.DUMP_SQL_CURSORS Procedure Lists the open cursors for a job.
QSYS2.FIND_AND_CANCEL_QSQSRVR_SQL Procedure Finds a set of jobs with SQL activity and safely
cancels them.
QSYS2.FIND_SQSRVR_JOBS Procedure Returns information about a QSQSRVR job.
QSYS2.GENERATE_SQL Procedure Generates the SQL data definition language
statements that are required to re-create a database
object.
QSYS2.RESTART_IDENTITY Procedure Examines the source-table and determines the
identity column and its next value.
368 IBM i 7.2 Technical Overview with Technology Refresh Updates
Service name Type Descriptions
SYSTOOLS.CHECK_SYSCST Procedure Compares entries in the
QSYS2.SYSCONSTRAINTS table between two
systems.
SYSTOOLS.CHECK_SYSROUTINE Procedure Compare entries in the QSYS2.SYSROUTINES
table between two systems.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqservicesutility
.htm?lang=en
DB2 for i Services plan cache procedures
DB2 for i provides procedures for programmatic access to the plan cache and can be used for
scheduling plan cache captures or pre-starting an event monitor.
Table 8-19 lists the DB2 for i Services plan cache procedures.
Table 8-19 DB2 for i Services plan cache procedures
Service name Type Descriptions
QSYS2.CHANGE_PLAN_CACHE_SIZE Procedure Changes the size of the plan cache.
QSYS2.DUMP_PLAN_CACHE Procedure Creates a snapshot (database monitor file) of
the contents of the cache.
QSYS2.DUMP_PLAN_CACHE_PROPERTIES Procedure Creates a file containing the properties of the
cache.
QSYS2.DUMP_PLAN_CACHE_topN Procedure Creates a snapshot file from the active plan
cache containing only those queries with the
largest accumulated elapsed time.
QSYS2.DUMP_SNAP_SHOT_PROPERTIES Procedure Creates a file containing the properties of the
snapshot.
QSYS2.END_ALL_PLAN_CACHE_EVENT_MONITOR Procedure Ends all active plan cache event monitors
started either through the GUI or uses the
start_plan_cache_event_monitor procedures.
QSYS2.END_PLAN_CACHE_EVENT_MONITOR Procedure Ends the specific event monitor that is identified
by the given monitor ID value.
QSYS2.START_PLAN_CACHE_EVENT_MONITOR (2) Procedure Starts an event monitor to intercept or capture
plans as they are removed from the cache and
generates performance information into the
specified database monitor file.
QSYS2.CLEAR_PLAN_CACHE Procedure Clears plan cache (alternative to performing a
system IPL).
QSYS2.EXTRACT_STATEMENTS Procedure Returns details from a plan cache snapshot in
the form of an SQL table or a result set.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqplancacheprocs.
htm?lang=en
Chapter 8. IBM DB2 for i 369
DB2 for i performance services
DB2 for i performance services provide interfaces to work with indexes and a view to see
information about database monitors.
Table 8-20 lists the DB2 for i performance services.
Table 8-20 DB2 for i performance services
Service name Type Descriptions
SYSTOOLS.ACT_ON_INDEX_ADVICE Procedure Creates new indexes for a table based on indexes that are
advised for the table.
SYSTOOLS.HARVEST_INDEX_ADVICE Procedure Generates one or more CREATE INDEX statements in
source file members for a specified table based on
indexes that are advised for the table.
QSYS2.OVERRIDE_QAQQINI Procedure Establishes a temporary version of the QAQQINI file.
QSYS2.RESET_TABLE_INDEX_STATISTICS Procedure Clears usage statistics for indexes that are defined over a
table or tables.
QSYS2.SYSIXADV Table Indexed advised system table.
SYSTOOLS.REMOVE_INDEXES Procedure Drops any indexes meeting the specified criteria.
QSYS2.DATABASE_MONITOR_INFO View Returns information about database monitors and plan
cache event monitors on the server.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqservicesperf.ht
m?lang=en
DB2 for i application services
DB2 for i application services provide interfaces that are useful for application development.
Table 8-21 lists the DB2 for i application services.
Table 8-21 DB2 for i application services
Service name Type Descriptions
QSYS2.OVERRIDE_TABLE Procedure Sets the blocking size for a table.
QSYS2.DELIMIT_NAME UDF Returns a name with delimiters if the delimiters are needed
for use in an SQL statement.
SYSPROC.WLM_SET_CLIENT_INFO Procedure Sets values for the SQL client special registers.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqservicesappdb2.
htm?lang=en
370 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.5.3 IBM i Services
IBM i Services are part of the IBM DB2 for i Services. They represent procedures, tables,
UDFs, UDTFs, and views that the SQL programmer or user can use to get information about
operating system objects such as PTFs, Group PTFs, user profiles, TCP/IP information, and
system values. This provides benefits such as a standard interface to work on a
cross-platform environment, an easy way to get system information without a coding to call
system APIs, and reduce time to market for programming.
Note: IBM i Services provide information that is related only to the IBM i operating system.
To give an example about what information the IBM i Services can provide, some services are
described in this section.
GROUP_PTF_CURRENCY
An SQL view GROUP_PTF_CURRENCY can be used to do a comparison of the PTF groups
that are installed on the partition against the server level lists on the IBM Preventive Service
Planning (PSP) website. The information of this view provides the status of the PTF group on
the partition, current level of PTF groups, and the latest level of PTF groups available from
IBM. This provides an easy way for a system administrator to manage the currency of PTF
groups on the system with a latest information provided.
Note: Connection to the PSP website is required for a correct result of this query.
Example 8-26 show example SQL statement to find available updates for PTF groups.
Example 8-26 SQL statement to find available updates for PTF groups
SELECT
PTF_GROUP_ID,PTF_GROUP_TITLE,PTF_GROUP_LEVEL_INSTALLED,PTF_GROUP_LEVEL_AVAILABLE
FROM SYSTOOLS.GROUP_PTF_CURRENCY
WHERE PTF_GROUP_CURRENCY = ‘UPDATE AVAILABLE’;
Figure 8-28 shows the result of using GROUP_PTF_CURRENCY to find available updates
for PTF groups.
Figure 8-28 Query result of GROUP_PTF_CURRENCY IBM i Services
ACTIVE_JOB_INFO and GET_JOB_INFO
ACTIVE_JOB_INFO and GET_JOB_INFO services can be used together to get the
information of the job, such as CPU consumption, SQL statement text, and temporary
storage. The system administrator can use this information for monitoring purposes or a
programmer can use this information to find for a long-running SQL statement.
Chapter 8. IBM DB2 for i 371
Example 8-27 shows an example SQL statement to find a long-running SQL statement.
Example 8-27 SQL statement to find a long-running SQL statement
WITH ACTIVE_USER_JOBS(Q_JOB_NAME) AS (
SELECT JOB_NAME FROM TABLE
(ACTIVE_JOB_INFO('NO','','','')) X WHERE JOB_TYPE <> 'SYS')
SELECT Q_JOB_NAME, V_SQL_STATEMENT_TEXT,
CURRENT TIMESTAMP-V_SQL_STMT_START_TIMESTAMP AS SQL_STMT_DURATION,
V_CLIENT_USERID,
B.* FROM ACTIVE_USER_JOBS,
TABLE(QSYS2.GET_JOB_INFO(Q_JOB_NAME)) B
WHERE V_SQL_STMT_STATUS = 'ACTIVE'
ORDER BY SQL_STMT_DURATION DESC;
Figure 8-29 shows the result of using ACTIVE_JOB_INFO and GET_JOB_INFO to find a
long-running SQL statement.
Figure 8-29 Query result of ACTIVE_JOB_INFO and GET_JOB_INFO IBM i Services
IBM i Services is grouped by the following related areas:
“IBM i Application services” on page 372
“IBM i Java services” on page 372
“IBM i Journal services” on page 373
“IBM i Librarian services” on page 373
“IBM i Message handling services” on page 373
“IBM i Product services” on page 373
“IBM i PTF services” on page 374
“IBM i Security services” on page 374
“IBM i Spool services” on page 374
“IBM i Storage services” on page 375
“IBM i System health services” on page 375
“IBM i TCP/IP services” on page 375
“IBM i Work management services” on page 376
IBM i Application services
This procedure provides an interface that can be used in applications. Table 8-22 lists the IBM
i Application services.
Table 8-22 IBM i Application services
Services name Type Description
QSYS2.QCMDEXC Procedure Runs a CL command.
IBM i Java services
This view and procedure provides Java information and JVM management options.
Table 8-23 on page 373 lists the IBM i Java services.
372 IBM i 7.2 Technical Overview with Technology Refresh Updates
Table 8-23 IBM i Java services
Service name Type Description
QSYS2.JVM_INFO View Returns information about active Java Virtual Machine (JVM) jobs.
QSYS2.SET_JVM Procedure Manages specific JVM jobs by specific actions.
IBM i Journal services
This function and view provides journal information. Table 8-24 lists the IBM i Journal
services.
Table 8-24 IBM i Journal services
Service name Type Description
QSYS2.DISPLAY_JOURNAL UDTF Returns information about journal entries.
QSYS2.JOURNAL_INFO View Contains information about journals, including remote journals.
IBM i Librarian services
This service provides object and library lists information. Table 8-25 lists the IBM i Librarian
services.
Table 8-25 IBM i Librarian services
Service name Type Description
QSYS2.LIBRARY_LIST_INFO View Contains information about a current job’s library list.
QSYS2.OBJECT_STATISTIC UDTF Returns information about objects in a library.
IBM i Message handling services
This function and view provides system message information. Table 8-26 lists the IBM i
Message handling services.
Table 8-26 IBM i Message handling services
Service name Type Description
QSYS2.JOBLOG_INFO UDTF Returns one row for each message in a job log.
QSYS2.REPLY_LIST_INFO View Contains information about a current job’s reply list.
IBM i Product services
This view provides information about IBM i licensed products. Table 8-27 lists the IBM i
Product services.
Table 8-27 IBM i Product services
Service name Type Description
QSYS2.LICENSE_INFO View Contains information about all products or features that contain license
information.
Chapter 8. IBM DB2 for i 373
IBM i PTF services
This view provides information about PTFs on IBM i. Table 8-28 lists the IBM i PTF services.
Table 8-28 IBM i PTF services
Service name Type Description
SYSTOOLS.GROUP_PTF_CURRENCY View Contains a query that implements a live comparison of the PTF
Groups that are installed on the partition against the service
levels that are listed on the IBM Preventive Service Planning
website.
SYSTOOLS.GROUP_PTF_DETAILS View Contains a query that implements a live comparison of the PTFs
within PTF Groups that are installed on the partition against the
service levels that are listed on the IBM Preventive Service
Planning website.
QSYS2.GROUP_PTF_INFO View Contains information about the group PTFs for the server.
QSYS2.PTF_INFO View Contains information about PTFs for the server.
IBM i Security services
This view, procedure, and function provide security information and the ability to managed
security attributes. Table 8-29 lists the IBM i Security services.
Table 8-29 IBM i Security services
Service name Type Description
QSYS2.DRDA_AUTHENTICATION_ENTRY_INFO View Contains user server authentication entry
information.
QSYS2.FUNCTION_INFO View Contains details about function usage identifiers.
QSYS2.FUNCTION_USAGE View Contains details about function usage
configuration.
QSYS2.GROUP_PROFILE_ENTRIES View Contains one row for each user profile that is a part
of group profile.
SYSPROC.SET_COLUMN_ATTRIBUTE Procedure Sets the SECURE attribute for a column so the
variable value that is used for the column cannot be
seen in the database monitor or plan.
QSYS2.SQL_CHECK_AUTHORITY UDF Returns an indication of whether the user is
authorized to query the specified *FILE object.
QSYS2.USER_INFO View Contains information about user profiles.
IBM i Spool services
This view and function provides information about spool files. Table 8-30 lists the IBM i Spool
services.
Table 8-30 IBM i Spool services
Service name Type Description
QSYS2.OUTPUT_QUEUE_ENTRIES UDTF Returns one row for each spooled file in an output queue.
QSYS2.OUTPUT_QUEUE_ENTRIES View Returns one row for each spooled file in every output queue.
374 IBM i 7.2 Technical Overview with Technology Refresh Updates
IBM i Storage services
This view provides information about storage and storage device. Table 8-31 lists the IBM i
Storage services.
Table 8-31 IBM i Storage services
Service name Type Description
QSYS2.MEDIA_LIBRARY_INFO View Returns information the same as the WRKMLBSTS command.
QSYS2.SYSDISKSTAT View Contains information about disks.
QSYS2.SYSTMPSTG View Contains one row for each temporary storage bucket that is tracking
some amount of temporary storage across the system.
QSYS2.USER_STORAGE View Contains information about storage by user profile.
IBM i System health services
This table, view, and global variable are combined to provide information about limits on your
system. Table 8-32 lists the IBM i System health services.
Table 8-32 IBM i System health services
Service name Type Description
QSYS2.SYSLIMTBL Table Contains information about limits that
are being approached.
QSYS2.SYSLIMITS View Contains information about limits.
This view builds upon the
SYSLIMTBL table with others.
QIBM_SYSTEM_LIMITS_PRUNE_BY_ASP Global Used to guide the pruning action
QIBM_SYSTEM_LIMITS_PRUNE_BY_JOB variables perform by DB2 to prevent excess
QIBM_SYSTEM_LIMITS_PRUNE_BY_OBJECT storage consumption within the
QIBM_SYSTEM_LIMITS_PRUNE_BY_SYSTEM SYSLIMTBL table. All the global
QIBM_SYSTEM_LIMITS_SAVE_HIGH_POINTS_BY_ASP variables are in the SYSIBMADM
QIBM_SYSTEM_LIMITS_SAVE_HIGH_POINTS_BY_JOB schema.
QIBM_SYSTEM_LIMITS_SAVE_HIGH_POINTS_BY_OBJECT
QIBM_SYSTEM_LIMITS_SAVE_HIGH_POINTS_BY_SYSTEM
IBM i TCP/IP services
This view and procedure provides information about TCP/IP. Table 8-33 lists the IBM i TCP/IP
services.
Table 8-33 IBM i TCP/IP services
Service name Type Description
SYSIBMADM.ENV_SYS_INFO View Contains information about the current server.
QSYS2.NETSTAT_INFO View Returns information about IPv4 and IPv6 network
connections.
QSYS2.NETSTAT_INTERFACE_INFO View Returns information about IPv4 and IPv6 interfaces.
QSYS2.NETSTAT_JOB_INFO View Returns information about jobs that use IPv4 and IPv6
network connections.
QSYS2.NETSTAT_ROUTE_INFO View Returns information about IPv4 and IPv6 routes.
Chapter 8. IBM DB2 for i 375
Service name Type Description
QSYS2.SET_SERVER_SBS_ROUTING Procedure Allows a user to configure some servers to use alternative
subsystems based on the user profile that is establishing the
connection.
QSYS2.SERVER_SBS_ROUTING View Returns information about the users who have alternate
subsystem configurations for some IBM i servers.
QSYS2.TCPIP_INFO View Contains TCP/IP information for the current host connection.
IBM i Work management services
This view and function provides system value and job information. Table 8-34 lists the IBM i
Work management services.
Table 8-34 IBM i Work management services
Service name Type Description
QSYS2.ACTIVE_JOB_INFO UDTF Returns one row for each active job.
QSYS2.GET_JOB_INFO UDTF Returns one row containing the information about a specific job.
QSYS2.MEMORY_POOL UDTF Returns one row for every storage pool.
QSYS2.MEMORY_POOL_INFO View Returns one row for every active storage pool.
QSYS2.OBJECT_LOCK_INFO View Returns one row for every lock that is held for every object on the
partition.
QSYS2.RECORD_LOCK_INFO View Returns one row for every record lock for the partition.
QSYS2.SCHEDULED_JOB_INFO View Returns information the same as the WRKJOBSCDE command.
QSYS2.SYSTEM.STATUS UDTF Returns a single row, contains information about the current
partition.
QSYS2.SYSTEM_STATUS_INFO View Return a single row, contains information about the current
partition.
QSYS2.SYSTEM_VALUE_INFO View Contains information about system values.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqservicessys.htm
376 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.6 DB2 performance
In the IBM i 7.2 release of DB2 for i, a considerable effort was undertaken to enhance the
runtime performance of the database, either by extending existing functions or by introducing
new mechanisms.
Runtime performance is affected by many issues, such as the database design (the
entity-relationship model, which is a conceptual schema or semantic data model of a
relational database), the redundancy between functional environments in a composite
application environment, the level of normalization, and the size and volumes processed. All
of these items influence the run time, throughput, or response time, which is supported by the
IT components and is defined by the needs of the business. Performance optimization for
database access must address all the components that are used in obtained, acceptable, and
sustainable results, covering the functional aspects and the technical components that
support them.
This section describes the DB2 for i performance-related enhancements in IBM i 7.2. To
benefit from them, application or system configuration changes are not needed in most
cases.
The following topics are covered in this section:
8.6.1, “SQE I/O cost model” on page 377
8.6.2, “SQE support for native file opens, Query/400, and OPNQRYF” on page 378
8.6.3, “PDI for DB2” on page 381
8.6.4, “Queries with a long IN predicate list” on page 384
8.6.5, “Index advice and OR predicates” on page 384
8.6.6, “KEEP IN MEMORY for tables and indexes” on page 385
8.6.7, “Collection Services enhancements” on page 392
8.6.8, “Enhanced index build logic for highly concurrent environments” on page 392
8.6.9, “Accepting a priority change for a parallel index build” on page 392
8.6.10, “SQE index merge ordering” on page 393
8.6.11, “QSYS2.DATABASE_MONITOR_INFO view” on page 393
8.6.12, “QAQQINI memory preference by pool name” on page 394
8.6.13, “Index statistical catalogs enhancement” on page 395
8.6.14, “QSYS2.CLEAR_PLAN_CACHE() procedure” on page 396
8.6.15, “Encoded vector indexes only access” on page 396
8.6.16, “STRDBMON command filtering improvement” on page 396
8.6.1 SQE I/O cost model
SQL Query Engine (SQE) uses a structure that is called access plan for every database query
to retrieve the data in an optimized manner.
An access plan is a control structure that describes the actions that are necessary to satisfy
each query request. It contains information about the data and how to extract it. For any
query, whenever optimization occurs, the query optimizer develops an optimized plan of how
to access the requested data.
Preparing an optimized access plan is a complex task and requires the optimizer to rely on
many sources of information. One of these sources of information is the I/O cost for accessing
a database object (table scan, index probe, and so on). I/O cost can be described as the
amount of time that is needed for all I/O operations that are required to access the object.
Chapter 8. IBM DB2 for i 377
Before IBM i 7.2, the I/O cost model was based on the assumption that any I/O operation time
was 25 milliseconds, regardless of the configuration of the system and attached storage
solution. In response to significant hardware changes, including storage solutions for modern
IBM i systems, and the big data paradigm that is often reflected in I/O-intensive database
operations, the I/O cost model in IBM i 7.2 has changed.
Table 8-35 compares disk read times for various IBM i storage types with the original SQE I/O
cost model.
Table 8-35 Disk read times for storage technologies compared to original SQE cost model
Storage technology Typical read time in millisecondsa
Internal disks 4 -10
External disks/SAN 1-6
Solid-state drives (SSDs) Less than 1
Original SQE model 25
a. Disk read times depend on many factors and can differ between environments.
The SQE optimizer now relies on sample actual access times instead of a fixed value. The
optimizer is provided with more accurate disk read times, which results in more accurate I/O
cost calculation. More accurate I/O cost prediction means better access plan preparation for
faster query execution. Sample access times are measured during every IPL and at
independent ASP vary- on time by recording disk read times for sample pages. These sample
times are evaluated and updated at appropriate intervals during system operation. This
ensures that the optimizer always has a current view of disk performance. This data allows
the optimizer to distinguish unique I/O performance characteristics for internal, external, and
solid-state drives.
As a result, for modern systems, I/O cost is now often lower (compared to the original SQE
cost model based on 25-millisecond read operation, as shown in Table 8-35). The SQE
processes I/O in a more intensive manner (more aggressively). In many cases, this results in
a moderate performance improvement for I/O-intensive queries compared to IBM i 7.1
running on the same hardware.
8.6.2 SQE support for native file opens, Query/400, and OPNQRYF
Release to release, SQE has been enhanced to support a broader scope of database
operations, SQL statements, and IBM i interfaces. The purpose of these efforts has not
changed since the introduction of SQE in V5R2. SQE can process database access and run
queries faster than the classic query engine (CQE). It also provides more detailed
information, kept in the plan cache, about query implementation and statistics. This data can
be used by the database application developers and DB2 engineers to optimize query
performance. Investigation of DB2 for i performance problems is easier when SQE processes
the query instead of CQE.
Accessing data through following DB2 for i interfaces is now supported by SQE, without any
application or user change:
File open and read operations in programs that are written in high-level languages (such
as COBOL, RPG, and C++) for tables with RCAC enabled only
Open Data Base File (OPNDBF) CL command for native SQL views and partitioned tables
opens
378 IBM i 7.2 Technical Overview with Technology Refresh Updates
Open Query File (OPNQRYF) CL command
IBM Query for i (formerly Query/400) licensed program 5770QU1
A new option that is called SQE_NATIVE_ACCESS is now available in the QAQQINI file that you
can use to change the default behavior of IBM i 7.2 and force CQE to process native opens in
HLL programs, OPNDBF, OPNQRYF, or IBM Query for i queries.
Table 8-36 describes the values that are available for the SQE_NATIVE_ACCESS option.
Table 8-36 SQE_NATIVE_ACCESS parameter values in the QAQQINI file
Value Description
*NO V7R1 native open unless SQE is required.a
*YES SQE attempts to implement a native open of an SQL view or native query.
*DEFAULT The same as *YES.
a. SQE is required for RCAC-enabled tables, sequence objects, global variables, OLAP,
CUBE, and ROLLUP.
Chapter 8. IBM DB2 for i 379
Using IBM System i Navigator, you can search the SQL plan cache for statements by using
native opens, if the statement was processed by the SQE. Figure 8-30 shows the SQL Plan
Cache Statements view for OPNQRYF statements and the Visual Explain view for the
selected statement. The highlighted Query Engine Used value is SQE.
Tip: Use the OPNDBF string for searching for OPNDBF native open statements and
QUERY/400 string for searching for IBM Query for i native open statements.
Figure 8-30 SQL Plan Cache Statements and Visual Explain view for OPNQRYF
380 IBM i 7.2 Technical Overview with Technology Refresh Updates
You can see the same statements by using the IBM Navigator for i web interface. Under the
Database section, expand Databases and right-click the database of your choice in the
Databases tab. Click SQL Plan Cache → Show Statements. You can use the filters view to
filter statements by using the same criteria as for IBM System i Navigator. Visual Explain
functions are not available from the web interface at the time of writing. Figure 8-31 shows an
example of a filtered view.
Figure 8-31 SQL Plan Cache Statements view for OPNQRYF within IBM Navigator for i
For more information about CQE, SQE, query dispatcher, and SQL plan cache, see IBM
Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/queryoptimize.htm?la
ng=en
For more information about the QAQQINI file and its options, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/qryopt.htm?lang=en
8.6.3 PDI for DB2
Performance Data Investigator (PDI) was enhanced to allow database engineers (DBE) and
database administrators (DBA) to access quickly database performance-related information.
PDI is part of IBM Navigator for i and is accessible through the Investigate Data link under the
Performance section. PDI is a common interface that is used for various performance data
that is collected on an IBM i system.
The database content page of the PDI requires the IBM Performance Tools for i (5770-PT1)
Option 1 - Manager Feature licensed program to be installed on your system.
Chapter 8. IBM DB2 for i 381
Figure 8-32 shows the perspectives that are available for the Database part of the PDI in
IBM i 7.2.
Figure 8-32 New database-related perspectives for PDI
382 IBM i 7.2 Technical Overview with Technology Refresh Updates
Starting from the top-level system-wide overview, the DBE or DBA can open more detailed
sections of the performance data that is related to a particular job or thread or SQL plan
cache.
Figure 8-33 shows the PDI view of SQL CPU utilization for jobs and tasks. The following
drill-down options are available from within this interface:
CPU Utilization for Jobs or Tasks
CPU Utilization Overview
Figure 8-33 SQL CPU utilization by job and task PDI view
PDI data can be presented in graphs or tables. You can choose performance data files (either
current or previous), zoom in and out of a range of intervals of interest, or even modify an
SQL statement to retrieve other than the default set of data.
Chapter 8. IBM DB2 for i 383
The Plan Cache Searches view is shown on Figure 8-34.
Figure 8-34 Plan Cache Searches PDI view
For more information about PDI, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahx/rzahxpdilaunch.htm?l
ang=en
8.6.4 Queries with a long IN predicate list
In IBM i 7.2, SQE recognizes when many values are specified on an IN list and automatically
converts the IN list to a more efficient INNER JOIN.
8.6.5 Index advice and OR predicates
In IBM i 7.2, the Index Advisor is extended to include queries that OR together local selection
(WHERE clause) columns over a single table. OR advice requires two or more indexes to be
created as a dependent set. If any of the OR’d indexes are missing, the optimizer cannot
choose these dependent indexes for implementation of the OR-based query.
This relationship between OR-based indexes in the SYSIXADV index advice table is through
a new DEPENDENT_ADVICE_COUNT column.
For more information about Index Advisor, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/idxadvisor.htm?lang=
en
For more information about index advice and OR predicates, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqidxadvorpred.ht
m?lang=en
384 IBM i 7.2 Technical Overview with Technology Refresh Updates
8.6.6 KEEP IN MEMORY for tables and indexes
Before IBM i 7.1, the only way to preinstall an object into a main storage pool was by using the
Set Object Access (SETOBJACC) CL command. Loading database files or programs in to a
main storage pool reduces data access time and results in performance gains. However, the
effect of the SETOBJACC CL command is temporary and does not persist over an IPL. To
remove the object from the main storage, run the SETOBJACC CL command with the *PURGE
option.
In IBM i 7.1, the CHGPF and CHGLF CL commands were extended with the Keep in memory
parameter (KEEPINMEM) to allow the operating system to bring automatically a table or index
into a main storage pool when the table or index is used in a query. For queries running within
SQE, this enhancement results in performance gains. The operating system also
automatically purges the objects with the memory-preference from the main store when they
are no longer used by the query.
IBM i 7.2 is enhanced with the comprehensive support for the keep-in-memory function. The
following SQL statements are extended with the KEEP IN MEMORY keyword:
CREATE TABLE
CREATE INDEX
ALTER TABLE
DECLARE GLOBAL TEMPORARY TABLE
A new option that is called MEMORY_POOL_PREFERENCE is now available in the QAQQINI file, which
you can use to direct the database engine to attempt to load objects to a specified storage
pool. This option does not ensure that a specified storage pool is used.
Table 8-37 describes the values that are available for the MEMORY_POOL_PREFERENCE option.
Table 8-37 MEMORY_POOL_PREFERENCE parameter values
Value Description
*JOB Attempt to use the storage pool of the job
*BASE Attempt to use the Base storage pool
nn Attempt to use the Storage pool nn
*DEFAULT The same as *JOB
Chapter 8. IBM DB2 for i 385
The Display File Description (DSPFD) CL command output is extended with the new Keep in
memory field, under the Data Base File Attributes section, as shown in Example 8-28.
Example 8-28 DSPDF partial output with Keep in memory field
Access path . . . . . . . . . . . . . . . . : Arrival
Maximum record length . . . . . . . . . . . : 26
Volatile . . . . . . . . . . . . . . . . . : No
Keep in memory . . . . . . . . . . . . . . : KEEPINMEM *YES
File is currently journaled . . . . . . . . : Yes
Current or last journal . . . . . . . . . . : QSQJRN
Library . . . . . . . . . . . . . . . . . : CORPDB
This enhancement, also known as memory-preference, is comprehensive and affects all
available BD2 management interfaces, including the following interfaces:
CLI commands
IBM System i Navigator
IBM Navigator for i
Figure 8-35 shows the memory-preference information of a table definition that is available
from IBM System i Navigator.
Figure 8-35 Memory-preference information for a table definition in IBM System i Navigator
386 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-36 shows the memory-preference information of a table description that is available
from IBM System i Navigator.
Figure 8-36 Memory-preference information for a table description in IBM System i Navigator
Chapter 8. IBM DB2 for i 387
Figure 8-37 shows the memory-preference information of an index definition that is available
from IBM System i Navigator.
Figure 8-37 Memory-preference information for an index definition in IBM System i Navigator
388 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-38 shows the memory-preference information of an index description that is
available from IBM System i Navigator. The same information is available from IBM Navigator
for i.
Figure 8-38 Memory-preference information for an index description in IBM System i Navigator
Chapter 8. IBM DB2 for i 389
Figure 8-39 shows the memory-preference information of a table definition that is available
from IBM Navigator for i.
Figure 8-39 Memory-preference information for a table definition in IBM Navigator for i
Figure 8-40 shows the memory-preference information of a table description that is available
from IBM Navigator for i.
Figure 8-40 Memory-preference information for a table description in IBM Navigator for i
390 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-41 shows the memory-preference information of an index definition that is available
from IBM Navigator for i.
Figure 8-41 Memory-preference information for an index definition in IBM Navigator for i
Figure 8-42 shows the memory-preference information of an index description that is
available from IBM Navigator for i.
Figure 8-42 Memory-preference information for an index description in IBM Navigator for i
Chapter 8. IBM DB2 for i 391
For more information about the memory-preference enhancement, see the IBM i Technology
Updates website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Comprehensive%20support%20for%20%E2%80%98Keep%20In%20Memo
ry%E2%80%99
For more information about DB2 for i SQL statements, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm?lang=en
For more information about the QAQQINI file and its options, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/qryopt.htm?lang=en
8.6.7 Collection Services enhancements
Collection Services now collects SQL statistics on a job and system level. Here is a list of
performance data files that are extended with SQL information:
QAPMJOBOS: Data that is specific to system jobs
QAPMSYSTEM: System-wide performance data
A new file that is called QAPMSQLPC is available. It contains the performance data about the
SQL Plan Cache that is collected by the *SQL collection category.
For more information about Collection Services files descriptions, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahx/rzahxcatfilerelation
.htm?lang=en
8.6.8 Enhanced index build logic for highly concurrent environments
DB2 for i index build processing is enhanced to gauge its aggressiveness for index key
processing based upon the run priority of the index build job. The priority is set up for the
application job.
Table 8-38 compares the behavior of the index build job when changing the priority.
Table 8-38 Index build behavior based on the run priority
Job Index keys that are processed before Wait time
priority looking for held users
1 - 19 Process many keys at a time. Wait less time before trying to get a seize.
20 - 80 Process a few keys at a time (same as Wait the same amount of time as before the
before this enhancement). enhancement.
81 - 99 Process two keys at a time. Wait a longer time than before the
enhancement.
8.6.9 Accepting a priority change for a parallel index build
DB2 for i now allows you to change the priority of index build jobs when using IBM i operating
system option 26 - DB2 Symmetric Multiprocessing. Option 26 is a chargeable feature.
392 IBM i 7.2 Technical Overview with Technology Refresh Updates
The index builds run as part of jobs QDBSRVxx, where xx is in range from 1 to the number of
CPU cores that the logical partition has assigned.
Before this enhancement, these jobs ran with priority 52. Now, you can change the run
priorities of individual QDBSRVxx jobs.
Changing the run priority of the index build job changes the priority of the SMP tasks.
The Change System Job (CHGSYSJOB) command is enhanced to allow priority changes to DB
server jobs.
Table 8-39 shows a comparison of behavior of the index build job when changing the priority.
Table 8-39 Index build behavior based on the run priority
Job Index keys that are processed Wait time
priority before looking for held users
1-19 Process many keys at a time. Wait less time before trying to get a seize.
20-80 Process a few keys at a time (same Wait the same amount of time as before the
as before this enhancement). enhancement.
81-99 Process two keys at a time. Wait a longer time than before the enhancement.
8.6.10 SQE index merge ordering
SQE is enhanced to select and use indexes for both selection and ordering queries where the
selected row is not an equal predicate on one set of columns and ordering is on another set of
columns. The previous version of SQE could select only one index for selection or ordering
but not both. This can help reduce CPU and I/O resource consumption compared to the
previous method.
The most likely situations that get performance benefits from this enhancement are the
following ones:
The query is being optimized for first I/O, which is used when a user is waiting for the first
set of I/O.
The result set is large.
An Index Merge Ordering (IMO) eligible index exists.
For more information, see Index Merge Ordering at:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/SQE%20-%20Index%20Merge%20Ordering
8.6.11 QSYS2.DATABASE_MONITOR_INFO view
The DATABASE_MONITOR_INFO view is a new DB2 for i Services function that is introduced
in IBM i 7.2. This view returns information about database monitors and plan cache event
monitors on the server.
Chapter 8. IBM DB2 for i 393
Example 8-29 show an SQL statement to select an active database monitor with a data size
greater than 200,000 bytes.
Example 8-29 SQL statement to select an active database monitor with a data size greater than
200,000 bytes
SELECT MONITOR_ID,MONITOR_TYPE,MONITOR_STATUS,MONITOR_LIBRARY,DATA_SIZE
FROM QSYS2.DATABASE_MONITOR_INFO
WHERE MONITOR_STATUS = ‘ACTIVE’ AND DATA_SIZE > 200000;
Figure 8-43 shows the query result of DATABASE_MONITOR_INFO DB2 for i Services.
Figure 8-43 Query result of DATABASE_MONITOR_INFO
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqservicesperf.ht
m?lang=en
8.6.12 QAQQINI memory preference by pool name
In IBM i 7.2, the QAQQINI (Query Options) MEMORY_POOL_PERFERENCE is enhanced to
support memory pool preference by using a share memory pool name or private memory
pool identifiers to direct a database to perform paging into the memory pool when supported
for database operation.
Previously, a user could specify a system pool ID for a preferred memory pool. But, using a
system pool ID made it difficult where a user needed the database to page the query data into
a share pool or private memory pool. The user needed to know the system pool ID associated
with that named memory pool, and if there was a change on the system pool ID, the user had
to update the new system pool ID in QAQQINI unless the database fell back to use the *BASE
memory pool.
With this enhancement, users can specify the shared pool name or the private pool name
along with its subsystem and library. DB2 then tracks these changes and makes certain that
the preferred memory pool for database operation is really what the user intends.
Example 8-30 shows an SQL statement for updating the QAQQINI
MEMORY_POOL_PERFERENCE by shared pool name and private pool name.
Example 8-30 Example SQL statement to update QAQQINI MEMORY_POOL_PREFERENCE
---------- Shared pool name ----------
UPDATE MYLIB.QAQQINI
SET QQVAL = ‘*NAME *SHRPOOL1’
WHERE QQPARM = ‘MEMORY_POOL_PERFERENCE
or
---------- *INTERACT pool ----------
UPDATE MYLIB.QAQQINI
SET QQVAL = ‘*NAME *INTERACT’
394 IBM i 7.2 Technical Overview with Technology Refresh Updates
WHERE QQPARM = ‘MEMORY_POOL_PERFERENCE’
or
---------- Private pool name --------
UPDATE MYLIB.QAQQINI
SET QQVAL = ‘*PRIVATE MYLIB/MYSBS 1’
WHERE QQPARM =’MEMORY_POOL_PERFERENCE’
For more information, see QAQQINI memory preference by pool name at:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/QAQQINI%20memory%20preference%20by%20pool%20name
8.6.13 Index statistical catalogs enhancement
In IBM i 7.2, the following index statistical related catalogs are enhanced:
QSYS2.SYSINDEXSTAT
QSYS2.SYSPARTITIONINDEXES
QSYS2.SYSPARTITIONINDEXSTAT
They are enhanced to include the following information:
LAST_BUILD_TYPE:
An indication of whether the last index build is related to a complete build or delayed
maintenance build.
LAST_INVALIDATION_TIMESTAMP
An indication of when an index was last invalidated.
Figure 8-44 shows the query result of the SYSINDEXSTAT catalog with the
LAST_BUILD_TYPE and LAST_INVALIDATION_TIMESTAMP columns.
Figure 8-44 Query result of the SYSINDEXSTAT catalog
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzcatalogtbls.htm?l
ang=en
Chapter 8. IBM DB2 for i 395
8.6.14 QSYS2.CLEAR_PLAN_CACHE() procedure
The CLEAR_PLAN_CACHE() procedure is a part of DB2 for i Services that is introduced in IBM i
7.2. This procedure provides an alternative way to clear a plan cache instead of performing a
system IPL. This procedure can be used by performance analysts to create a consistent
environment to evaluate potential database performance changes in a performance test
environment or QA environment.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqclearplancache.
htm?lang=en
8.6.15 Encoded vector indexes only access
Encoded vector indexes were improved so they can be used for projections of columns by an
SQE query optimizer. Encoded vector indexes were originally focused on selection keys in the
WHERE clause and aggregation. After this Encoded vector indexes only access (EOA)
enhancement, they also can be used for column projection in SELECT list.
Also, Index Advisor recommendations to use Encoded Vector Indexes can be seen with
REASON_TYPE set to I8.
8.6.16 STRDBMON command filtering improvement
In IBM i 7.2, a filter operation equal to (*EQ) and not equal to (*NE) was added to the Start
Database Monitor (STRDBMON) command for the JOB, FTRFILE, and FTRUSER parameters.
These allow for more filtering options on the database monitor.
Figure 8-45 on page 397 and Figure 8-46 on page 397 show the filter operations for JOB
parameter in the STRDBMON command.
396 IBM i 7.2 Technical Overview with Technology Refresh Updates
Start Database Monitor (STRDBMON)
Type choices, press Enter.
File to receive output . . . . . Name
Library . . . . . . . . . . . *LIBL Name, *LIBL, *CURLIB
Output member options:
Member to receive output . . . *FIRST Name, *FIRST
Replace or add records . . . . *REPLACE *REPLACE, *ADD
Job name:
Name . . . . . . . . . . . . . * Name, generic*, *, *ALL
User . . . . . . . . . . . . Name, generic*, *ALL
Number . . . . . . . . . . . 000000-999999, *ALL
Filter Operator . . . . . . . *EQ *EQ, *NE
Type of records . . . . . . . . *DETAIL *DETAIL, *BASIC, *SUMMARY
Force record write . . . . . . . *CALC 0-32767, *CALC
Initial number of records . . . *NONE 0-2147483646, *NONE
Run time threshold . . . . . . . *NONE 0-2147483647, *NONE
Storage threshold . . . . . . . *NONE 0-2147483647, *NONE
Include system SQL . . . . . . . *NO *NO, *YES, *INI
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 8-45 Filter operator for STRDBMON command
Start Database Monitor (STRDBMON)
Type choices, press Enter.
Filter by database file:
File . . . . . . . . . . . . . *NONE
Library . . . . . . . . . . Name, generic*
Filter Operator . . . . . . . *EQ *EQ, *NE
+ for more values
Filter by user profile:
User . . . . . . . . . . . . . *NONE Name, generic*, *NONE...
Filter Operator . . . . . . . *EQ *EQ, *NE
+ for more values
Filter by internet address . . . *NONE
More...
F3=Exit F4=Prompt F5=Refresh F12=Cancel F13=How to use this display
F24=More keys
Figure 8-46 Filter operator for STRDBMON command
Chapter 8. IBM DB2 for i 397
For more information, see Start Database Monitor (STRDBMON) command filtering
improvements at:
https://ibm.biz/BdsRRD
8.7 Database engineering
A data-centric approach requires performing various tasks by database engineers (DBE)
daily. Examples of these tasks include the following ones:
Database security management
Database architecture management for particular business applications and goals
Database performance analysis and tuning
Database problem identification and resolution
Database backup and recovery management
The following sections describe the new DB2 for i features and enhancements for DBEs in
IBM i 7.2:
8.7.1, “IBM System i Navigator DB2 related functions” on page 398
8.7.2, “IBM Navigator for i: DB2 related functions” on page 403
8.7.3, “Queued exclusive locks” on page 408
8.7.4, “CREATE TABLE AS SELECT from a remote database” on page 409
8.7.5, “Live movement of tables and indexes to SSD” on page 410
8.7.6, “Range partitioned tables” on page 410
8.7.1 IBM System i Navigator DB2 related functions
Although IBM Navigator for i is enhanced with many new features and functions to support
database engineers (see 8.7.2, “IBM Navigator for i: DB2 related functions” on page 403),
IBM System i Navigator remains a tool of choice for many users.
IBM System i Navigator is the only tool that supports the Visual Explain and Run SQL Scripts
functions. It continues to be enhanced twice a year by service pack updates. Many of the
IBM i 7.2 database enhancements are reflected in the current IBM System i Navigator
updates.
Note: To use all the available enhancements of the IBM System i Navigator, you must
install the current IBM i Access for Windows service pack for Version 7.1. The Version 7.1
client software contains all the IBM System i Navigator enhancements for IBM i 7.2. Also,
you must install the current DB2 PTF Group on the managed system.
The following DB2 related functions were added to IBM System i Navigator:
“Index creation date” on page 399
“New SQL Performance Monitor parameters” on page 399
“New fields in the Table Definition window” on page 400
“Program statements for user-defined table function in Visual Explain” on page 401
“Automating SQL plan cache operations” on page 402
398 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about IBM System i Navigator, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahginav.htm?lang=e
n
Index creation date
For better manageability, a new Date Created column was added to the Indexes view of a
particular schema, as shown in Figure 8-47.
Figure 8-47 New Date Created column in the Indexes list window
For more information about the index creation date within the IBM System i Navigator window
and system catalogs, see the following website:
https://ibm.biz/BdsXGs
New SQL Performance Monitor parameters
The SQL Performance Monitor Wizard now supports up to 10 user names or group names
and generic names in the “Current user or group profile” field.
Also, a new Host variable values field can control how values of the host variables are
captured when the monitor is active. The following values are available:
The *BASE value has the same behavior as on IBM 7.1 or earlier
The *CONDENSED value allows for less impact to the database
The *SECURE value prevents host variable values from being visible in the collected data
Chapter 8. IBM DB2 for i 399
See Figure 8-48.
Figure 8-48 SQL Performance Monitor Wizard enhancements
For more information about the Host variables values parameter for SQL Performance
Monitors, see the following website:
https://ibm.biz/BdsXGZ
New fields in the Table Definition window
Table and partition definition information is extended with “Preferred storage media is
solid-state drive” and “Keep in memory” fields, as shown on Figure 8-49 on page 401.
Also, the Show SQL function is enhanced to support these changes.
400 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-49 New fields in the Table Definition window
Program statements for user-defined table function in Visual Explain
You can use Visual Explain to see detailed program statements for UDTFs. See Figure 8-50.
Figure 8-50 Specific program statements for user-defined table functions in Visual Explain
Chapter 8. IBM DB2 for i 401
For more information about specific program statements for UDTF in Visual Explain, see the
following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Visual%20Explain%20ability%20to%20drill%20into%20a%20UDTF
Automating SQL plan cache operations
New system procedures are added to automate SQL plan cache snapshots and event
monitors importation and removal. Before this change, you had to perform these operations
manually from the IBM System i Navigator. Here are the new procedures:
QSYS2/IMPORT_PLAN_CACHE()
QSYS2/REMOVE_PLAN_CACHE()
QSYS2/IMPORT_EVENT_MONITOR()
QSYS2/REMOVE_EVENT_MONITOR()
For more information about automating SQL plan cache operations, see the following
website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Automated%20DBE%20tasks%20for%20Navigator
Adding multiple view entries support to the journal viewer
Within a journaled environment, you can now select multiple rows, as shown in Figure 8-51.
You can then right-click and select View Data. This makes it easier to compare the before and
after situation.
Figure 8-51 Journal viewer: select multiple entries
When the data is displayed, you also can control whether you want to see the text or hex
formatted data for comparison purposes, as shown in Figure 8-52 on page 403.
402 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 8-52 Journal entry data viewer
8.7.2 IBM Navigator for i: DB2 related functions
IBM Navigator for i has become a robust tool for IBM i management that an administrator can
use to control all areas of the system. IBM Navigator for i is intended to replace IBM System i
Navigator tool in the future. Many of the IBM Navigator for i enhancements are not available in
other tools. The DB2 engineering functions of the tool are not an exception to this rule.
Enhancements that are introduced to IBM System i Navigator are also available for IBM
Navigator for i except for Visual Explain UDTF statements.
Many improvements were made to the Database functions, resulting in enhanced usability
and performance of the web tool. Key changes include the following changes:
Redesigned window for better usability and performance in a web browser:
– Select Schemas
– SQL Details for Jobs
– Show Status (Table Reorganizations, Table Alters, Index Builds, and OmniFind text
index builds)
– Grid Column Chooser
Performance changes to improve list retrieval, filtering, and data compression
Usability changes to display lists resulting from database actions in a separate tab for
easier navigation between lists
Usability changes to display selected dialogs as Dojo pop-up menus
Quick path access to several database windows
Chapter 8. IBM DB2 for i 403
The On Demand Performance Center groups menu options and perspectives that are related
to database performance, such as SQL plan cache or Index Advisor. The following changes
were made to the On Demand Performance Center:
A menu option was added to SQL Plan Cache snapshots and SQL database performance
monitors to view overview charts in PDI.
Figure 8-53 shows the new Investigate Performance Data menu option in the SQL Plan
Cache Snapshots window. You can use this option to navigate directly to PDI for snapshot
analysis.
Figure 8-53 Investigate Performance Data menu option
A menu option was added to a selected statement in the SQL Plan Cache to see the job
history for that statement.
Figure 8-54 shows a new Show Job History menu option for a selected statement in the
SQL Plan Cache Statements window. You can view the jobs that run the selected
statement.
Figure 8-54 New Show Job History menu option in the SQL Plan Cache Statements window
404 IBM i 7.2 Technical Overview with Technology Refresh Updates
Additional filters are now used when you select to show the statements for a row from the
Index Advisor and condensed index advice lists. These filters provide a better match of
statements that generated the advice in the SQL Plan Cache.
The Index Advisor list now includes a column with the times that the index was advised
when it depended on other index advice.
Figure 8-55 shows the new Times Advised Dependent on Other Advice column in the
Index Advisor view.
Figure 8-55 New Times Advised Dependent on Other Advice column in the Index Advisor window
A filter was added to the Show Statements window filters, which specifies whether the
other filters all need to match.
Figure 8-56 shows a new filter option on the Show Statements window filters, which
specifies whether the other filters all need to match.
Figure 8-56 New filter option on the Show Statements Filters window
Database management is extended with the following features:
Support for new database features:
– Row permissions and column masks and the ability to activate these row- and
column-level security capabilities on tables.
– Define multiple event triggers.
– Define named parameters and default values for parameters in SQL stored procedures
and functions.
For more information, see 8.2.1, “QIBM_DB_SECADM function usage” on page 323.
Chapter 8. IBM DB2 for i 405
Generate SQL now supports several new options:
– Obfuscate an SQL trigger, function, or procedure.
– Specify whether to schema qualify objects.
– Add the OR REPLACE clause.
– Add KEEP IN MEMORY clause.
Figure 8-57 shows the new options that are available in the Generate SQL window.
Figure 8-57 New options that are available in the Generate SQL window
406 IBM i 7.2 Technical Overview with Technology Refresh Updates
Support was added to view the contents of a table. Figure 8-58 shows the new View
Contents menu option in the Tables window, which you can use to browse and filter data
within the specified table.
Figure 8-58 New View Contents menu option in the Tables window
Support for the memory-preference for tables and indexes. For more information, see
8.6.6, “KEEP IN MEMORY for tables and indexes” on page 385.
Chapter 8. IBM DB2 for i 407
Table Reorganization status is extended with the following information (see Figure 8-59):
– Record the number where the reorganization started.
– Amount of storage that is returned because of deleted records.
– Number of deleted rows during reorganization.
Figure 8-59 New information in the Table Reorganization status window
For more information about general enhancements of IBM Navigator for i, see 2.1, “IBM
Navigator for i” on page 14.
For more information about PDI database-related changes, see 8.6.3, “PDI for DB2” on
page 381.
For more information about DB2 for i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/dbmult/rzaf3kickoff.htm
8.7.3 Queued exclusive locks
A new option that is called PREVENT_ADDITIONAL_CONFLICTING_LOCKS is now available in the
QAQQINI file. This new option allows the database engine to give preference to the operation
that requires an exclusive lock over the operations to lock the object for reading. This option
can be useful in situations where application activity on a database is high and cannot be
quiesced. Therefore, obtaining an exclusive non-read lock is hard or even impossible.
408 IBM i 7.2 Technical Overview with Technology Refresh Updates
Table 8-40 describes that values that are available for the
PREVENT_ADDITIONAL_CONFLICTING_LOCKS option.
Table 8-40 PREVENT_ADDITIONAL_CONFLICTING_LOCKS parameter values
Value Description
*NO When a job requests an exclusive lock on an object, do not prevent concurrent jobs from
acquiring additional exclusive locks on the object.
*YES New requests for read locks are queued behind the exclusive lock request and wait until
the exclusive lock completes or times out.
*DEFAULT The same as *NO.
The following SQL operations are affected by this new option as exclusive lock requests:
ALTER TABLE (add, alter, or drop a column)
CREATE TRIGGER
LOCK TABLE
RENAME TABLE
For more information about DB2 for i SQL statements, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm?lang=en
For more information about the QAQQINI file and its options, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/qryopt.htm?lang=en
8.7.4 CREATE TABLE AS SELECT from a remote database
It is now possible to create, on a local system, a table that references one or more tables on a
remote server. Along with the SELECT statement, you can specify copy options to get
attributes, such as the default values or identity column information, which is copied for the
new table.
The WITH DATA or WITH NO DATA clause must be specified to indicate whether to populate the
table from the remote system. The remote server connection must be defined as a relational
database entry (by running WRKRDBDIRE).
Example 8-31 shows how to create a table whose definition reflects a table on a remote
server and populates it with the data from the remote server.
Example 8-31 Create a table that reflects a definition on a remote server with data
CREATE TABLE EMPLOYEE4 AS
(SELECT PROJNO, PROJNAME, DEPTNO
FROM REMOTESYS.TESTSCHEMA.EMPLOYEE
WHERE DEPTNO = 'D11') WITH DATA
For more information about creating tables that reference a remote database, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/sqlp/rbafycrttblrmt.htm?la
ng=en
Chapter 8. IBM DB2 for i 409
8.7.5 Live movement of tables and indexes to SSD
Media preference of SQL tables, SQL views, and SQL indexes (the Preferred storage unit
parameter of the CHGPF and CHGLF CL commands) can now be changed without obtaining an
exclusive lock on the file.
This change can be made when shared read (*SHRRD) or update (*UPDATE) locks exist on the
file being changed.
After the *SSD is specified as a preferred storage media, data asynchronously moves to the
SSD drives.
8.7.6 Range partitioned tables
Ranged partitioned tables can now be created with partitions out of order, as shown in
Example 8-32.
Example 8-32 Create a range partitioned table with partitions out of order
CREATE TABLE CORPDB.SALES_TABLE FOR SYSTEM NAME SALES00002 (
TRANS_DATE TIMESTAMP DEFAULT NULL)
PARTITION BY RANGE (TRANS_DATE NULLS LAST) (
PARTITION PART000001
STARTING ( '2014-01-01-00.00.00.000000' ) INCLUSIVE
ENDING ( '2014-01-31-23.59.59.999999' ) INCLUSIVE,
STARTING ( '2014-08-01-00.00.00.000000' ) INCLUSIVE
ENDING ( '2014-08-31-23.59.59.999999' ) INCLUSIVE,
STARTING ( '2014-05-01-00.00.00.000000' ) INCLUSIVE
ENDING ( '2014-05-31-23.59.59.999999' ) INCLUSIVE )
As a result, the SALES_TABLE range partitioned table was successfully created.
For range partitioned tables, DB2 for i now recognizes whether an update operation is made
to the column that was used for range partitioning. If the update affects partition assignment
of the row, the row is automatically moved to the correct partition (database file member).
For more information about partitioned tables, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/dbmult/partitionedtables.h
tm?lang=en
For more information about DB2 for i SQL statements, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm?lang=en
8.8 DB2 Web Query for i
DB2 Web Query for i V2.1.0, which provides core analytics and Business Intelligence (BI)
platform capabilities, including queries, reporting, OLAP, and dashboards, is now supported.
410 IBM i 7.2 Technical Overview with Technology Refresh Updates
DB2 Web Query for i is available as either a Standard Edition or Express Edition in IBM i 7.2:
DB2 Web Query for i Express Edition provides an entry-level software bundle that includes
report authoring tools, a Query/400 import function, and analytic reporting options for a
small number of users.
With Express Edition, you can generate high-quality reports and OLAP reports for
analysts that are interested in understanding trends or finding exceptions in the data to
uncover what is driving results.
Also, you can use the spreadsheet pivot table support and integrate ad hoc reporting
directly in to Microsoft Excel spreadsheets. DB2 Web Query for i provides an array of
mobile capabilities. For example, for those users with mobile devices who must analyze
data while on the road, Active Technologies provide analytics for the users disconnected
from the server.
DB2 Web Query Standard Edition combines all of the functions that are included in
Express Edition plus more, providing a robust offering that can support up to thousands of
users running reports. With Standard Edition, user licenses are included to support a
typical rollout of developers and administrators, report authors, and a virtually unlimited
number of runtime users and report consumers.
With Standard Edition, you can build more sophisticated dashboards for executives
monitoring key performance indicators (KPIs). You can use Standard Edition to create an
enterprise report distribution model with the abilities to schedule report execution and
distribution through email or save the reports for later viewing. Optionally, use the data
adapter for Microsoft SQL Server that is included in Standard Edition to build reports that
include data from any of those databases in your network.
Each edition of DB2 Web Query for i has its own unique ordering Product ID. Express Edition
is 5733-WQE, and Standard Edition is 5733-WQS. However, the Product ID that is installed
on the system is 5733-WQX. Control of whether you can use Express or Standard Edition is
done by enabling the appropriate feature through IBM i License Management.
In addition to the data adapter for Microsoft SQL Server, the JD Edwards adapter is available
as a separate option of Standard Edition. You can use this adapter to connect to your
JD Edwards environment and view the information that is stored in JD Edwards as a data
source for a DB2 Web Query for i environment.
For more information about DB2 Web Query for i, see IBM DB2 Web Query for i Version 2.1
Implementation Guide, SG24-8063.
DB2 Web Query for i is an independent product from DB2 for i. Enhancements and updates
of DB2 Web Query for i are provided as a separate PTF Group from the DB2 for i PTF Group.
In DB2 Web Query for i terminology, the PTF Group is also called a test fix. In recent test
fixes, the following enhancements were delivered:
Using workload group controls
DB2 for IBM z/OS support
DB2 for Linux, UNIX, and Windows support
Single sign-on capability with Kerberos
RESTful web services
Runtime environment change from Lightweight Infrastructure (LWI) to IBM WebSphere
Liberty Profile
For information about the current DB2 Web Query for i PTF Group, see the following website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W516d8b60d3
2c_4fc5_a811_5f3d840bf524/page/PTFs%20and%20On-going%20Service
Chapter 8. IBM DB2 for i 411
8.9 OmniFind Text Search Server for DB2 for i
The OmniFind Text Search Server for DB2 for i (5733-OMF V1R3M0) is available for IBM i 7.2
at no charge. This product is used as a text search engine for documents that are stored in
DB2 for i, and it also provides extensions that enable searches for IBM i objects, such as
spool files in an output queue or stream files in the Integrated File System (IFS).
A text search collection describes one or more sets of system objects that have their
associated text data indexed and searched. For example, a collection might contain an object
set of all spool files in output queue QUSRSYS/QEZJOBLOG, or an object set for all stream
files in the /home/alice/text_data directory.
The text search collection that is referred to in this document should not be confused with a
DB2 schema (sometimes also referred to as a collection) or a Lucene collection (part of the
internal structure of a DB2 text search index).
When a text search collection is created, several DB2 objects are created on the system in an
SQL schema. The following objects are created in the schema:
Catalogs for tracking the collection’s configuration
Catalogs for tracking the objects that are indexed
SQL stored procedures to administer and search the collection
A DB2 text search index for indexing the associated text
The administration of the collection is provided with stored procedures, most of which are
created in the schema.
In OmniFind Text Search Server for DB2 for i V1R3M0, the following enhancements are
included:
Extensions to index and search non DB2 data:
– Adding an object set for a multiple-member source physical file
– Adding an object set for stream file data
– Altering a text search collection
– Removing object set by attribute:
• Removing object set for spool file data
• Removing object set for stream file data
• Removing an object set for a multiple-member source physical file
Searching for special characters
Removing orphaned indexes
Shutting down a server
Checking the status and return code for each row in a warning or error state
RCAC support:
– Creating a secured text search index
– Altering a text search index to secured index
412 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about the enhancements in OmniFind Text Search Server for DB2 for i
V1R3M0, see the following resources:
IBM i 7.2 IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzash/rzashwhatsnew.htm
And see also the developerWorks OmniFind for IBM i website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/OmniFind%20for%20IBM%20i
Chapter 8. IBM DB2 for i 413
414 IBM i 7.2 Technical Overview with Technology Refresh Updates
9
Chapter 9. Application development
This chapter describes a selection of products from IBM and third-party providers that can be
used for developing different types of applications for IBM i or for using IBM i as application or
database server. Detailed information about application development and modernization tools
can be found in the following IBM Redbooks publications:
Modernizing IBM i Applications from the Database up to the User Interface and Everything
in Between, SG24-8185
Tools and Solutions for Modernizing Your IBM i Applications, REDP-5095
This chapter describes the following topics:
9.1, “Languages and compilers” on page 416
9.2, “Java on IBM i” on page 434
9.3, “Rational Tools for i” on page 439
9.4, “Portable Applications Solutions Environment” on page 463
9.5, “Ruby on Rails for i” on page 463
9.6, “Zend and PHP on IBM i” on page 463
9.7, “Mobile application development for IBM i” on page 469
9.8, “Open Source for IBM i” on page 470
9.9, “Samba on IBM i” on page 472
For more information about the IBM i 7.2 application enhancements, see the IBM i
Technology Updates developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 415
9.1 Languages and compilers
IBM i provides many choices of programming languages for creating applications. This
section introduces enhancements in IBM i 7.2 for the following programming languages and
compilers:
9.1.1, “Command Language” on page 416
9.1.2, “ILE RPG” on page 421
9.1.3, “ILE COBOL” on page 430
9.1.4, “ILE C/C++” on page 432
9.1.5, “System APIs” on page 434
9.1.1 Command Language
This section covers the following Command Language (CL) topics:
“New CL retrieve exit programs running after command completion” on page 416
“New built-in functions support for both ILE CL and OPM CL” on page 416
New CL retrieve exit programs running after command completion
The IBM i command analyzer support for the QIBM_QCA_RTV_COMMAND exit point was enhanced.
Before, the registered exit programs were always called just before control was transferred to
the command processing program (CPP) that was associated with the command being run.
Now, you can register an exit program for the QIBM_QCA_RTV_COMMAND exit point and indicate
that you want the exit program to be called after control returns from the CPP.
For more information about QIBM_QCA_RTV_COMMAND, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/cmdanalyz.htm
New built-in functions support for both ILE CL and OPM CL
Many of the new built-in functions that are similar to RPG built-in functions are available in
both ILE CL and OPM CL.
The following new built-in functions are supported for working with character strings:
“%CHECK and %CHECKR” on page 417
“%SCAN” on page 417
“%TRIM, %TRIML, and %TRIMR” on page 418
The following new built-in functions are supported for conversion operations:
“%CHAR” on page 418
“%DEC” on page 419
“%INT” on page 419
“%UINT” on page 419
“%LOWER” on page 419
“%UPPER” on page 420
The following new built-in functions are supported for size operations:
“%LEN” on page 420
“%SIZE” on page 420
416 IBM i 7.2 Technical Overview with Technology Refresh Updates
%CHECK and %CHECKR
The check built-in function (%CHECK) returns the first position of a base string that contains a
character that does not appear in the comparator string. The reverse check built-in function
(%CHECKR) returns the last position of a base string that contains a character that does not
appear in the comparator string. If all of the characters in the base string also appear in the
comparator string, the function returns 0.
Here are the formats of the %CHECK and %CHECKR built-in functions:
%CHECK(comparator-string base-string [starting-position])
%CHECKR(comparator-string base-string [starting-position])
Example 9-1 shows an example of retrieving a numeric value from a string by using %CHECK
and %CHECKR. The first CHGVAR statement uses the %CHECK built-in function to find the leftmost
character that is not a dollar sign ($), an asterisk (*), or a blank. The second CHGVAR statement
uses the %CHECKR built-in function to find the rightmost character that is not a dollar sign,
asterisk, or blank. The third CHGVAR statement computes the number of characters between
the two values. The last CHGVAR statement uses the substring (%SST) built-in function to convert
part of the base string to a decimal CL variable.
Example 9-1 Retrieve a numeric value from a string by using %CHECK and %CHECKR
DCL VAR(&PRICE) TYPE(*CHAR) VALUE('$******5.27*** ')
DCL VAR(&COMP) TYPE(*CHAR) LEN(3) VALUE('$* ’)
DCL VAR(&SPOS) TYPE(*UINT) LEN(2)
DCL VAR(&EPOS) TYPE(*UINT) LEN(2)
DCL VAR(&DEC) TYPE(*DEC) LEN(3 2)
DCL VAR(&LEN) TYPE(*UINT) LEN(2)
CHGVAR VAR(&SPOS) VALUE(%CHECK(&COMP &PRICE))
CHGVAR VAR(&EPOS) VALUE(%CHECKR(&COMP &PRICE))
CHGVAR VAR(&LEN) VALUE(&EPOS - &SPOS + 1)
CHGVAR VAR(&DEC) VALUE(%SST(&PRICE &SPOS &LEN))
For more information about the check built-in function, see the check built-in function topics in
IBM Knowledge Center:
%CHECK built-in function
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6checkbif.htm
%CHECKR built-in function
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6checkrbif.htm
%SCAN
The scan built-in function (%SCAN) returns the first position of a search argument in the source
string, or 0 if it was not found.
Here is the format of the %SCAN built-in function:
%SCAN(search-argument source-string [starting-position])
Chapter 9. Application development 417
Example 9-2 shows an example of searching for a specific string by using the %SCAN built-in
function.
Note: The scan by %SCAN is case-sensitive. Therefore, a scan for ‘John’ does not return a
positive result if &FNAME contains the value ‘JOHN’.
Example 9-2 Search for a specific string by using the %SCAN built-in function
PGM PARM(&FNAME)
DCL VAR(&FNAME) TYPE(*CHAR) LEN(10)
IF COND(%SCAN('John' &FNAME) *EQ 0) +
THEN(SNDPGMMSG ('NOT FOUND!'))
For more information about the %SCAN built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6scanbif.htm
%TRIM, %TRIML, and %TRIMR
The %TRIM, %TRIML, and %TRIMR built-in functions use one parameter to produce a character
string with blanks removed:
%TRIM removes any leading and trailing blanks.
%TRIML removes any leading blanks.
%TRIMR removes any trailing blanks from a given string.
Here are the formats of the %TRIM, %TRIML, and %TRIMR functions:
%TRIM(character-variable-name [characters-to-trim])
%TRIML(character-variable-name [characters-to-trim])
%TRIMR(character-variable-name [characters-to-trim])
Example 9-3 shows an example of trimming blanks by using the %TRIM function.
Example 9-3 Trim blanks by using the %TRIM function
DCL VAR(&FIRSTNAME) TYPE(*CHAR) VALUE(' JOHN ')
DCL VAR(&LASTNAME) TYPE(*CHAR) VALUE(' SMITH ')
DCL VAR(&NAME) TYPE(*CHAR) LEN(10)
CHGVAR VAR(&NAME) VALUE(%TRIM(&FIRSTNAME) *BCAT %TRIM(&LASTNAME))
For more information about the %TRIM built-in functions, see IBM Knowledge Center:
%TRIM
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6trimbif.htm
%TRIML
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6trimlbif.htm
%TRIMR
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6trimrbif.htm
%CHAR
The %CHAR built-in function converts logical, decimal, integer, or unsigned integer data to the
character format.
Here is the format of the %CHAR built-in function:
%CHAR(convert-argument)
418 IBM i 7.2 Technical Overview with Technology Refresh Updates
Note: The convert-argument parameter must be a CL variable with a TYPE of *LGL, *DEC,
*INT, or *UINT.
For more information about the %CHAR built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6charbif.htm
%DEC
The %DEC built-in function converts character, logical, decimal, integer, or unsigned integer
data to the packed decimal format.
Here is the format of the %DEC built-in function:
%DEC(convert-argument [total-digits decimal-places])
Note: The convert-argument must be a CL variable with a TYPE of *CHAR, *LGL, *DEC, *INT,
or *UINT.
For more information about the %DEC built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6decbif.htm
%INT
The %INT built-in function converts character, logical, decimal, or unsigned integer data to
the integer format.
Here is the format of the %INT built-in function:
%INT(convert-argument)
Note: The convert-argument must be a CL variable with a TYPE of *CHAR, *LGL, *DEC, or
*UINT.
For more information about the %INT built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6intbif.htm
%UINT
The %UINT built-in function converts character, logical, decimal, or integer data to the
unsigned integer format.
Here is the format of the %UNIT built-in function:
%UINT(convert-argument) or %UNS(convert-argument)
Note: The convert-argument must be a CL variable with a TYPE of *CHAR, *LGL, *DEC, or
*INT.
For more information about the %UNIT built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6uintbif.htm
%LOWER
The %LOWER built-in function returns a character string that is the same length as the argument
that is specified, with each uppercase letter replaced by the corresponding lowercase letter.
Chapter 9. Application development 419
Here is the format of the %LOWER built-in function:
%LOWER(input-string [CCSID])
Note: The input-string parameter must be a CL variable with a TYPE of *CHAR.
For more information about the %LOWER built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6lowerbif.htm
%UPPER
The %UPPER built-in function returns a character string that is the same length as the argument
that is specified, with each lowercase letter replaced by the corresponding uppercase letter.
Here is the format of the %UPPER built-in function:
%UPPER(input-string [CCSID])
Note: The input-string parameter must be a CL variable with a TYPE of *CHAR.
For more information about the %UPPER built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6upperbif.htm
%LEN
The %LEN built-in function returns the number of digits or characters of the CL numeric or
character variable.
Here is the format of the %LEN built-in function:
%LEN(variable-argument)
Note: The variable-argument parameter must be a CL variable with a TYPE of *CHAR,
*DEC, *INT, or *UINT.
For more information about the %LEN built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6lenbif.htm
%SIZE
The %SIZE built-in function returns the number of bytes that are occupied by the CL variable.
Here is the format of the %SIZE built-in function:
%SIZE(variable-argument)
Note: The variable-argument must be a CL variable.
For more information about the %SIZE built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6sizebif.htm
420 IBM i 7.2 Technical Overview with Technology Refresh Updates
9.1.2 ILE RPG
This section covers the following ILE RPG topics:
“Free-form Control, File, Definition, and Procedure statements”
“Fully free-form statements in ILE RPG IV” on page 424
“CCSID support for alphanumeric data and external subfields” on page 424
“Enhancements that are related to CCSID conversion” on page 424
“Implicit conversion for concatenation” on page 425
“Control the length that is returned by %SUBDT” on page 425
“Increased precision for time stamp data” on page 426
“Open Access files” on page 426
“New XML-INTO options” on page 426
“VALIDATE(*NODATETIME) keyword in Control-Specification” on page 429
“Mixed case PCML support in ILE RPG IV” on page 429
Free-form Control, File, Definition, and Procedure statements
In IBM i 7.1 TR7 timed enhancements, ILE RPG had a significant enhancement where
Control-Specification (H-Spec), File-Specification (F-Spec), Definition-Specification (D-Spec),
and Procedure-Specification (P-Spec) syntax are supported in free-form in addition to
Calculation-Specification (C-Spec). IBM i 7.2 also has this capability.
Historically, the progress of free-form RPG started in OS/400 V5R. Free-form in C-Spec by
specifying /FREE and /END-FREE was introduced in ILE RPG in OS/400 V5R1. In i5/OS
V5R3, embedded SQL was supported in free-form C-Spec. The additional free-form
enhancements in IBM i 7.1 TR7 and IBM i 7.2 provide more ease of use and understanding of
ILE RPG for existing RPG programmers and new comers to RPG from other programming
languages, such as Java, PHP, and Visual Basic.
Figure 9-1 on page 422 through Figure 9-4 on page 423 show some examples of the
progress of free-form RPG.
For more information about free-form RPG support on IBM i, see the developerWorks
website:
https://www.ibm.com/developerworks/ibmi/library/i-ibmi-rpg-support/
Chapter 9. Application development 421
Figure 9-1 shows an example of Original Program Model (OPM) RPG in OS/400 V2R3.
FCUSTFILEIF E DISK
FREPORT O E PRINTER
ICUSTDS E DSCUSTFILE
/COPY GETCURDAT
/COPY INVOICE
C READ CUSTFILE LR
C *INLR DOWNE*ON
C DUEDAT IFGT CURDAT
C EXSR SNOVDU
C WRITEREPORTFM
C/EXEC SQL INSERT :NAME, :DUEDATE INTO
C+ MYLIB/MYFILE
C/END-EXEC
C ENDIF
C READ CUSTFILE LR
C ENDDO
C*
C SNOVDU BEGSR
C CALL 'SNDINVCE'
C PARM CUSTDS
C PARM ISOVDU OVERDU 10
C ENDSR
Figure 9-1 OPM RPG in OS/400 V2R3
Figure 9-2 shows an example of /FREE and /END-FREE in C-Spec of ILE RPG in OS/400
V5R1.
H bnddir('ACCRCV') dftactgrp(*no)
Fcustfile uf e disk
Freport o e printer
D custDs ds extname(custfile)
D sendOverdueNotice...
D pr
/free
read custfile custDs;
dow not %eof;
if dueDate > %date(); // overdue?
sendOverdueNotice ();
write reportFmt;
/end-free
C/exec sql insert :name, :duedate into
C+ mylib/myfile
C/end-exec
/free
endif;
read custfile custDs;
enddo;
*inlr = '1';
/end-free
Figure 9-2 /FREE and /END-FREE in C-Spec of ILE RPG in OS/400 V5R1
422 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 9-3 shows an example of support for embedded SQL within /Free and /END-FREE in
ILE RPG in i5/OS V5R3.
H bnddir('ACCRCV') dftactgrp(*no)
Fcustfile uf e disk
Freport o e printer
D custDs e ds extname(custfile)
D sendOverdueNotice...
D pr
/free
read custfile custDs;
dow not %eof;
if dueDate > %date(); // overdue?
sendOverdueNotice ();
write reportFmt;
exec sql insert :name, :duedate into
mylib/myfile;
endif;
read custfile custDs;
enddo;
*inlr = '1';
/end-free
P sendOverdueNotice...
P b
/copy invoices
Figure 9-3 Support for embedded SQL within /Free and /END-FREE in ILE RPG in i5/OS V5R3
Figure 9-4 shows an example of support for free-form control, file, definition, and procedure
statements in ILE RPG in IBM i 7.2.
ctl-opt bnddir('ACCRCV');
dcl-f custfile usage(*update);
dcl-ds custDs likerec(custRec);
dcl-f report printer;
read custfile custDs;
dow not %eof;
if dueDate > %date(); // overdue?
sendOverdueNotice ();
write reportFmt;
exec sql insert :name, :duedate into
mylib/myfile;
endif;
read custfile custDs;
enddo;
inlr = '1';
dcl-proc sendOverdueNotice;
/copy invoices
sendInvoice (custDs : IS_OVERDUE);
end-proc;
Figure 9-4 Free-form control, file, definition, and procedure statements in ILE RPG in IBM i 7.2
Chapter 9. Application development 423
Fully free-form statements in ILE RPG IV
As part of enhancing the RPG language and make it look and feel like a modern programming
language, the restriction for code to be 8 - 80 columns was removed.
To use this new function, you must code **FREE at the beginning of column 1 before entering
any other RPG statements on the following line. The **FREE specification is valid only for a
single source, which means that if you use /COPY or /INCLUDE directives, they should have
their own **FREE specification on the first line, or they will use the standard column limitations.
For more information about this topic, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/ssfree.htm?lang=en
CCSID support for alphanumeric data and external subfields
In IBM i 7.2, alphanumeric CCSID for the module can be set to many more CCSIDs, including
UTF-8 and hexadecimal. Alphanumeric data can be defined with a CCSID.
Supported CCSIDs include the following ones:
Single-byte and mixed-byte EBCDIC CCSIDs
Single-byte and mixed-byte ASCII CCSIDs
UTF-8
Hexadecimal
CCSID(*EXACT) can be used for an externally described data structure to indicate that the
alphanumeric subfields should have the same CCSID as the fields in the file.
For more information about CCSID, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/dccsid.htm
Enhancements that are related to CCSID conversion
The capability that is related to CCSID conversion is enhanced in the IBM i 7.2 ILE RPG
compiler. These enhancements include the following functions:
No allowance for implicit or explicit CCSID conversion of hexadecimal data. CCSID
conversion is not allowed for implicit or explicit conversion of hexadecimal data that
includes the following types of data:
– Hexadecimal literals.
– Alphanumeric and graphic data that is defined with CCSID(*HEX).
– Alphanumeric and graphic data in buffers for externally described files when the DATA
keyword is in effect for the file and the CCSID of the field in the file is 65535.
– Alphanumeric and graphic data in externally described data structures that are defined
with CCSID(*EXACT) when the CCSID of the field in the file is 65535.
Open database files without conversion to the job CCSID. Use Control keyword
OPENOPT(*NOCVTDATA) or File keyword DATA(*NOCVT) to specify that a database file will be
opened so that alphanumeric and graphic data is not converted to and from the job CCSID
for input and output operations.
424 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about the OPENOPT and DATA keywords, see the IBM Knowledge
Center:
– OPENOPT
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/hopenop.htm
– DATA
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/fkwdata.htm
Support for CCSID conversions that cause a loss of data. An exception or a diagnostic
message that is related to a CCSID conversion by using the C-Spec keyword
CCSIDCVT(*EXCP : *LIST). The meaning of the CCSID keyword can be one of the
following items:
– CCSIDCVT(*EXCP): Get an exception if a CCSID conversion loses data because of the
source character not having a match in the target character set.
– CCSIDCVT(*LIST): Get a listing of every CCSID conversion in the module, with a
diagnostic message indicating whether the conversion has the potential of losing data.
For more information about the CCSIDCVT keyword, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/hccsidcvt.htm
Implicit conversion for concatenation
You can use the ILE RPG compiler in IBM i 7.2 to perform the implicit conversion between
alphanumeric, graphic, and UCS-2 data for concatenation expressions.
For more information about implicit conversion, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/ccsidconv.htm
Control the length that is returned by %SUBDT
You can use an optional third parameter for the %SUBDT built-in function to specify the number
of digits in the result.
Here is the format of %SUBDT:
%SUBDT(value : unit { : digits { : decpos } })
Example 9-4 shows an example of using the %SUBDT built-in function.
Example 9-4 Example of the %SUBDT built-in function
date = d'1999-02-17';
time = t'01.23.45';
timestamp = z'1999-02-17-01.23.45.98765';
num = %subdt(date:*YEARS:4);
// num = 1999
num = %subdt(time:*MN);
// num = 23
seconds = %subdt(timestamp:*S:5:3);
// seconds = 45.987
For more information about the %SUBDT built-in function, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/bbsubd.htm
Chapter 9. Application development 425
Increased precision for time stamp data
Time stamp data can have 0 - 12 fractional seconds, which are added to the DB2 for i SQL
functions.
Example 9-5 shows an example of using the TIMESTAMP keyword that is used in a free-form
definition to indicate that the item has a type of time stamp. The number of fractional seconds
can be specified as an optional parameter. If this parameter is not specified, the number of
fractional seconds defaults to 6.
Example 9-5 Example of the TIMESTAMP keyword in a free-form definition
DCL-S TS0 TIMESTAMP(0); // YYYY-MM-DD-hh-mm-ss
DCL-S TS1 TIMESTAMP(1); // YYYY-MM-DD-hh-mm-ss.f
DCL-S TS6A TIMESTAMP; // YYYY-MM-DD-hh-mm-ss.ffffff
DCL-S TS6B TIMESTAMP(6); // YYYY-MM-DD-hh-mm-ss.ffffff
DCL-S TS12 TIMESTAMP(12); // YYYY-MM-DD-hh-mm-ss.ffffffffffff
For more information about increased precision for time stamp data, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/dtimes.htm
Open Access files
An Open Access file was introduced as the core of the IBM Rational® Open Access RPG
Edition, which originally was a separate licensed program from the ILE RPG compiler in IBM i
6.1 and 7.1. In 2012, this function was delivered as PTFs and combined into the ILE RPG
compiler and run time. In IBM i 7.2, it is also available as a part of the ILE RPG compiler and
run time.
An Open Access file is a file that has all its operations handled by a user-written program or
procedure, rather than by the operating system. This program or procedure is called an Open
Access Handler or simply a handler. The HANDLER keyword specifies the handler.
For more information about Open Access files, see the following websites:
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/openaccessfiles.h
tm
IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/We13116a
562db_467e_bcd4_882013aec57a/page/Rational%20Open%20Access.%20RPG%20Edition
New XML-INTO options
The following additional options of XML-INTO operation code are available in IBM i 7.2:
The ns option
The ns option controls how XML-INTO handles XML names with a namespace when
XML-INTO is matching XML names to the names in the path option or the subfield names
of a data structure. The following values can be specified as this option:
– keep
– remove
– merge
426 IBM i 7.2 Technical Overview with Technology Refresh Updates
Example 9-6 shows an example of specifying remove as an ns option.
Example 9-6 Example of specifying remove as an ns option
D info DS QUALIFIED
D type 25A VARYING
D qty 10I 0
D price 7P 3
xml-into info %xml('info1.xml'
: 'doc=file ns=remove');
// info.type = 'Chair'
// info.qty = 3
// info.price = 79.99
This example assumes that the info1.xml file contains the content that is shown in
Example 9-7.
Example 9-7 Content of the info1.xml file
<abc:info xmlns:abc="http://www.abc.xyz">
<abc:type>Chair</abc:type>
<abc:qty>3</abc:qty>
<abc:price>79.99</abc:price>
</abc:info>
Example 9-8 shows an example of specifying merge as an ns option.
Example 9-8 Example of specifying merge as an ns option
D info DS QUALIFIED
D abc_type 25A VARYING
D def_type 25A VARYING
D abc_qty 10I 0
D abc_price 7P 3
xml-into info %xml('info2.xml'
: 'doc=file ns=merge path=abc_info');
// info.abc_type = 'Chair'
// info.def_type = 'Modern'
// info.abc_qty = 3
// info.abc_price = 79.99
This example assumes that the info2.xml file contains the content that is shown in
Example 9-9.
Example 9-9 Content of the info2.xml file
<abc:info xmlns:abc="http://www.abc.xyz"
xmlns:def="http://www.def.xyz">
<abc:type>Chair</abc:type>
<abc:qty>3</abc:qty>
<def:type>Modern</def:type>
<abc:price>79.99</abc:price>
</abc:info>
For more information about the ns option, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/nsopt.htm
Chapter 9. Application development 427
The nsprefix option
The nsprefix option is valid only when ns=remove is specified. It allows an RPG program
to determine the values of the namespaces that were removed from the XML names.
Example 9-10 shows an example of specifying ns _ as a nsprefix option.
Example 9-10 Example of specifying ns_ as a nsprefix option
D info DS QUALIFIED
D type 25A VARYING DIM(2)
D ns_type 10A VARYING DIM(2)
D qty 10I 0
D price 7P 3
D ns_price 10A VARYING
xml-into info %xml('info3.xml'
: 'doc=file ns=remove nsprefix=ns_');
// info.type(1) = 'Chair'
// info.ns_type(1) = 'abc'
// info.type(2) = 'Modern'
// info.ns_type(2) = 'def'
// info.qty = 3
// info.price = 79.99
// info.ns_price = 'abc'
This example assumes that the info3.xml file contains the content that is shown in
Example 9-11.
Example 9-11 Content of the info3.xml file
<abc:info xmlns:abc="http://www.abc.xyz"
xmlns:def="http://www.def.xyz">
<abc:type>Chair</abc:type>
<abc:qty>3</abc:qty>
<def:type>Modern</def:type>
<abc:price>79.99</abc:price>
</abc:info>
For more information about the nsprefix option, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/nsprefixopt.htm
The case option
The case option specifies the way that XML-INTO should interpret the element and
attribute names in the XML document when searching for XML names that match the RPG
field names and the names in the path option. case=convert indicates that the names in
the XML document are converted to valid RPG names before matching to RPG names.
Example 9-12 shows an example of specifying convert as a case option.
Example 9-12 Example of specifying convert as a case option
D etudiant ds qualified
D age 3p 0
D nom 25a varying
D ecole 50a varying
D student ds likeds(etudiant)
428 IBM i 7.2 Technical Overview with Technology Refresh Updates
xml-into etudiant %xml('info4.xml'
: 'doc=file case=convert '
+ 'ccsid=ucs2');
// etudiant.nom = 'Élise'
// etudiant.age = 12
// etudiant.ecole = 'Collège Saint-Merri'
This example assumes that the info4.xml file contains the content that is shown in
Example 9-13.
The case=convert option specifies that the names in the XML document are converted by
using the *LANGIDSHR translation table for the job before matching to the RPG names in
the path and in the list of subfields.
The names Étudiant, Âge, and École are converted to ETUDIANT, AGE, AND ECOLE.
The XML data itself is not converted, so the subfield ecole receives the value ‘Collège
Saint-Merri’ as it appears in the XML document.
Example 9-13 Content of the info4.xml file
<Étudiant Nom="Élise" Âge="12">
<École>Collège Saint-Merri</École>
</Étudiant>
For more information about the case=convert option, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/caseopt.htm
VALIDATE(*NODATETIME) keyword in Control-Specification
The Control-Specification keyword VALIDATE(*NODATETIME) allows the ILE RPG compiler to
treat date, time, and time stamp data as character data, without performing the checks for
validity.
Important: This keyword might improve the performance of some date, time, and time
stamp operations. However, skipping the validation step can lead to serious data
corruption problems. You should use this feature only when you are certain that your date,
time, and time stamp data is always valid.
For more information about VALIDATE(*NODATETIME), see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/hvalidate.htm
Mixed case PCML support in ILE RPG IV
ILE RPG IV was enhanced to support the generation of mixed case Program Call Markup
Language (PCML). You can now select which exported procedures have generated PCML.
There is a new *DCLCASE parameter for keyword PGMINFO of H specification, which forces the
RPG compiler to generate in the same case as they are coded in RPG source. Before this
enhancement, PCML names were generated in upper case.
Also, usage of the PGMINFO keyword with parameters *YES or *NO can specify which
procedures in the module PCML are generated.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzasd/pgminfokw.htm?lang=e
n
Chapter 9. Application development 429
9.1.3 ILE COBOL
This section covers the following enhancements of ILE COBOL in IBM i 7.2:
“TIMESTAMP support of 0 - 12 fractional seconds” on page 430
“XML PARSE enhancement” on page 430
“PCML generation improvement” on page 431
“National data enhancements” on page 431
“Increased accuracy of NUMVAL and NUMVAL-C built-in functions” on page 431
“ARITHMETIC parameter for CRTBNDCBL and CRTCBLMOD” on page 431
“New PROCESS statement options” on page 432
TIMESTAMP support of 0 - 12 fractional seconds
In IBM i 7.2, the precision of TIMESTAMP is increased and can be set 0 - 12. This enhancement
applies to ILE COBOLE and ILE RPG and DB2 for i SQL functions. On ILE COBOL, the
following intrinsic functions now allow PICOSECONDS as a duration when specified for a time
stamp item:
ADD-DURATION
EXTRACT-DATE-TIME
FIND-DURATION
SUBTRACT-DURATION
The SIZE keyword is allowed with FORMAT TIMESTAMP. The size can be 19, indicating zero
fractional seconds, or a value 21 - 32, indicating 1 - 12 fractional seconds.
For more information about PICOSECONDS of each function and the SIZE keyword of TIMESTAMP,
see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/rzasemain.htm
XML PARSE enhancement
XML PARSE now can parse XML files that are greater than 16 MB if no individual document
piece that is passed to the processing procedure is greater than 16 MB. The following new
XML-CODE values are associated with this change:
XML-CODE 62 indicates that the XML document exceeds 16,000,000 bytes.
XML-CODE 170 indicates that an XML event exceeds 16,000,000 bytes.
For more information about XML PARSE and XML-CODE, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/rzasemain.htm
430 IBM i 7.2 Technical Overview with Technology Refresh Updates
PCML generation improvement
In the IBM i 7.2 ILE COBOL compiler, the following improvements are added to the PCML
generation function:
New init keyword for improved OCCURS DEPENDING ON array handling
PCML generation provides improved OCCURS DEPENDING ON array handling with the
addition of a new init keyword that is set to the maximum size of the array.
Automatic data-item naming in generated PCML for filler data items and unnamed items in
a data structure
PCML generation provides automatic data-item naming in generated PCML for filler data
items and unnamed items in a data structure, helping to enable web services to use
generated PCML without first modifying it. The names for these data items are _filler_1,
_filler_2, and so on.
For more information about PCML generation, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/cblpcml.htm
National data enhancements
The IBM i 7.2 ILE COBOL compiler supports the numeric national data type. A numeric literal
can be specified for the VALUE clause for a numeric national data item. The figurative constant
ZERO/ZEROS/ZEROES represents one or more national zero digits when used with national
data items. When the new PROCESS option NATIONALPICNLIT is specified, National ‘N’ literals
are supported.
For more information about national data, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/rzasemain.htm
Increased accuracy of NUMVAL and NUMVAL-C built-in functions
The accuracy of numeric intrinsic functions NUMVAL and NUMVAL-C increases to 31 digits by
using compiler option ARITHMETIC(*EXTEND31) or PROCESS option EXTEND31.
ARITHMETIC parameter for CRTBNDCBL and CRTCBLMOD
A new *EXTEND31FULL option value is available as a value of the ARITHMETIC parameter for the
CRTBNDCBL and CRTCBLMOD CL commands. This new value provides the following features:
The accuracy of the following numeric intrinsic functions increases from floating-point
accuracy of up to 15 digits to decimal floating-point accuracy of up to 34 digits:
– ANNUITY
– MEAN
– MEDIAN
– MIDRANGE
– NUMVAL
– NUMVAL-C
– PRESENT-VALUE
– VARIANCE
The intermediate result of a fixed-point arithmetic expression can be up to 34 digits and
numeric literals may have a maximum length of 34 digits.
Chapter 9. Application development 431
For more information about the ARITHMETIC parameter for the CRTBNDCBL and CRTCBLMOD CL
commands, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/crtbndcbl.htm
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/crtcblmod.htm
New PROCESS statement options
In ILE COBOL in IBM i 7.2, the following options are added to the PROCESS statement:
NOCHGFLTRND and ALWCHGFLTRND
Specifies whether COBOL uses the floating point rounding mode computational attribute
that is specified by MI instruction SETCA. You can use SETCA to set the rounding mode
of the result of a floating-point calculation to either round or truncate.
NATIONALPICNLIT
Enables N" and N' as the opening delimiter for a national literal and enables elementary
data items that are defined by using the picture symbol N to have an implied USAGE
NATIONAL clause.
EXTEND31FULL
This option corresponds to the enhancement of the CRTBNDCBL and CRTCBLMOD CL
commands. You can use this option to increase the floating-point accuracy of up to 34
digits and the *EXTEND31FULL option of ARITHMETIC parameter for CRTBNDCBL and CRTCBLMOD
CL commands.
For more information about the PROCESS statement, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/proc.htm
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/optonly.htm
9.1.4 ILE C/C++
This section covers the following enhancements of ILE C/C++ in IBM i 7.2:
New predefined macros
“New option of the LANGLVL parameter for CL commands” on page 433
“Implementing the initial C++0x features” on page 434
New predefined macros
The following predefined macros are available in ILE C/C++ in IBM i 7.2.
ILE C macros
The following ILE C macros are available:
__C99_BOOL indicates support for the _Bool data type.
__C99_DESIGNATED_INITIALIZER indicates support for the designated initialization.
__C99_DUP_TYPE_QUALIFIER indicates support for duplicated type qualifiers.
__C99_EMPTY_MACRO_ARGUMENTS indicates support for empty macro arguments.
__C99_FLEXIBLE_ARRAY_MEMBER indicates support for flexible array members.
__C99_INLINE indicates support for the inline function specifier.
__C99_LLONG indicates support for C99-style long long data types and literals.
__C99_MAX_LINE_NUMBER indicates that the maximum line number is 2147483647.
__C99_MIXED_DECL_AND_CODE indicates support for mixed declaration and code.
432 IBM i 7.2 Technical Overview with Technology Refresh Updates
__C99_NON_CONST_AGGR_INITIALIZER indicates support for non-constant aggregate
initializers.
__C99_NON_LVALUE_ARRAY_SUB indicates support for non-constant aggregate
initializers.
__C99_NON_LVALUE_ARRAY_SUB indicates support for non-lvalue subscripts for
arrays.
__C99_STATIC_ARRAY_SIZE indicates support for the static keyword in array
parameters to functions.
__C99_VAR_LEN_ARRAY indicates support for variable length arrays.
All of these macros are defined when the LANGLVL(*EXTENDED) compiler is in effect.
ILE C++ macros
The following ILE C++ macros are available:
__C99_MAX_LINE_NUMBER indicates that the maximum line number is 2147483647.
__C99_MIXED_STRING_CONCAT indicates support for concatenation of wide string and
non-wide string literals.
__IBMCPP_AUTO_TYPEDEDUCTION indicates support for the auto type deduction
feature.
__IBMCPP_C99_PREPROCESSOR indicates support for the C99 preprocessor features
that are adopted in the C++0x standard.
__IBMCPP_DECLTYPE indicates support for the decltype feature.
__IBMCPP_DELEGATING_CTORS indicates support for the delegating constructors
feature.
__IBMCPP_EXTENDED_FRIEND indicates support for the extended friend declarations
feature.
__IBMCPP_EXTERN_TEMPLATE indicates support for the explicit instantiation
declarations feature.
__IBMCPP_INLINE_NAMESPACE indicates support for the inline namespace definitions
feature.
__IBMCPP_STATIC_ASSERT indicates support for the static assertions feature.
All of these macros are defined when the LANGLVL(*EXTENDED0X) compiler is in effect.
New option of the LANGLVL parameter for CL commands
In IBM i 7.2, the new *EXTENDED0X option of the LANGLVL parameter for CL commands is
supported in a way that corresponds to the implement initial C++0x features in this release.
C++0x is now called C++11. *EXTENDED0X defines the same preprocessor variables as
*EXTENDED does, and also defines an individual preprocessor variable for each C++11
language feature that is supported in this release. This option causes the compiler to use all
the capabilities of ILE C++ and supported C++11 features that are implemented in this
version of ILE C++ compiler.
For more information about the LANGLVL parameter for CL commands, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzarf/compile_langlvl.htm
Chapter 9. Application development 433
Implementing the initial C++0x features
ILE C++ in IBM i 7.2 supports the initial C++0x features, including the following features:
C++0x is a new version of the C++ programming language standard.
C++0x is ratified and published as ISO/IEC 14882:2011 and now is called C++11.
All references to C++0x in this document are equivalent to the ISO/IEC 14882:2011
standard.
Note: IBM continues to develop and implement the features of the new standard. The
implementation of the language level is based on IBM’s interpretation of the standard. Until
IBM’s implementation of all the features of the C++0x standard is complete, including the
support of a new C++ standard library, the implementation might change from release to
release. IBM makes no attempt to maintain compatibility, in source, binary, or listings and
other compiler interfaces, with earlier releases of IBM’s implementation of the new features
of the C++0x standard, and they should not be relied on as a stable programming interface.
9.1.5 System APIs
For a list with detailed information about new APIs in IBM i 7.2, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apifinder/apifinder50.htm
For a list with detailed information about changed APIs in IBM i 7.2, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apifinder/apifinder60.htm
9.2 Java on IBM i
The section covers the following topics:
“IBM Developer Kit for Java”
“IBM Toolbox for Java” on page 438
9.2.1 IBM Developer Kit for Java
This section describes the following topics:
“IBM Developer Kit for Java Packaging”
“Support for multiple Java Development Kits” on page 436
“Security Updates for Java on IBM i” on page 438
IBM Developer Kit for Java Packaging
In IBM i 6.1 and IBM i 7.1, IBM Developer Kit for Java was available as the licensed program
5761JV1. In IBM i 7.2, the new product ID 5770JV1 is for IBM Developer Kit for Java. This
product covers the same options as 5761JV1, but the following options are not available in
IBM i 7.2 5770JV1:
Option 8: JDK50, 32-bit
Option 9: JDK50, 64-bit
Option 13: JDK142, 64-bit
434 IBM i 7.2 Technical Overview with Technology Refresh Updates
All of the available versions of Java for IBM i 7.2 are called IBM Technology for Java, which is
based on the AIX version of the IBM Center for Java Technology Developer Kit. IBM
Developer Kit for Java Option 6, Option 7, and Option 10, which are referred as Classic Java,
were dropped in IBM i 7.1 and also are not available in IBM i 7.2. If you are still using Classic
Java before in IBM i before Version 7.1, you should refer the following considerations and
migrate your application to use IBM Technology for Java:
When migrating from the Classic Java virtual machine (JVM), which was the 64-bit virtual
machine, to the 32-bit version of IBM Technology for Java, consider that there might be
limitations when using the 32-bit environment. For example, the amount of addressable
memory is much smaller. In 32-bit mode, the Java object heap cannot grow much larger
than 3 GB. You also are limited to running approximately 1000 threads. If your application
requires more than 1000 threads or a Java object heap larger than 3 GB, use the 64-bit
version of IBM Technology for Java. Table 9-1 shows the level of Classic Java and the IBM
Technology for Java replacement.
Table 9-1 Classic Java levels and the suggested IBM Technology for Java replacement
Current Classic Java version Possible options of IBM Technology for Java
replacements
Java Developer Kit 1.4 (5761JV1 Option 6) Java SE 71 32-bit (5770JV1 Option 14)
Java SE 71 64-bit (5770JV1 Option 15)
Java SE 7 32-bit (5770JV1 Option 14)
Java SE 7 64-bit (5770JV1 Option 15)
Java SE 6 2.6 32-bit (5770JV1 Option 11)
Java SE 6 2.6 64-bit (5770JV1 Option 12)
Java SE 6 32-bit (5770JV1 Option 11)
Java SE 6 64-bit (5770JV1 Option 12)
Java SE 8 32-bit (5770JV1 Option 16)
Java SE 8 64-bit (5770JV1 Option 17)
Java Developer Kit 5.0 (5761JV1 Option 7) Java SE 71 32-bit (5770JV1 Option 14)
Java SE 71 64-bit (5770JV1 Option 15)
Java SE 7 32-bit (5770JV1 Option 14)
Java SE 7 64-bit (5770JV1 Option 15)
Java SE 6 2.6 32-bit (5770JV1 Option 11)
Java SE 6 2.6 64-bit (5770JV1 Option 12)
Java SE 6 32-bit (5770JV1 Option 11)
Java SE 6 64-bit (5770JV1 Option 12)
Java SE 8 32-bit (5770JV1 Option 16)
Java SE 8 64-bit (5770JV1 Option 17)
Java Developer Kit 6 (5761JV1 Option 10) Java SE 71 32-bit (5770JV1 Option 14)
Java SE 71 64-bit (5770JV1 Option 15)
Java SE 7 32-bit (5770JV1 Option 14)
Java SE 7 64-bit (5770JV1 Option 15)
Java SE 6 2.6 32-bit (5770JV1 Option 11)
Java SE 6 2.6 64-bit (5770JV1 Option 12)
Java SE 6 32-bit (5770JV1 Option 11)
Java SE 6 64-bit (5770JV1 Option 12)
Java SE 8 32-bit (5770JV1 Option 16)
Java SE 8 64-bit (5770JV1 Option 17)
Adopted authority for Java programs is not supported by IBM Technology for Java Virtual
Machine.
Chapter 9. Application development 435
IBM Technology for Java virtual machine works on Portable Applications Solutions
Environment (PASE). When IBM Technology for Java Virtual Machine or PASE for i native
methods encounter problems, they dump diagnostic files into the IFS, and you cannot see
messages in the job log. There are several types of these core files, including core.*.dmp,
javacore.*.txt, Snap*.trc, and heapdump.*.phd. The files range in size from tens of
kilobytes up to hundreds of megabytes. In most cases, more severe problems produce
larger files. The larger files can quickly and quietly consume large amounts of IFS space.
Note: Despite the space these files consume, they are useful for debugging purposes.
When possible, you should preserve these files until the underlying problem is resolved.
If your ILE programs use Java Native Interface (JNI) functions, you must compile these
programs with teraspace storage enabled.
Note: As a preferred practice, use Java SE 71 when migrating from Java Developer Kit 1.4
or 5.0.
Support for multiple Java Development Kits
IBM i 7.2 supports multiple versions of the Java Development Kits (JDKs) and the Java
Platform, Standard Edition. To install the IBM Technology for Java options on IBM i 7.2, follow
the steps that are found in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaha/rzahainstalljdk.htm
Table 9-2 shows the list of supported options of 5770JV1 IBM Technology for Java product
and their JAVA_HOME in IBM i 7.2.
Table 9-2 Supported options of 5770JV1 IBM Technology for Java in IBM i 7.2
5770JV1 options JAVA_HOME
Option 11 IBM Technology for Java 6 32-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit
Option 11 IBM Technology for Java 6 2.6 32-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk626/32bit
Option 12 IBM Technology for Java 6 64-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk60/64bit
Option 12 IBM Technology for Java 6 2.6 64-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk626/64bit
Option 14 IBM Technology for Java 7 32-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk70/32bit
Option 14 IBM Technology for Java 71 32-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk71/32bit
Option 15 IBM Technology for Java 7 64-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk70/64bit
Option 15 IBM Technology for Java 71 64-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk71/64bit
Option 16 IBM Technology for Java 8 32-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk80/32bit
Option 17 IBM Technology for Java 8 64-bit /QOpenSys/QIBM/ProdData/JavaVM/jdk80/64bit
436 IBM i 7.2 Technical Overview with Technology Refresh Updates
JDK 8.0 is available for IBM i 7.1 and 7.2 since April 28, 2015. Here is more information about
how to obtain JDK 8.0 for your IBM i OS version:
Required group PTF levels for JDK 8.0:
– IBM i 7.2: SF99716 Level 5 or higher
– IBM i 7.1: SF99572 Level 20 or higher
You can obtain JDK 8.0 32-bit and 64-bit as ISO images from IBM Entitled Software
Support (ESS) and then install them by using GO LICPGM Option 11. To access
instructions about how to download JDK8.0 on IBM i, see the following documentation:
http://www.ibm.com/support/docview.wss?uid=nas8N1020692
For more information about PTFs for Java on IBM i, see the IBM i Technology Updates
developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/PTF%20groups%20and%20latest%20SR%2C%20FP
IBM i also supports using multiple JDKs simultaneously through multiple JVMs. A single JVM
runs one specified JDK. The default JDK that is chosen in this multiple-JDK environment
depends on which 5770-JV1 options are installed. The following order of precedence
determines the default JDK:
1. Option 14 - IBM Technology for Java 7.1 32-bit
2. Option 15 - IBM Technology for Java 7.1 64-bit
3. Option 14 - IBM Technology for Java 7.0 32-bit
4. Option 15 - IBM Technology for Java 7.0 64-bit
5. Option 11 - IBM Technology for Java 6 32-bit
6. Option 12 - IBM Technology for Java 6 64-bit
7. Option 16 - IBM Technology for Java 8.0 32-bit
8. Option 17 - IBM Technology for Java 8.0 64-bit
You can access IBM Technology for Java JDKs by setting the JAVA_HOME environment variable
or by specifying a fully qualified path to the Java tool or utilities in the JDK that you want to
use.
Chapter 9. Application development 437
Example 9-14 shows an example of using IBM Technology for Java 71 64-bit by setting
JAVA_HOME. Figure 9-5 shows the result of running java -version from PASE by using the
settings of Example 9-14.
Example 9-14 Example of setting IBM Technology for Java 71 64-bit to JAVA_HOME
ADDENVVAR ENVVAR(JAVA_HOME) VALUE('/QOpenSys/QIBM/ProdData/JavaVM/jdk71/64bit')
/QOpenSys/usr/bin/-sh
$
> java -version
java version "1.7.0"
Java(TM) SE Runtime Environment (build pap6470_27sr1fp1-20140708_01(SR1 FP1))
IBM J9 VM (build 2.7, JRE 1.7.0 OS/400 ppc64-64 Compressed References jvmap64
70_27sr1fp1-20140708_01_cr (JIT enabled, AOT enabled)
J9VM - R27_Java727_SR1_20140707_1408_B205525
JIT - tr.r13.java_20140410_61421.07
GC - R27_Java727_SR1_20140707_1408_B205525_CMPRSS
J9CL - 20140707_205525)
JCL - 20140707_01 based on Oracle 7u65-b16
$
Figure 9-5 Result of java -version by specifying IBM Technology for Java 7.1 64-bit
For more information about IBM Developer Kit for Java, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaha/whatitis.htm
Security Updates for Java on IBM i
The following developerWorks website provides the current security update information about
Java on IBM i security, including Java SR Delivery Schedule for IBM i and Common
Vulnerabilities and Exposures (CVE) information:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Java%20on%20IBM%20i%20security%20updates
9.2.2 IBM Toolbox for Java
To access resources, including data in IBM i from your Java applications, you can use IBM
Toolbox for Java. IBM Toolbox for Java provides a set of Java classes, which can be used in
Java client/server applications, applets, and servlets that work with data on your IBM i
system. Some typical functions of IBM Toolbox for Java are IBM Toolbox for Java JDBC
Driver, Program Call and Program Call Markup Language (PCML) functions, and so on. An
open source version of IBM Toolbox for Java, which is referred as JTOpen, is also available.
JTOpenLite (JTLite) is also available for accessing IBM i resources to mobile applications.
This section covers the following enhancements of IBM Toolbox for Java in IBM i 7.2:
“New AS400JDBCTimestamp class” on page 439
“JTOpenLite Java classes library” on page 439
438 IBM i 7.2 Technical Overview with Technology Refresh Updates
New AS400JDBCTimestamp class
In IBM i 7.2, the maximum precision of a time stamp increases from 6 to 12. Corresponding to
the DB2 for i SQL functions and ILE programming languages, the IBM Toolbox for Java JDBC
driver also is enhanced to retrieve these larger time stamp values. Because the
java.sql.Timestamp class supports only 9 digits of precision, a new AS400JDBCTimestamp
class was created to handle those cases where the data from the server includes more than 9
digits of precision.
For more information about the AS400JDBCTimestamp class, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahh/javadoc/com/ibm/as40
0/access/AS400JDBCTimestamp.html
New QueryTimeoutMechanism JDBC connection property
The IBM Toolbox for Java JDBC driver originally implemented the queryTimeout feature by
using the QQRYTIMLMT feature of the database engine. However, this mechanism does not
correctly allow for the ending of long running operations.
The QueryTimeoutMechanism connection property allows the queryTimeout to be
implemented by using a database CANCEL. The possible values are qqrytimlmt and cancel. If
qqrytimlmt is specified, the QQRYTIMLMT feature of the database engine is used to limit
how long queries can run. If cancel is specified, the running SQL statement is canceled after
the specified timeout expires.
For more information about the QueryTimeoutMechanism connection property, see
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahh/jdbcproperties.htm
JTOpenLite Java classes library
The JTOpenLite package (com.ibm.jtopenlite) is an alternative to the IBM Toolbox for Java
and JTOpen that provides a small footprint (about 420 KB). You can use JTOpenLite to write
Java programs that allow a variety of mobile devices to access directly IBM i data and
resources. Although JTOpenLite is considered a part of IBM Toolbox for Java, it is not
included in the licensed product. The JTOpenLite JAR file (jtopenlite.jar) is included in the
open source version of IBM Toolbox for Java, called JTOpen. You must separately download
and set up JTOpenLite, which is contained in JTOpen.
For more information about JTOpenLite, see Modernizing IBM i Applications from the
Database up to the User Interface and Everything in Between, SG24-8185.
9.3 Rational Tools for i
This section covers the following Rational Tools for i:
9.3.1, “IBM Rational Developer for i” on page 440
9.3.2, “IBM Rational Application Developer for WebSphere Software” on page 451
9.3.3, “IBM Rational Business Developer” on page 452
9.3.4, “IBM Rational Team Concert for i” on page 456
9.3.5, “IBM Rational Host Access Transformation Services” on page 457
9.3.6, “IBM Rational Application Management Toolset for i” on page 460
9.3.7, “ARCAD Pack for Rational” on page 462
Chapter 9. Application development 439
9.3.1 IBM Rational Developer for i
IBM Rational Developer for i (RDi) is an integrated development environment (IDE) that is
built on the Eclipse platform. It is the strategic desktop development tool for creating IBM i
applications. RDi is installed on a workstation and supports the development of IBM i
applications in both host-connected and disconnected modes. RDi can be installed in either
Windows, or Linux developer workstations. RDi supports the development of RPG, COBOL,
C, C++, SQL, and CL applications, including DDS (for instance display and printer files).
This section covers the following topics:
“Rational Developer for i versions” on page 440
“Rational Developer for i packaging” on page 440
“What is new in the latest versions of RDi” on page 441
Rational Developer for i versions
The earliest version of RDi that supports IBM i 7.2 base enhancements is Version 9.1. The
latest version supporting IBM i 7.2 is Version 9.5.
RDi V9.1 was delivered in 2014 for the announcement of IBM i 7.2. To support IBM i 7.2 TR1,
Version 9.1.1 was released later in 2014.
Both RDi V9.1 and V9.1.1 are built on Eclipse 4.2.2, and RDI V9.5 is built on Eclipse 4.4.2
and Java 8.
For more information about RDi version evolution, go to the following website:
http://www.ibm.com/support/docview.wss?uid=swg21681378
Rational Developer for i packaging
RDi is available in three editions since Version 9.1:
RPG and COBOL Tools
This edition is for developing basic compiled language applications that run on IBM i,
including C, C++, CL, DDS, and SQL development. The IDE can be connected to IBM i
versions 6.1, 7.1, and 7.2.
RPG and COBOL + Modernization Tools, Java Edition
This edition contains all the functions of RPG and COBOL Tools and a substantial subset
of the IBM Rational Application Developer for WebSphere software. This edition provides
a rich Java, web, SOA, and mobile development environment to support extension and
modernization of heritage IBM i applications. This edition also includes IBM Worklight
Developer Edition to support the development of hybrid mobile applications that use the
capabilities of the Worklight run times and connect to systems of record that are
implemented in RPG, COBOL, C/C++, SQL, or Java/JEE running on AIX or Linux on
Power Systems servers.
For more information about Rational Application Developer, see 9.3.2, “IBM Rational
Application Developer for WebSphere Software” on page 451.
For more information about IBM Worklight Developer Edition, see the following
developerWorks website:
http://www.ibm.com/developerworks/mobile/worklight/
440 IBM i 7.2 Technical Overview with Technology Refresh Updates
RPG and COBOL + Modernization Tools, EGL Edition
This edition contains the complete Rational Business Developer product to support
extension and modernization of heritage IBM i applications that use the EGL language in
addition to the RPG and COBOL Tools.
For more information about Rational Business Developer, see 9.3.4, “IBM Rational Team
Concert for i” on page 456.
What is new in the latest versions of RDi
RDi V9.1 has the following enhancements:
“Line-level batch code coverage analysis capability” on page 441
“Support of free-form RPG” on page 445
“Filter function in the RPG outline view” on page 448
RDi V9.1.1 has the following enhancements:
“Interactive Code Coverage support” on page 449
“Push-to-client function” on page 450
RDi V9.5 has the following enhancements:
Removes the columns 8 - 80 restriction for formatting free-form RPG, as described in
“Fully free-form statements in ILE RPG IV” on page 424.
Provides for “smart” indentation of free-form RPG with RPG code editor.
Includes an embedded 5250 emulator.
Delivers dramatic improvement of code coverage analysis performance (observed, but not
formally benchmarked, as 20 times faster than the previous version).
Provides tools support for Java 8 and Java Enterprise Edition 7 in the Java edition.
For more information about IBM Rational Developer for i, see the following website:
http://www.ibm.com/software/products/en/dev-ibm-i/
Also, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/SSAE4W/welcome?lang=en
Line-level batch code coverage analysis capability
Batch code coverage can be started on any program or service program that can be
debugged. This capability can be used to determine the effectiveness of automated or
manual tests. It can help focus additional testing on code paths that have not been run. It can
aid the reduction of the amount of testing that is required by eliminating tests that duplicate
which code paths that they exercise.
Chapter 9. Application development 441
Figure 9-6 shows starting the Batch Code Coverage capability by right-clicking a program
object in RDi. With this capability, the developer can then see, by views, html reports, and
editor annotations, exactly which lines of the programs are or are not run by that particular
scenario.
Figure 9-6 Start batch code coverage
442 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 9-7 shows an example of Code Coverage Report as an editor.
Figure 9-7 Code Coverage Report
Chapter 9. Application development 443
The developer can drill down from this report in the editor to determine which lines are
covered. The editor opens the related source member with green and red annotations,
showing which lines are covered, as shown in Figure 9-8.
Figure 9-8 Source member with annotations about which lines are covered
444 IBM i 7.2 Technical Overview with Technology Refresh Updates
The Code Coverage Report also can be shown as HTML and PDF reports. Figure 9-9 is an
example of an HTML report. Those reports are available for those users who are not using
RDi such as quality assurance and management.
Figure 9-9 Example of a Code Coverage HTML report
For more information about the Code Coverage capability, see the following developerWorks
website:
http://www.ibm.com/developerworks/library/d-code-coverage-tools-rational-developer
-i/index.html
Support of free-form RPG
RDi V9.1 supports and uses the free-form RPG with prompting, syntax checking, program
verifiers, source styling logic, live outline views, content assist, hover hints, and other
functions.
Chapter 9. Application development 445
Wizards such as the D-Specification Wizard, which is shown in Figure 9-10, Procedure
Wizard, as shown in Figure 9-11 on page 447, and Java Method Call Wizard, as shown in
Figure 9-12 on page 448, can generate free-form definitions into the correct location of mixed
free-form and fixed-form RPG sources.
Figure 9-10 D-Specification Wizard
446 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 9-11 Procedure Wizard
Chapter 9. Application development 447
Figure 9-12 Java Method Call Wizard
For more information about free-form RPG support, see the following resources:
IBM developerWorks website:
https://www.ibm.com/developerworks/ibmi/library/i-ibmi-rpg-support/
IBM Knowledge Center:
https://www.ibm.com/support/knowledgecenter/SSAE4W_9.5.0/com.ibm.etools.iseries
.rse.doc/topics/teditrpg.html
Filter function in the RPG outline view
The RPG outline can be quickly set to the language elements of interest by specifying a filter.
The ability to filter to the variable or procedure of interest and see all the references can be a
boon to productivity.
This function provides an optional filter field at the top of the Outline view, as shown in
Figure 9-13 on page 449, and sets the view as the developer types. Figure 9-13 on page 449
shows only the definitions containing EMP because EMP is in the filter field of the Outline
view.
448 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 9-13 Filter field of the Outline view
Interactive Code Coverage support
In RDi V9.1.1, the Interactive Code Coverage analysis capability is supported in addition to
the existing batch code coverage analysis, which is described in “Line-level batch code
coverage analysis capability” on page 441. With this enhancement, the Code Coverage
capability can be adopted by batch processes and interactive processes, such as interactive
jobs and web services.
For more information about Interactive Code Coverage support, see the following
developerWorks website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%207.2%20-%20TR1%20Enhancements
Chapter 9. Application development 449
Push-to-client function
RDi V9.1.1 supports the Push-to-client function, which updates all RDi client workspaces
from a central IBM i. You can use this capability to distribute and maintain RDi across a team
of developers. Figure 9-14 shows the concept of the Push-to-client function. By using this
function, you can store workspace configurations in a central location and push them to client
workstations so that your developers have a consistent workspace environment.
The Push-to-client function can be used to administer consistent work environments or to
simply share or back up configurations.
Figure 9-14 Concept of Push-to-client function
The following information and files can be distributed from a central IBM i:
Remote System Explorer (RSE) Connections
Filters
Eclipse Preferences
Update templates
– Free-form RPG
– Free-form SQL
– COBOL
– C/C++
Database Connections
RSE Compile Actions
RSE User Actions
450 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about the Push-to-client function, see the following developerWorks
website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%207.2%20-%20TR1%20Enhancements
9.3.2 IBM Rational Application Developer for WebSphere Software
Rational Application Developer is an Eclipse-based IDE that is used to build Java, Java EE,
Web 2.0, mobile, portal, and service-oriented architecture (SOA) applications for distributed
platforms and IBM Bluemix®. The purpose of this tool is the development of Java Platform,
Enterprise Edition software for multiple platforms running IBM WebSphere Application Server
software. IBM i is one of supported platforms. The latest version of Rational Application
Developer for WebSphere Software is Version 9.5 running on Eclipse 4.4.2 and Java 8.
There are several advantages to using this software:
Accelerates the development and maintenance of web and mobile applications with tools
for established and new and emerging programming models and technologies.
Speeds the development of services and Java applications with productivity tools that
support the current Java EE and SOA programming models.
Is optimized for IBM middleware, including the new, lightweight Liberty Profile, the full
WebSphere Application Server profile, the IBM WebSphere Portal Server, and IBM
Workload Deployer.
Includes advanced test and analysis tools to help you achieve higher initial code quality
while accelerating application development, deployment, and management.
Provides flexible deployment options and rich integration with the Rational Collaborative
Application Lifecycle Management solution to help raise productivity and improve quality
outcomes at both the team and individual practitioner levels.
IBM Rational Application Developer for WebSphere Software V9.5 provides the following new
and enhanced capabilities:
Provides tool support for Java 8 and Java Enterprise Edition 7, and the latest version of
WebSphere Application Server Liberty, including new support for remote profiling on
WebSphere Application Server Liberty and support for portlets on the WebSphere
Application Server Liberty profile.
Offers integration with the Jasmine framework for JavaScript unit testing.
Delivers updated tools for working with IBM Bluemix and new integration with the Cloud
Foundry CLI interface, and updated Cordova support.
Enables the use of static code analysis results as a criterion for permitting change sets to
be delivered to IBM Rational Team Concert™.
Provides functional and usability improvements (including streamlined installation) to the
included utilities for automating builds, static code analysis, unit testing, and code
coverage analysis in Continuous Integration environments. These capabilities are now
packaged into a new Code Quality Extension for Continuous Integration component.
For more information, see the IBM Rational Application Developer for WebSphere website:
http://www.ibm.com/software/products/en/application
Also, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/SSRTLW_9.5.0/com.ibm.rad.install.doc/to
pics/c_install_build_utility_8.html?lang=en
Chapter 9. Application development 451
9.3.3 IBM Rational Business Developer
Rational Business Developer (or Rational Developer for i - EGL tools) contains the following
features (examples):
A complete IDE for EGL development (IBM Rational Business Developer V9.0 functions)
Limited Java and web development
Rational Business Developer is an Eclipse-based IDE that simplifies the development of SOA
applications by using the Enterprise Generation Language (EGL).
Developers can now deliver web, Web 2.0, and mobile applications and services without
having to master Java and SOA programming. They can create, test, and debug EGL
applications while generating Java, JavaScript, or COBOL code for deployment. RPG and
COBOL developers can migrate to EGL easily because they can use it to create portable
applications with modern architectures and user interfaces, without having to learn concepts
of object-oriented languages.
Here are the main features of Rational Business Developer (and also EGL tools):
EGL transformation
– Transforms an EGL source into Java, JavaScript, or COBOL code that is optimized for
deployment to application hosting environments, including Java EE servers and
traditional transactional systems.
– Streamlines development by using a single, high-level language for complete
development of the business application.
– Generates different languages for a single application, such as JavaScript for an
application user interface and Java or COBOL for the application back end.
– Increases productivity and reduces the technology learning curve to improve business
agility and competitiveness.
Simplified service creation
– Simplifies service creation, concealing the technical complexity of SOA. Multiplatform
deployment deploys applications and services on many platforms, either as web
services or natively.
– Provides built-in service constructs and a facility for service generation, allowing
business-oriented developers to create SOA applications without extensive training.
– Creates EGL services and automates the generation of web services from EGL
services.
– Supports the development and deployment of services to WebSphere Application
Server on multiple platforms.
– Allows developers to work within the familiar Eclipse-based environment by using
existing development skills.
Unified Modeling Language (UML) support
– Supports UML to EGL transformations, allowing complex applications to be modeled
graphically.
– UML supports a model-driven approach that streamlines the creation of Java and Web
2.0 applications and services.
– UML supports the implementation of EGL services.
– UML supports full Create, Read, Update, Delete applications without the need for
manual coding.
452 IBM i 7.2 Technical Overview with Technology Refresh Updates
Extensible platform
– Integrates with several IBM products to extend support for IBM i and expand software
lifecycle functions.
– Extends existing IT assets and provides the extensibility, scalability, and productivity
features of an Eclipse-based platform.
– Integrates with IBM Rational Developer for i for SOA Construction and IBM Rational
Software Architect.
For more information about EGL, see the following websites:
EGL Cafe:
https://www.ibm.com/developerworks/community/groups/service/html/communityview?
communityUuid=3e2b35ae-d3b1-4008-adee-2b31d4be5c92
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/SSMQ79/welcome?lang=en
New features in Rational Business Developer V9.1
Here are the new features of Rational Business Developer V9.1:
New annotations:
– Description=#doc{}
– isDeprecated
– StartTransactionID/RestartTransactionID
New Dojo widget and Dojo Mobile widget enhancements:
– Addition of DojoMobileTimePicker widget
– allowEmptyRows property on Datagrid to show/hide empty rows
Support for EGL web applications in the IBM CICS® V5.1 Liberty Profile. Includes
RUI/Web 2.0 based, JSF based, JavaWrappers, and VAGen style web transactions.
Extension Points/APIs enabling development of custom code for the following features:
– Support Fixed/Structured Records in RUI handlers
– Extend the EGL RUI Visual Editor
Shell Share capability with other Rational V9.1 IDE products.
New features in Rational Business Developer V9.5
Here is a list of the new features in Rational Business Developer V9.5:
Source code analysis with Code Review. With Code Review, you can create configurations
of coding rules for EGL source code. You can then run the configurations to check the
source code for consistency with the rules.
Rich UI enhancements:
– Rich UI widget projects update
By default, the following Rich UI system projects are in use:
• For EGL widgets that are not based on Dojo: com.ibm.egl.rui_4.3.2
• For EGL Dojo widgets: com.ibm.egl.rui.dojo.widgets_2.3.0
• For EGL Dojo samples: com.ibm.egl.rui.dojo.samples_2.3.0
• For the local Dojo runtime access: com.ibm.egl.rui.dojo.runtime.local_1.10.4
Chapter 9. Application development 453
– DojoUploader Widget
DojoUploader widget is a new widget in Rational Business Developer V9.5. You can
use it to upload files from the client side to the server.
– maxHeight property for DojoFilteringSelect
maxHeight is a new property for the DojoFilteringSelect widget to specify the max
height of its drop-down view.
– Support of XulRunner in 64-bit Windows
Xulrunner for Windows 64-bit is supported as the visual editor render engine in
Rational Business Developer V9.5.
Mobile enhancements:
– EGL Cordova library and tools
Rational Business Developer introduces a new EGL Cordova programming model in
Version 9.5. You can develop, test, debug, and deploy hybrid mobile applications with
this new library and tool set. You can learn how to develop with the EGL Cordova
library and look up the EGL Cordova library API.
– EGL Dojo Mobile widgets
By default, the mobile widgets in use are updated to Version 1.4.0.
More properties, such as isLongList and isFilteredList, are added to the
DojoMobileList widget to provide a performance boost when processing long lists or
using filters for a list.
More widgets, such as DojoMobileAccordion, DojoMobileAccordionPane,
DojoMobileContentPane, DojoMobileScrollablePane, and DojoMobileSimpleDialog,
are added to provide more container and layout capability.
Service enhancements:
– SOAP V1.2 client support in JAX-WS
Rational Business Developer V9.5 supports invoking third-party web services that use
SOAP V1.2 bindings. You must switch the service run time to JAX-WS when calling a
SOAP V1.2 web service.
– Unwrapped SOAP Service support
Rational Business Developer V9.5 supports invoking third-party web services that
provide document/literal unwrapped style WSDL files. You must make sure that the
service run time is JAX-RPC when calling a web service that is described by a
document/literal unwrapped style WSDL file.
– Ant task egl.generateWSDL
A new Ant task named egl.generateWSDL was introduced to enable generation of the
WSDL file from an EGL service file through Ant.
New annotation isRemoved. The isRemoved annotation is a new annotation in Rational
Business Developer V9.5. You can use it to logically remove any of your own EGL parts or
types such as libraries, services, external types, records, or variables so that usage of
these display as an error in the IDE.
454 IBM i 7.2 Technical Overview with Technology Refresh Updates
New EGL generation time options:
– genXSDFile
The genXSDFile build descriptor option specifies whether an XML schema definition
(XSD) side file is created for called programs with passed parameters. This option
creates the XSD file, which can be used as input to enable testing with the Rational
Virtualization Server.
– minSubstringLength
The minSubstringLength build descriptor option specifies the smallest length that is
allowed for a substring move before an IndexOutOfBoundsException is thrown.
– ADDITIONALUSERFILES
The ADDITIONALUSERFILES parameter is a new generation symbolic parameter that
identifies additional files to be added to the build plan dependency list. This allows
additional user files to be processed and uploaded to a host machine during generation
of COBOL.
– CICS channels with J2C connections
You can now use CICS Channels with CICS J2C connections. In your linkage options,
set parmForm to CHANNEL and remoteComType to CICSJ2C.
– New Resource Association Property includeRecordLengthField
The property specifies whether to also write the Record Length field for variable-length
sequential records when generating Java from EGL source.
New EGL preferences:
– Delete generated files during project clean
You can select this check box to delete all files (except the properties files) and any
resulting empty directories from the EGLGen/JavaSource directory during a project
clean.
– Search EGLARs for details
You can select this check box to obtain function and variable descriptions from EGL
editor when content assist is used.
– Show advanced hover details
You can select this check box to display extensive hover details when using the
mouse-over function during an editor session for EGL source when content assist is
used.
New environment variable: VSECON / Changes to VSE Build Server.
VSE Build Server now uses the environment variable VSECON to locate the VSE
Connector Client. This variable should be set to the installation directory of the VSE
Connector Client, or a directory containing both VSEConnector.jar and cci.jar. You no
longer need to copy these files into the distributed build plug-in directory.
Debugger enhancement: EGL Debug Support for the Liberty Profile. The ability to debug
EGL services, web transactions, and UI programs when using the Liberty Profile was
added.
Chapter 9. Application development 455
9.3.4 IBM Rational Team Concert for i
IBM Rational Team Concert, which is part of Rational Collaboration Lifecycle Management
(CLM) and Rational Systems and Software Engineering, is a team collaboration tool that is
built on the IBM Jazz™ technology platform. Rational Team Concert uses the Change and
Configuration Management (CCM) application to provide features that integrate development
project tasks, including iteration planning, process definition, change management, defect
tracking, source control, build automation, and reporting.
The current version of Rational Team Concert running on IBM i is V6.0.
Rational Team Concert provides the following capabilities:
An integrated set of collaborative software delivery tools for IBM i development, including
source control, change management, builds, process management, and governance
Integration with Rational Developer for i to enable team capabilities for native IBM
applications
Specialized support for source control, change management, and builds of traditional
language artifacts, such as RPG and COBOL
Support for multitier software development and application modernization efforts by using
RPG, COBOL, PHP, Java, and others
Supports the IBM i native library file system and Integrated File System (IFS)
IBM i artifact builds, including RPG, COBOL, CL, and Java
Build agent, which runs natively on the IBM i operating system (runs IBM i commands and
call programs)
Native hosting of the IBM Jazz Team Server on IBM i
Rational Team Concert consists of client and server components. To use Rational Team
Concert functions for developing IBM i applications, the Rational Team Concert client must be
installed on a workstation with Rational Developer for i. Rational Team Concert server
components are supported on several platforms, including IBM i, AIX, z/OS, Solaris, Red Hat
(RHEL) and SUSE (SLES) Linux distributions, and Windows Server.
Supported operating systems versions and limitations are described in the Jazz Community
Site by Rational Team Concert version. For example, the system requirements of Rational
Team Concert V6.0 are described at the following website:
https://jazz.net/wiki/bin/view/Deployment/CLMSystemRequirements60
What is new in the current version of Rational Team Concert
New functions in each Rational Team Concert version and release are listed at the Jazz
Community Site. For example, here is the website for Rational Team Concert V5.0.1, which is
the current version of Rational Team Concert as of October 2014:
https://jazz.net/downloads/jazz-foundation/releases/6.0?p=news
For more information about Rational Team Concert, see the following website:
https://jazz.net/products/rational-team-concert/
You can find more information about Rational Team Concert in IBM Knowledge Center:
https://www.ibm.com/support/knowledgecenter/SSCP65_6.0.0/com.ibm.rational.clm.doc/
helpindex_clm.html
456 IBM i 7.2 Technical Overview with Technology Refresh Updates
Finally, see Modernizing IBM i Applications from the Database up to the User Interface and
Everything in Between, SG24-8185.
9.3.5 IBM Rational Host Access Transformation Services
Rational Host Access Transformation Services (HATS) is a tool that you can use to transform
applications that use text-based 5250 user interfaces in to web pages, that is, you can create
a web application from an existing 5250 application without touching the source code.
Rational HATS can connect to IBM Mainframe 3270 and general UNIX VTY panels, run
macros there, gather the data, and present data from multiple systems in one single web
page.
Rational HATS general description
The Rational HATS tool is based on the Eclipse environment. The current version, which is
Version 9.0, uses Eclipse 4.2.2.
As a prerequisite for performing development activity, Rational HATS needs one of the
following Rational products:
Rational Developer for i V9.0
Rational Business Developer V9.0
Rational Application Developer for WebSphere Software V9.0
Rational Software Architect for WebSphere Software V9.0
Rational Developer for AIX and Linux V9.0
Here are the supported runtime Java application servers:
IBM i - Release Overview V7.1 and future modification levels and their fix packs
IBM i - Release Overview V6.1 and future modification levels and their fix packs
IBM i - Release Overview V5.4 and future modification levels and their fix packs
Apache Geronimo 2.2.1 and future modification levels and fix packs
Apache Geronimo 2.1.7 and future modification levels and fix packs
WebSphere Application Server: Different versions of Express/Base/Network Deployment
editions, from Version 7.0 to the latest, which is Version 8.5.5
Oracle WebLogic server 12c (12.1.1) and future modification levels and their fix packs
Note: Any of the WebSphere, WebLogic, and Apache Geronimo technologies can run on a
different platform from where they are supported (IBM i is not mandatory). These servers
then connect by using telnet or secure telnet protocol to the IBM i server where the original
5250 application runs.
Rational HATS V9.0 can create two types of clients:
A web-based one running in a web browser
A client/server-based client running either in IBM Lotus Notes®, a Lotus Expeditor
environment, or in an Eclipse SDK environment
Here are the supported web browsers:
Mozilla Firefox
Android
Google Chrome
Chapter 9. Application development 457
Apple Safari
Apple Safari on iOS
Microsoft Internet Explorer
Microsoft Internet Explorer mobile browser
Konqueror
Opera
Rational HATS can also create portlets when it is used with Rational Application Developer for
WebSphere Software. It supports different IBM WebSphere Portal Server Editions, from
Version 7.0 to Version 8.0.
For detailed system requirements and possible limitations, see the following website:
http://www.ibm.com/support/docview.wss?uid=swg27011794
Rational HATS basic functions
Rational HATS transforms traditional text-based interfaces, such as 3270 and 5250
green-screen applications, into web, portlet, rich-client, or mobile device user interfaces. It
also extends 3270, 5250, and virtual terminal (VT) applications as standard web services.
With Rational HATS, you can easily convert traditional text-based host application panels to
GUIs.
Rational HATS is available in the following packages:
Rational HATS for Multiplatforms and HATS for Linux on IBM System z®
Rational HATS for 5250 Applications on Multiplatforms
Rational HATS for 5250 Applications on i5/OS
Note: Rational HATS for Multiplatforms can create applications by using IBM i 5250, IBM
Mainframe 3270, and UNIX VT-based panels (VT is only for capturing data, not panels).
Rational HATS for 5250 can use only IBM i 5250 panels.
Rational HATS for Multiplatforms and Rational HATS for 5250 Applications on
Multiplatforms can use any supported HTTP server on any supported Java application
server (see “Rational HATS general description” on page 457). Rational HATS for 5250
Applications on i5/OS can have only a Java application server run time on IBM i.
The Rational HATS product provides both a Rational HATS Toolkit (Windows Eclipse-based
plug-in for development of Rational HATS applications) and a Rational HATS run time. The
Rational HATS Toolkit can be downloaded for free from the Rational HATS product website,
found at:
http://www.ibm.com/developerworks/downloads/ws/whats/
Using Rational HATS, you can reuse your existing assets in the following innovative ways:
Terminal applications
– Transforms the user interface of your 3270 and 5250 green-screen applications.
– Allows tunable default rendering of all non-customized panels of the application.
– Transforms specific panels by using panel customizations and transformations.
– Transforms terminal application components, such as function keys and menu items,
into intuitive links, buttons, or text with images.
458 IBM i 7.2 Technical Overview with Technology Refresh Updates
Web services
– Extends 3270, 5250, and VT application core business logic as web services or
JavaBeans.
– Captures panel flows, inputs, and outputs with a wizard-based macro recorder. You can
edit what is captured by using the Visual Macro Editor, and create integration objects
and web services from the panel flows.
– Reuses terminal application business logic in new business processes and
applications.
Customization
– Provides customizable workflow and application navigation.
– Rational HATS simplifies panel navigation with macros and panel combinations.
– Uses global variables to store data, pre-fill drop-down menus or windows, and inputs
information for the user.
– Can transform a text-based user interface with a rich set of GUI widgets, such as
drop-down menus, calendars, tables, windows, and radio buttons.
– Using business logic, Rational HATS augments terminal applications by aggregating
terminal application data with other data sources.
Rational HATS Toolkit
– Provides wizard-based visual development, including visual page design and macro
editing.
– Works with a supported Rational IDE environment, such as Rational Application
Developer for WebSphere Software, Rational Business Developer, or Rational
Developer for i V9.0 + Modernization Tools, EGL Edition.
– Provides access to standard Eclipse features, such as Java development tools.
– Features a wizard-based development process for creating Rational HATS
applications.
Deployments
– Routes applications to WebSphere Application Server and WebSphere Portal Server,
and a number of devices and clients.
– Creates standard web applications for deployment to WebSphere Application Server.
– Customizes portlets with the Rational HATS Toolkit for deployment to WebSphere
Portal Server.
– Optimizes web applications for mobile devices running Apple iOS or Microsoft
Windows Mobile.
– Creates a standard Eclipse rich client application for deployment to IBM Lotus Notes,
Lotus Expeditor, or Eclipse Rich Client Platform.
For more information about the Rational HATS product, see the following websites:
Rational HATS product website:
http://www.ibm.com/software/products/us/en/rhats
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/api/redirect/hatshelp/v90/index.jsp
Chapter 9. Application development 459
9.3.6 IBM Rational Application Management Toolset for i
Rational Application Management Toolset for i provides IBM i system administrators and other
advanced users with a lightweight set of tools for the common tasks of working with library file
system objects and for creating and maintaining Command Language (CL) programs.
Application Management Toolset for i is a subset of the Application Development Toolset
(ADTS), which is sold as part of WebSphere Development Studio for i V6.1 or as part of
Rational Development Studio for i V7.1. Two of the key components of ADTS are
Programming Development Manager (PDM) and Source Entry Utility (SEU).
In Version 7.2, the original product 5761-AMT was migrated to product 5770-AMT.
The new Application Management Toolset for i includes these two components, in modified
form, as shown in Figure 9-15.
Application Development
ToolSet (ADTS)
Language Editor - CL Application Management
Language Editor - COBOL ToolSet (AMTS)
Language Editor - RPG SEU - Language Editor - CL
Language Editor - DDS Programming Development Manager
Programming Development Manager
Interactive Source Debug
Screen Design Aid
Data File Utility
Character Generator Utility
Advanced Printer Function
File Compare and Merge Utility
Figure 9-15 Application Management Toolset for i includes modified components of ADTS
The version of SEU that is included in Application Management Toolset for i supports only
editing of the CL source. It does not support editing of source members that are written in
other languages, such as RPG, COBOL, C, C++, or DDS. Like SEU, this editor provides
language-sensitive features, such as syntax checking and prompting for CL source members.
Application Management Toolset for i supports the operating system member types CL,
CLLE, CLP, TXT, and CMD in the EDTCLU (same as STRSEU) CL command.
The version of PDM that is included in Application Management Toolset for i can be used to
browse, move, filter, and manipulate objects of any type, but it enables only software
development options (such as Edit and Compile) for CL objects.
Application Management Toolset for i supports the following functions from PDM:
All the menu functions of STRPDM (new CL command STRAMT)
All the functions of WRKLIBPDM (new CL command WRKLIBAMT)
460 IBM i 7.2 Technical Overview with Technology Refresh Updates
All the functions of WRKOBJPDM (new CL command WRKOBJAMT), including FNDSTRPDM (new
CL command FNDSTRAMT), except for the following functions:
– No option 18 to call DFU.
– No option 34 to call ISDB.
– No option 54 to call CMPPFM.
All the functions of WRKMBRPDM (new CL command WRKMBRAMT), including FNDSTRPDM (new
CL command FNDSTRAMT), with the following exceptions:
– Option 2 (Edit) uses the new command EDTCLU, which supports only the CL, CLLE,
CLP, TXT, and CMD member types.
– No option 17 to call SDA.
– No option 19 to call RLU.
– No option 54 to call CMPPFM.
– No option 55 to call MRGSRC.
None of the other components from ADTS are included with Rational Application
Management Toolset for i.
Rational Application Management Toolset for i licensing
IBM Rational Application Management Toolset for i V7.2 (5770-AMT) is licensed per
processor, for unlimited usage on that processor by any number of persons. The license is
priced according to the software tier of the machine on which Rational Application
Management Toolset for i is used.
Like WebSphere Development Studio for i and Rational Development Studio for i, ongoing
maintenance and support costs for Rational Application Management Toolset for i are
included in the IBM i system Software Maintenance agreement (SWMA).
Rational Application Management Toolset for i requirements
Here are the Rational Application Management Toolset for i requirements:
Hardware requirements:
IBM Rational Application Management Toolset for i V6.1 supports all the hardware models
that support IBM i 6.1 and IBM i 7.1.
Software requirements:
Rational Application Management Toolset for i V6.1 supports IBM i 7.2.
Chapter 9. Application development 461
Accessing Rational Application Management Toolset for i
The main menu for Rational Application Management Toolset for i (AMT) (Figure 9-16) can be
accessed by running STRAMT.
Application Management Toolkit (AMT)
Select one of the following:
1. Work with libraries
2. Work with objects
3. Work with members
9. Work with user-defined options
Selection or command
===>
F3=Exit F4=Prompt F9=Retrieve F10=Command entry
F12=Cancel F18=Change defaults
Figure 9-16 Main menu for Rational Application Management Toolkit for i
9.3.7 ARCAD Pack for Rational
ARCAD Pack for Rational provides modern development enhancements to Rational Team
Concert and Rational Developer for i. Designed to complement these Rational products,
ARCAD Pack provides a modern collaborative development environment, supporting both
agile and traditional methods. ARCAD Pack for Rational uses deep dependency analysis to
provide audit, impact analysis, and intelligent build and deployment capabilities, and also
allows RPG code to be converted to the latest free-format RPG specifications.
ARCAD Pack for Rational helps IBM i development teams deliver high-quality software faster
based on six main components:
ARCAD-Observer
ARCAD-Observer brings easy-to-use application intelligence for maintaining and
transferring knowledge of existing systems. ARCAD-Observer references all
dependencies between applications and components down to the field and source line
level, whatever language is used. You can use this solution to analyze the information flow
across processes, produce data models, perform cross-platform impact analysis, and
quickly identify business rules that are contained in the code. The built-in editor displays
information as graphics that can be enhanced and included in documentation.
ARCAD-Builder
ARCAD-Builder automates 100% of the build process for any type of IBM i component.
Executable code is re-created without any manual intervention and ensures that there is
no regression.
ARCAD-Deliver
ARCAD-Deliver coordinates deployment of all platform components in a single transfer
operation. With this solution, you can manage a deployment process from a central
console and deploy any type of files to any number of target servers that run IBM i, AIX,
UNIX, Linux, and Windows operating systems.
462 IBM i 7.2 Technical Overview with Technology Refresh Updates
ARCAD-Audit
ARCAD-Audit provides IBM i code audit and restructuring. ARCAD-Audit identifies the
following items:
– Multiple copies of the same code
– Which objects are used in production
– Source without objects
– Objects without source
– A source with a date later than the object
– Unused objects
ARCAD-Converter
You can use ARCAD-Converter, which works as a plug-in of Rational Developer for i, to
convert fixed-form RPG sources to free-form RPG sources with the latest compiler specs.
This solution supports both on-demand (statement-by- statement) and bulk conversions to
accelerate the modernization of RPG code.
CASE and 4GL support
CASE and 4GL support allows CASE/4GL, such as CA 2E (Synon), JD Edwards (JDE),
LANSA, and Adeliathe, to be managed.
For more information about ARCAD Pack for Rational, see Modernizing IBM i Applications
from the Database up to the User Interface and Everything in Between, SG24-8185, and the
following website:
http://arcadsoftware.com/
9.4 Portable Applications Solutions Environment
There are two new enhancements for PASE:
PASE now supports programs that are compiled for AIX 7.1.
A new version of OpenSSL 1.0.1g is included in IBM Portable Utilities for i 7.2 (5733-SC1).
9.5 Ruby on Rails for i
PowerRuby is a freely available and commercially supported port of the Ruby language. It is a
web application development framework (Rails) that is written in the Ruby language. This
product is available for download from the following website:
http://powerruby.com/
9.6 Zend and PHP on IBM i
PHP Hypertext Preprocessor (PHP) is an open source scripting language that is designed for
web application development and enables simple scripting.
PHP applications are easily integrated with data in IBM DB2 for i, RPG, COBOL, and other
business applications that are running on IBM i.
Chapter 9. Application development 463
PHP is used for content management, customer relationship management, database access,
e-commerce, forums, blogs, wikis, and other web-based applications.
Zend and IBM worked together to deliver Zend Solutions for IBM i, a complete PHP
development and production environment solution for the IBM i platform.
Here are the Zend Solutions for IBM i:
Zend Server Basic Edition for IBM i (1-year Basic Support from Zend)
Zend Server Professional Edition for IBM i
Zend Server Enterprise Edition for IBM i
Zend Studio for IBM i (1 year of Basic Support from Zend)
Zend DBi
Tip: Use always the distribution that is downloaded from Zend website. It contains the
most up-to-date version of Zend Server Community Edition.
Zend Server Version for IBM i version 8 and 8.5 supports IBM i 7.2:
http://files.zend.com/help/Zend-Server/content/system_requirements.htm
For more information about Zend products, go to the Zend website:
http://www.zend.com/en/solutions/modernize-ibm-i
Figure 9-17 shows the Zend application development and deployment architecture for IBM i.
Figure 9-17 Zend PHP application development and deployment architecture for IBM i
464 IBM i 7.2 Technical Overview with Technology Refresh Updates
The following topics are covered in this section:
9.6.1, “What is new in Zend Server V8 and V8.5” on page 465
9.6.2, “Zend Server Basic Edition for IBM i” on page 466
9.6.3, “Zend Server Professional and Enterprise Edition for IBM i” on page 466
9.6.4, “Zend Studio for IBM i” on page 466
9.6.5, “Zend DBi and PHP database support” on page 468
9.6.1 What is new in Zend Server V8 and V8.5
Zend Server V8 contains the following new functions:
Delivers in-context insight into your PHP applications
Provides extra specific details for applications such as Magento, Drupal, and Wordpress,
and frameworks such as Zend Framework, Symfony, and Laravel
Enables debugging of mobile and web services requests originating from a browser,
mobile, or device-to-device communications
Provides URL insight on your slowest and worst-performing pages
Other new features and enhancements include:
– PHP 5.5 and 5.6 support
– Apigility included in Zend Server Support SLA
– A new SDK library for all Zend Server APIs and command-line tools
Zend Server V8.5 contains the following new functions:
The Gallery of community-driven add-ons aggregates and organizes all Z-Ray extensions
and Zend Server plug-ins in an easy-to-use interface. This release introduces new
plug-ins for Joomla, Doctrine2, Redis, OPcache, MariaDB, and LoS Modules, in addition
to plug-ins for WordPress, Drupal, Magento, Zend Framework, Apigility, Laravel, and
Symfony.
Enhanced Job Queue with support for multiple-queues management. You can schedule
jobs based on time, priority, and even dependencies. You can defer jobs or run periodically
and run in parallel. The management GUI tracks the execution of jobs, their status,
execution time, and output. Unlike cron jobs, Job Queue allows asynchronous execution,
deferred jobs, and more. Multiple-queues management facilitates the creation and
management of groups of jobs that are functionally or logically related.
The Live Support function makes it easier to troubleshoot problems with live users in real
time, addressing issues that are not otherwise visible or reproducible. A specific user’s
session can be Z-Ray enabled, tracked, and analyzed without exposing any sensitive
information. The combination of these two features allows developers to get deep insights
into a specific user’s requests without affecting the overall server performance and without
disclosing sensitive information.
Redesigned UI for a superior user experience. Includes a new menu structure, and a more
modern look and feel.
A built-in understanding of application request routing logic aggregates monitoring events,
and displays improved results for URLs listed within URL Insight.
Chapter 9. Application development 465
Enhanced Xdebug support. You can now easily select your preferred debugger and
configure specific connection settings per debugger (Xdebug and Zend Debugger).
Other new features and enhancements include:
– Notifications about the environment are displayed directly in Z-Ray.
– Improved performance and lower memory consumption.
– Increased granularity control of the data that is collected by Z-Ray.
– New plug-ins display with multiple panels now consolidated under one top-level panel.
– New capability to perform server-side actions from Z-Ray.
– New added support for application independent plug-ins, such as Amazon EC2.
– New support for Microsoft Azure.
9.6.2 Zend Server Basic Edition for IBM i
Zend Server Basic Edition is a fully tested and enhanced version of open source PHP. It
provides the PHP run time and is packaged to make the software installation easier and faster
by using the instant PHP setup. It is enhanced to take advantage of IBM i specific resources
and capabilities.
Zend Server Basic Edition for IBM i is a lightweight version of Zend Server, and replaces
Zend Community Edition. This edition has a minimal feature set for running your PHP
applications.
9.6.3 Zend Server Professional and Enterprise Edition for IBM i
Zend Server Professional and Enterprise Edition is a robust PHP production environment that
helps ensure that applications that are written in PHP run smoothly at all time. It is designed
for IT personnel and businesses that require commercial-grade web applications in highly
reliable production environments.
Zend Server replaces the Zend platform. It offers all the features that are provided in Zend
Server Basic Edition for IBM i.
The following website shows a comparison between the features that are offered in Zend
Server Basic Edition for IBM i and Zend Server Professional and Enterprise for IBM i:
http://www.zend.com/en/products/server/editions-ibm-i-production-new
9.6.4 Zend Studio for IBM i
Zend Studio for IBM i is an industry-leading Eclipse-based PHP integrated development
environment (IDE) for professional developers. It includes all the development components
that are necessary for the full PHP application lifecycle and simplifies complex projects. It
supports development for mobile devices and for using PHP REST XML Web Services.
466 IBM i 7.2 Technical Overview with Technology Refresh Updates
Zend Studio for IBM i V12.5 includes the following features and enhancements:
The new version includes a whole new way to set up remote debugging. If you have
multiple servers that are configured locally, in the cloud, or remotely on an intranet, you
can configure the debugger separately for each particular server and define the
connection settings through the server creation and edit wizard.
There is support for PHPUnit 4 for effective integration testing and simplified unit tests to
make sure that your code is stable and functioning correctly.
There is support for the latest version of Apigility so you can build, test, and debug your
APIs more efficiently.
There is content assist for Magento and Doctrine, Angular JS Explorer View, Markdown
Editor, and GitHubMylyn Integration that allows you to use a GitHub repository to store
and retrieve Mylyn tasks. Additional improvements include upgraded installation packages
with built-in JRE so you do not have to preinstall it, the font size plug-in, and many
performance and quality improvements.
You can develop client-side applications with AngularJS, which is the open source web
application framework from Google. Zend Studio takes full advantage of the framework
client-side model-view-controller (MVC) architecture.
You can create hybrid mobile applications with the integrated Ionic framework. Ionic offers
a library of mobile-optimized HTML, CSS, and JS components, gestures, and tools for
building highly interactive apps.
You can code mobile applications all in HTML/CSS/JS from within Studio with Cordova.
Apache Cordova is a set of device APIs that allow a mobile application developer to
access native device functions from JavaScript.
You can get full support for PHP 5.6. Zend Studio takes full advantage of the new PHP
features, such as constant scalar expressions, variadic functions, phpdbg, large file
uploads, gost-crypto hash algorithm, and more.
You can discover hidden bugs and performance issues by using your browser and then
open a debugging or profiling session directly from Z-Ray to fix the uncovered issues by
using Zend Studio. Leverage Z-Ray Live! to get information about your application
performance from mobile devices and address them with Studio. With Z-Ray Live!, you
can debug mobile and web services API calls with Z-Ray Live! You have all the
advantages of Z-Ray for debugging requests originating from native mobile clients and
other non-browser sources.
Manage easily all your frameworks, libraries, assets, and utilities with the integrated Bower
framework. Bower works by fetching and installing packages from all over, taking care of
hunting, finding, downloading, and saving the items that you are looking for. It provides
hooks to facilitate using packages in your tools and workflow. Bower is optimized for the
front end. It uses a flat dependency tree, requiring only one version for each package,
reducing page load to a minimum.
Zend Studio lets you deploy your PHP application on any server. In addition, you can take
full advantage of the cloud with the Amazon AWS Zend certified PHP stack offering, which
is an instantly available, consistent PHP environment that provides a cloud-based Zend
Server. Zend Studio also works with other leading cloud platforms, such as IBM Bluemix
and SoftLayer®, Red Hat OpenShift, and Microsoft Azure. You can easily deploy your PHP
applications on these public or private platforms by using the built-in cloud deployment
integration function.
Chapter 9. Application development 467
You can extend PHP code to access IBM i resources. The newly integrated Toolkit is
designed to work either statelessly or statefully. Its stateful abilities enable developers to
call RPG/COBOL/CL programs and APIs while retaining cursors, library lists, the QTEMP
library, and more, to enable reuse of existing programs for web applications.
Zend Studio is built on top of the Eclipse 4 Luna platform and benefits from many new
enhancements that are included in the new platform.
Zend Studio for IBM i V13 includes the following features and enhancements:
Zend Studio ships with the most complete PHP 7 support to date. It supports the newest
scripting concepts in PHP 7, such as Return Type Declarations, Anonymous Classes, the
Spaceship Operator, Group Use Declarations, Scalar Type Hints, and more.
Zend Studio includes support for PHP 7 Express. The new built-in migration tool assistant
makes the transition to PHP 7 easier and faster. This new tool scans existing projects for
compatibility issues such as - removed and deprecated usages, or new reserved words in
PHP 7. It points developers to the exact line of code where the issue is and suggests quick
fixes.
Zend Studio includes new Docker tools that support the management of Docker Images
and Containers. It integrates with existing PHP tools, which allows running, testing, and
debugging PHP applications on Docker Containers with a PHP stack.
Zend Studio supports EGit 4.0 tools. One of the highlights in this new version is the
support for the Git Flow branching model, which is used among PHP developers.
This new version of Zend Studio is based on the latest version of Eclipse Mars 4.5.1.
Developers already using Eclipse as a development platform will welcome the addition of
a dedicated Zend Studio 13 plug-in that can be installed directly from within their
development environment.
A new debugging workflow design makes debugging easier. Zend Studio automatically
detects the installed debugger for local and remote servers and helps configure the client
IPs for debugging. Redundant client IPs are detected and removed while invalid or
inaccessible IPs are reported. When adding a PHP server, Zend Studio automatically
provides the “best match” client IP. Also, Zend Debugger tunneling configuration can now
be set up in debugger client settings for a a PHP server.
For more information about the enhancement of Zend Studio for IBM i, see the following Zend
website:
http://www.zend.com/en/solutions/modernize-ibm-i
9.6.5 Zend DBi and PHP database support
The Zend DBi product provides MySQL implementation for IBM i. DB2 Storage Engine
enables MySQL data storage in DB2.
Zend DBi is supported only for IBM i. 6.1 and 7.1.
Zend DBi supports open source-based applications. An application uses MySQL data
commands against Zend DBi or a MySQL database, the storage engine translates the
commands, and then passes the data to DB2 for i. With this solution, there is only one
database to manage, back up, and protect.
Figure 9-18 on page 469 shows an overview of Zend DBi and MySQL using the DB2 Storage
engine.
468 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 9-18 Zend DBi and MySQL using a DB2 Storage engine
PHP now supports the following database connectivity:
Local DB support for MySQL and DB2
Remote DB support for MySQL and Oracle
For more information about Zend products for IBM i, see the following websites:
Zend and IBM i:
http://www.ibm.com/systems/power/software/i/php/index.html
Zend Studio:
http://www.zend.com/en/products/studio/
Zend DBi:
http://www.zend.com/en/solutions/modernize-ibm-i
9.7 Mobile application development for IBM i
Mobile support is described in several chapters and sections in this book. If we speak about
mobile support, we speak either about system management or mobile support in application
development tools that enables the development of mobile applications in connection with
IBM i. The following products now support mobile access application development:
RPG Open Access
XML Services
JTOpen Lite
PHP - Zend Server for IBM i and Zend Studio
IBM Connections™ 5.0
IBM Notes Traveler 9.0.1
IBM Mobile Database
DB2 WebQuery
Rational HATS
IBM i Mobile Access enables IBM i users to access IBM i resources from web-enabled mobile
devices in a mobile-friendly view by using a mobile web browser. For more information about
this topic, see 2.2.4, “IBM i Mobile Access” on page 152.
Chapter 9. Application development 469
9.8 Open Source for IBM i
Open Source for IBM i (5773OPS) is new license program option. It provides many of the
open source technologies for IBM i. The world of open source continues to rapidly evolve and
change. Recently, there were many Open Source Technologies added to IBM i. This section
explains the enhancements of Open Source for IBM i.
The following topics are covered in this section:
9.8.1, “Node.js” on page 470
9.8.2, “Python” on page 471
9.8.3, “GNU Compiler Collection” on page 472
You can obtain new Licensed Program 5770OPS as ISO images from the IBM Entitled
Software Support (ESS) website. The 5770OPS package is titled
F_MLTI_NLV_110_IBM_i_Open_Source_Solutions. You can download it from the 5770SS1
section.
The ESS website is at:
https://www.ibm.com/servers/eserver/ess/index.wss
9.8.1 Node.js
Node.js is an open source project based on Google Chrome V8 Engine. It provides a platform
for server-side JavaScript and networking applications. Node.js applications are written in
JavaScript, but run without browsers. The event-driven, non-blocking I/O model makes it
lightweight and efficient to use. It also provides several built-in modules to simplify
programming, especially for networking applications. There are many third-party modules that
can be easily installed with the built-in npm (node packaged modules) tool to extend Node.js.
Figure 9-19 shows an overview of Node.js converting JavaScript code into machine code.
JavaScript Code
Node.js
Machine Code
Figure 9-19 Node.js engine converts the JavaScript into machine code
Node.js is now delivered as Open Source for IBM i (5773OPS) Option1. This new offering
includes the following functions:
DB2 for i access library
Node.js toolkit for IBM i
470 IBM i 7.2 Technical Overview with Technology Refresh Updates
Licensed program prerequisites
To install Node.js on IBM i V7.2, the following licensed programs are required:
5770SS1 Option 33, Portable Application Solutions Environment
5733SC1 Option 1, OpenSSH, OpenSSL, zlib
5770DG1 *BASE, IBM HTTP Server for
5733OPS Option 1, Node.js run time for IBM i
PTF prerequisites
To install Node.js on IBM i V7.2, the following PTFs are required:
SI55606 for 5733SC1
SI55747, SI55763 for 5733OPS
SF99713 level 6: HTTP Server Group PTF
Note: Upgrade to the latest HTTP Server PTF Group level because all updates for
5733OPS are provided in the HTTP Server Group PTF.
For more information about installing and managing Node.js, see IBM developerWorks:
https://www.ibm.com/developerworks/ibmi/library/i-native-js-app-ibmi-with-nodejs/
http://www.ibm.com/support/docview.wss?uid=nas8N1020583
DB2 for i access library
The DB2 for i access library is a JavaScript API for DB2 database manipulation on IBM i. It
provides JavaScript interfaces that correspond to the DB2 for i SQL call-level interface (CLI).
DB2 for i access library is shipped with Node.js for IBM. The DB2 for i access library is in the
following directory:
/QOpenSys/QIBM/ProdData/Node/os400/db2i/
For more information about using the DB2 for i access library, see IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/DB2%20for%20i%20access%20APIs
Node.js Toolkit for IBM i
The Node.js Toolkit for IBM i API set is based on XMLSERVICE to easily access IBM i native
objects, such as PTF information, data queues, and programs. Node.js Toolkit for IBM i is
shipped with Node.js for IBM i. Node.js Toolkit for IBM i is in the following directory:
/QOpenSys/QIBM/ProdData/Node/os400/os400/
For more information about using the Node.js Toolkit for IBM i, see IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Toolkit%20for%20i%20APIs
9.8.2 Python
Python is now being delivered and packaged for IBM i. It is available as the Open Source for
IBM i (5773OPS) Option 2. Python is a high-level programming language. It is easily
extensible through the use of third-party packages and often allows powerful functions to be
written with few lines of code. Python caters to multiple programming styles (object-oriented,
procedural, and so on) and the code tends to be readable and maintainable.
Chapter 9. Application development 471
This Python offering contains the Python 3.4.2 run time, which installs to the following
directory:
/QOpenSys/QIBM/ProdData/OPS/Python3.4
Licensed program prerequisites
To install Python on IBM i V7.2, the following licensed programs are required:
5770SS1 Option 33, Portable Application Solutions Environment
5733SC1 Option 1, OpenSSH, OpenSSL, zlib
5733OPS Option 2, Python run time for IBM i
PTF prerequisites
To install Python on IBM i V7.2, the following PTFs are required:
SI57008 for 5733OPS (or its latest superseding PTF)
Latest PTFs for 5733SC1
SI57253 for using DB2 for i connector add-ons (or its latest superseding PTF)
SI57254 for using Toolkit for IBM i add-ons (or its latest superseding PTF)
SI57255 for using fastCGI gateway add-ons (or its latest superseding PTF)
SI57256 for using lightweight web framework add-ons (or its latest superseding PTF)
For more information about installing and managing Python, see IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Python
9.8.3 GNU Compiler Collection
The GNU Compiler Collection (GCC) and Open Source development toolkit is now delivered
as The Open Source for IBM i (5773-OPS) Option3. GCC compiler is a part of the Free
Software Foundation’s GNU Project. The GCC compiler supports many languages, such as
C, C++, and Java. Open source software is designed to be compiled by the GCC compiler;
the software does not always compile successfully under the XLC compiler. By using the
GCC compiler, you can get open source software to run on an IBM POWER® chip more
easily.
9.9 Samba on IBM i
The open source Samba package is now available for IBM i. File serving, something that has
been on IBM i for a long time, is provided with IBM i NetServer. IBM i NetServer has many
great features when it comes to file serving, although in some instances performance has
been an issue. Samba is a server that uses TCP/IP on IBM i to interact with Windows clients
or servers as through it is a Windows file and print server. Samba is not intended to be a full
replacement for file serving on IBM i, but rather give customers an additional option. For
example, Samba does not support Kerberos, automatic CCSID conversions, or integration
with IBM i auditing exit programs. For those features, IBM i NetServer is the preferred choice.
But, if you require just basic file serving with performance, then Samba might be the preferred
way for you.
PTF prerequisites
To install Samba on IBM i V7.2, you must install the SI52624 for 5770SS1 PRF (Cumulative
PTF C4101720 contains this fix).
472 IBM i 7.2 Technical Overview with Technology Refresh Updates
Installing this PTF places the Samba 3.6 package and installer archive file (samba.zip) into
the IFS directory. The package can then be extracted to the current directory for installation
by running it. To install Samba package on IBM i, run the following command from a PASE
command prompt:
jar xvf /QIBM/ProdData/OS/Samba.zip
For more information about installing and managing Samba on IBM i, see
IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/SAMBA%20on%20IBM%20i
Chapter 9. Application development 473
474 IBM i 7.2 Technical Overview with Technology Refresh Updates
10
Chapter 10. IBM i server functions
This chapter describes enhancements to the following IBM i server functions:
10.1, “IBM HTTP Server for i” on page 476
10.2, “IBM i Integrated Web Application and Web Services Server” on page 480
10.3, “IBM WebSphere Application Server” on page 484
10.4, “IBM Social Collaboration products” on page 487
10.5, “IBM Printing” on page 487
For more information about the IBM i 7.2 enhancements, see the IBM i Technology Updates
developerWorks wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20i%20Technology%20Updates
© Copyright IBM Corp. 2015, 2016. All rights reserved. 475
10.1 IBM HTTP Server for i
IBM HTTP Server for i (5770-DG1) provides the facility of web serving in IBM i. The
implementation of this HTTP server is based on open source server code that is provided by
the Apache Software Foundation. This section explains the enhancements of IBM HTTP
Server for i in IBM i 7.2.
10.1.1 Licensed program requirements
Here are the licensed program requirements for using IBM HTTP Server for i in IBM i 7.2:
Extended Base Directory Support (5770-SS1 Option 3)
Host Servers (5770-SS1 Option 12)
Qshell (5770-SS1 Option 30)
IBM Portable Application Solutions Environment for i (5770-SS1 Option 33)
IBM TCP/IP Connectivity Utilities for i (5770-TC1)
IBM Developer Kit for Java (5770-JV1 Option 11)
10.1.2 Upgraded to Apache 2.4.12
The IBM HTTP Server Power by Apache is updated to Apache level 2.4.12, which includes
many new features, such as support for WebSocket. The Web Admin GUI is enhanced to
include a wizard for configuring SSL for Liberty-based servers, such as the IBM i Integrated
Application Server.
What is new in Apache 2.4.12
Apache 2.4.12 contains the following new functions:
Support for WebSocket.
Perl Compatible Regular Expressions (PCRE) regular expression is supported in the
configuration file.
A new module mod_proxy_wstunnel enables support for the tunneling of web socket
connections to a back-end web sockets server.
A new module mod_proxy_html enables an output filter to rewrite HTML links in a proxy
situation to ensure that the links work for users outside the proxy.
A new module mod_macro enables the specify macro in HTTP configurations.
Server Name Indication (SNI) implementation is optimized and enhancement.
HTTP Server prestart CGI support for IASP.
Enhancements for serviceability, displaying CGI job information, and thread IDs in log.
For more information about the update to IBM HTTP Server for i, see IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/News%20of%20Web%20Integration%20on%20IBM%20i
476 IBM i 7.2 Technical Overview with Technology Refresh Updates
What is WebSocket
WebSocket is developed as part of the HTML5 initiative JavaScript interface. It defines a
full-duplex, single-socket connection over the web between a browser and server. The
WebSocket standard simplifies much of the complexity around bidirectional web
communication and connection management. The WebSocket protocol is an independent
TCP-based protocol. Its only relationship to HTTP is that its handshake is interpreted by
HTTP servers as an Upgrade request. WebSocket makes more interaction between a
browser and a website possible, facilitating live content and the creation of real-time
applications.
Figure 10-1 shows the WebSocket architecture.
Traditional Web Application WebSocket
Browser(Client) Server Browser(Client) Server
request open socket
data
response data
request data
response close socket
Figure 10-1 Compare WebSocket and a traditional web application
For more information and examples about WebSocket, see the following website:
http://www.websocket.org/
IBM HTTP Server for i in IBM 7.2 is upgraded from Apache 2.2 (as in IBM i 7.1) to
Apache 2.4. Compared to Apache 2.2, this upgrade delivers significant core enhancements,
new features and modules, and configuration and access control changes. All current
Apache 2.4 security vulnerability issues are also fixed in IBM i 7.2.
Because IBM i 7.2 provides Apache 2.4, users are required to consider their web applications
before moving from an earlier release of IBM i to IBM i 7.2. For more information about the
HTTP server changes in IBM i 7.2, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaie/rzaiewhatsnew.htm
Configuration-related changes
There are some configuration-related changes in IBM i 7.2 that come with Apache 2.4. This
section explains those changes that might require users to change their configuration so that
they can continue to use IBM HTTP Server for i on IBM i 7.2.
Load balancing implementations moved to mod_proxy sub modules
All load balancing implementations have moved to individual, self-contained mod_proxy
submodules, such as mod_lbmethod_byrequests, mod_lbmethod_bybusyness, and
mod_lbmethod_by traffic. Its default value is byrequest. Users might need to load one of
these load balancing implementation methods that correspond to the configuration that is
used.
Chapter 10. IBM i server functions 477
DefaultType no longer has any effect
The DefaultType directive no longer has any effect other than to emit a warning if it is used
with any value other than none. For unknown file extensions, which are not declared in
/QIBM/UserData/HTTPA/conf/mime.types (for example, the .mbr files in QSYS file system),
HTTP server does not add a DefaultType (text/plain) in the response anymore. To display
these files correctly, users are now required to assign media types in IBM i 7.2, for example,
"AddType text/html .mbr.
Options directive default value is changed
The default value of Options directive was changed from All to FollowSymlinks. Users must
adjust their configuration because of this default value change.
Module mod_disk_cache is renamed
Module mod_disk_cache is renamed to mod_cache_disk. Users must replace LoadModule
disk_cache_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM with LoadModule
cache_disk_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM.
For more information about mod_cache_disk, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaie/rzaiemod_disk_cache.
htm
CacheEnable directive is changed
The second parameter to CacheEnable in mod_cache matches forward proxy content only if it
begins with the correct protocol. In IBM i 7.1 and earlier versions, a parameter of ‘/’ matched
all content. Specifying <protocol>:// for the second parameter caches forward proxy
content only from the default port of that protocol.
In IBM i 7.2, CacheEnable disk http:// now caches HTTP forward proxy content only from
port 80. Use CacheEnable disk http://*: instead to cache HTTP forward proxy content from
all ports.
FileETag default value is changed
The FileEtag default value in Apache 2.4 is changed to MTimeSize, without INode, which
exists in Apache 2.2.
Changes to mod_dav_fs
The format of DavLockDB in mod_dav_fs is changed for systems with inodes. The old
DavLockDB file must be deleted on upgrade to Apache 2.4.
The mod_deflate option skips the compression process
mod_deflate can skip the compression process if it knows that the size of the increase that is
added by the compression is larger than the data to be compressed.
KeepAlive value is changed
In previous releases, a KeepAlive value other than Off or 0 was treated as On. In Apache 2.4,
KeepAlive accepts a value of only On or Off.
The mod_log_config option matches the whole cookie name
In previous releases, ${cookie}C in mod_log_config matches any string. However, in Apache
2.4, ${cookie}C matches whole cookie names.
478 IBM i 7.2 Technical Overview with Technology Refresh Updates
Syntax changes in mod_filter
The FilterProvider syntax in mod_filter is changed and now uses a Boolean expression to
determine whether a filter is applied.
Changes to mod_include
mod_include has undergone the following changes:
The #if expr element now uses the new expression parser. The old syntax can be
restored with the new directive SSILegacyExprParser.
An SSI* configuration directive in directory scope no longer causes all other per-directory
SSI* directives to be reset to their default values.
The mod_autoindex option extracts titles and descriptions
mod_autoindex can extract titles and display a description for .xhtml files, which were
previously ignored.
For more information about changes in IBM i 7.2 regarding Apache 2.4, see IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaq9/rzaq9.pdf
For more information about the new Apache 2.4 modules compared to Apache 2.2, see the
Apache website developer website:
http://httpd.apache.org/docs/2.4/developer/new_api_2_4.html
For more information about IBM HTTP Server for i, see the IBM HTTP Server
developerWorks website:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/IBM%20HTTP%20Server%20Upgrading%20to%20Apache%202.4
10.1.3 IBM Web Administration for i for managing a WebSphere Application
Server installation
WebSphere Application Server V8.0 and later must be installed by using IBM Installation
Manager. As this tool does not have a GUI on the IBM i, IBM Web Administration for i in IBM i
7.2 (Web Admin) provides an easy-to-use GUI for managing the installation of WebSphere
Application Server.
From Web Admin in IBM i 7.2, users can easily install and uninstall programs, update fix
packs, apply interim fixes, and so on, by using simple wizards.
For more information about installing and managing a WebSphere Application Server
installation by using IBM Web Administration for i, see the IBM developerWorks website:
http://www.ibm.com/developerworks/ibmi/library/i-webSphere_spplication_server_inst
allation/
For more information about IBM HTTP Server for i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaie/rzaiemain.htm
For more information about electronic business and web serving in IBM i 7.2 by using IBM
HTTP Server for i, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgebus.htm
Chapter 10. IBM i server functions 479
10.2 IBM i Integrated Web Application and Web Services Server
The new IBM WebSphere Application Server Liberty Profile based IBM i Integrated Web
Application Server (IAS) and IBM i Integrated Web Services Server (IWS) are introduced in
IBM i 7.2. By using the IBM WebSphere Application Server Liberty Profile, benefits such as
the following ones are provided to IBM i Integrated Web Application Server and IBM i
Integrated Web Services Server environments:
Ability to ensure PCI Compliance by being able to obtain and apply patches against
security vulnerabilities, which are delivered as security updates for WebSphere web
containers
Easy to adopt new technologies, such as new Java virtual machines and a Web Services
runtime engine
Use common development tools, such as Rational Application Developer, for developing
applications that run on IAS
10.2.1 IBM i Integrated Web Application Server
Both IBM Lightweight Infrastructure (LWI) based IAS and IBM WebSphere Application Server
Liberty Profile based IAS work on IBM i 7.2. The version of LWI-based IAS is 8.1, and the
version of Liberty Profile based IAS is 8.5.
Important: LWI-based IAS V8.1 is used for existing IAS instance purposes only, so you
cannot create instances of LWI-based IAS on IBM i 7.2. Instead, you can create Liberty
Profile based IAS V8.5 instances, and you are encouraged to use Liberty Profile based IAS
V8.5 instead of LWI-based IAS V8.1. IBM provided IAS-based applications, such as DB2
Web Query for i (5733-WQX), IBM Application Runtime Expert for i (5733-ARE), and Web
Admin, are already moved to Liberty Profile based IAS.
Now you can obtain Liberty Profile based IAS V8.5.5 by applying the following HTTP Server
Group PTF levels:
IBM i 7.2: SF99713 level 9 or higher
IBM i 7.1: SF99368 level 35 or higher
IBM i 6.1: SF99115 level 45 or higher
Figure 10-2 on page 481 shows the Create Application Server wizard in IBM Web
Administration for i in IBM i 7.1 with TR8 timed HTTP Group PTFs.
480 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 10-2 Create Application Server wizard in IBM Web Administration for i in IBM i 7.1
In this wizard, you can choose the version of IAS, both V8.1 and V8.5. In IBM i 7.2, you can
create an IAS V8.5 instance only, as shown in Figure 10-3.
Figure 10-3 Create Application Server wizard in IBM Web Administration for i in IBM i 7.2
If you have any IAS V7.1 instances and are upgrading your IBM i to 7.2, these instances
automatically are upgraded to V8.1 instances, which is LWI-based IAS, during the upgrade to
IBM i 7.2.
Chapter 10. IBM i server functions 481
Note: You can continue to use IAS V8.1 instances and deploy your application on those
instances, but it is a preferred practice to migrate your applications to IAS V8.5 Liberty
Profile based instances because the LWI-based run time will be removed in a future
release. There is no automatic upgrade from IAS V8.1 to V8.5 because the run times are
based on different technologies.
Note: In August 2015, support for IAS V7.1 was withdrawn. IAS V7.1 continues to run on
IBM i V7.2 and previous releases, but if you encounter any problems, you cannot get any
support for IAS V7.1.
For more information about IBM i Integrated Web Application Server, see
IBM developerWorks:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20T
echnology%20Updates/page/Web%20Integration%20on%20i
10.2.2 IBM i Integrated Web Services Server
IBM WebSphere Application Server Liberty Profile based IBM i Integrated Web Services
Server (IWS) is introduced in IBM i 7.2 at Version 2.6. Because IWS V2.6 is powered by Java
API for RESTful Web Services (JAX-RS), IWS V2.6 supports REST services. Figure 10-4
shows a concept of IWS V2.6 REST services. IWS V2.6 is running on IAS V8.5 and sends
JSON REST packets to web service requesters.
Figure 10-4 Concept of IWS V2.6 powered by Liberty Profile and JAX-RS
IWS V1.5 is also available in IBM i 7.2, which is an LWI-based web services server. If you
have any existing IWS instances that are running with Version 1.3, you must upgrade those
instances to IWS V1.5 by using the upgrade wizard that is part of the IBM Web Administration
for i GUI. The wizard is shown in the navigation bar if the server is eligible to be upgraded.
Note: After upgrading to IWS V1.5, you can continue to use those IWS instances in IBM i
7.2, but it is a preferred practice to migrate to IWS V2.6 because the LWI-based runtime
and web services will be removed in a future release.
482 IBM i 7.2 Technical Overview with Technology Refresh Updates
In addition to REST support, the IWS V2.6 scripting is updated in the following ways:
The restoreWebServices.sh script is enhanced to enable the migration of web services
that are on an IWS server V1.5 to an IWS server that is based on Liberty. Users do not
have to go through the process of reinstalling the web services manually to a new IWS
server.
Note: When you move from IWS V1.5 to the newest version of IWS, Web Services
Description Language (WSDL) includes the following changes:
The schema namespace is different; only one SOAP version can be specified.
The URL endpoint is different.
You can use new Qshell scripts (saveWebServicesServer.sh and
restoreWebServicesServer.sh) to save IWS servers and restore the servers on another
Power Systems server running IBM i. This restoration includes the deployed web services.
It ensures that the corresponding back-end ILE programs are on the new system.
For more information about Integrated Web Services Server for IBM i, see the following
website:
http://www.ibm.com/systems/power/software/i/iws/index.html
For more information about the enhancements of IWS, see the developerWorks website:
https://ibm.biz/BdsRJ5
Integrated web services server for IBM i updates
In July 2015, a number of enhancements about IWS servers were released. The following
updates were provided:
Support for nested output arrays
Enabling improved processing of large output character fields
Preserving case sensitivity of identifiers
Preserving field ordering
Enabling of RESTful services to return user-defined media types
Allowing for new transport metadata values to be passed to a web service
Installing a web service script that is updated for SOAP services
Allowing Java based web services
PTF prerequisites
To get the IWS servers updates, you must apply the following HTTP Server Group PTFs:
IBM i 7.2: SF99713 level 9 or higher
IBM i 7.1: SF99368 level 35 or higher
IBM i 6.1: SF99115 level 45 or higher
Note: The above updates apply to IWS V2.6 or later, except for the install web service
enhancement, which applies to all version of IWS servers. In addition, you cannot get the
REST updates in IBM i V6.1 because IBM i V6.1 does not support REST services.
Chapter 10. IBM i server functions 483
For more information about IWS servers updates, see IBM developerWorks:
http://www.ibm.com/developerworks/ibmi/library/i-integrated-web-services-server/in
dex.html
For more information about REST service with IWS, see IBM developerWorks:
https://www.ibm.com/developerworks/ibmi/library/i-rest-web-services-server1/
10.3 IBM WebSphere Application Server
WebSphere Application Server is the leading open standards-based application foundation,
offering accelerated delivery of innovative applications and unmatched operational efficiency,
reliability, administration, security, and control on IBM i. This section covers the following
topics:
“Supported WebSphere Application Server versions on IBM i 7.2”
“WebSphere Application Server Liberty Core packaging” on page 485
“WebSphere Application Server Liberty Profile” on page 486
“Installation of WebSphere Application Server to IBM i” on page 486
“Upgrading to IBM i 7.2” on page 486
10.3.1 Supported WebSphere Application Server versions on IBM i 7.2
On IBM i 7.2, the following package options of WebSphere Application Server are supported:
IBM WebSphere Application Server Express V8.0/V8.5
IBM WebSphere Application Server Base V8.0/V8.5
IBM WebSphere Application Server Network Deployment V8.0/V8.5
IBM WebSphere Application Server for Developers V8.0/V8.5
IBM WebSphere Application Server Liberty Core V8.5.5
Note: WebSphere Application Server V6.1 and V7.0 are not supported on IBM i 7.2. If you
have these WebSphere Application Server environments on IBM i, you also must migrate
your WebSphere Application Server to the appropriate versions when upgrading to
IBM i 7.2.
Figure 10-5 on page 485 shows a high-level view of the packaging options of WebSphere
Application Server for IBM i.
484 IBM i 7.2 Technical Overview with Technology Refresh Updates
Figure 10-5 WebSphere Application Server for IBM i packaging options
The minimum maintenance level of each package option of WebSphere Application Server
V8.0 that is supported on IBM i 7.2 is Version 8.0.0.7; for WebSphere Application Server
V8.5, it is Version 8.5.5.2.
For more information about the supported versions of WebSphere Application Server, see the
IBM Support website:
http://www.ibm.com/support/docview.wss?rs=180&uid=swg27006921#8.0
IBM WebSphere Application Server Express for i is delivered as the part of IBM Web
Enablement for i (5770-WE2). IBM Web Enablement for i product on IBM i 7.2 includes the
following versions of IBM WebSphere Application Server Express so that you can choose the
version of IBM WebSphere Application Server Express to install on your IBM i platform:
IBM WebSphere Application Server Express for i V8.0
IBM WebSphere Application Server Express for i V8.5
10.3.2 WebSphere Application Server Liberty Core packaging
In WebSphere Application Server V8.5.5, WebSphere Application Server Liberty Core is
newly introduced as a stand-alone package option for delivering WebSphere Application
Server Liberty Profile and it is also available for IBM i. WebSphere Application Server Liberty
Core does not include the wider range of features that is found in the Liberty profile that is
shipped with the other WebSphere Application Server package options.
Chapter 10. IBM i server functions 485
For more information about WebSphere Application Server Liberty Core, see IBM Knowledge
Center:
https://www.ibm.com/support/knowledgecenter/SSD28V_8.5.5/com.ibm.websphere.wlp.cor
e.doc/ae/cwlp_core_welcome.html
10.3.3 WebSphere Application Server Liberty Profile
You can use WebSphere Application Server Liberty Profile to build and deliver rapidly web
applications that do not need the full Java EE stack. Liberty Profile is delivered within each
package option for Version 8.5 or later. Since Version 8.5.5, Liberty Profile is also available as
a stand-alone offering known as WebSphere Application Server Liberty Core.
This profile is intended for use as a development or production environment for running web
applications that do not require a full Java EE stack. The Liberty profile provides enterprise
qualities of service, including security and transaction integrity.
Because a Liberty Profile server is lightweight, it can be packaged easily with applications in a
compressed file. This package can be stored, distributed to colleagues, and used to deploy
the application to a different location or to another system. It can even be embedded in the
product distribution. The Liberty profile configuration operates from a set of built-in
configuration defaults. You can specify only the required changes for your environment by
using a simple XML format.
For more information about WebSphere Application Server Liberty Profile in WebSphere
Application Server V8.5.5, see WebSphere Application Server V8.5.5 Technical Overview,
REDP-4855.
In IBM i 7.2 TR1 timed enhancements, IBM i Integrated Application Server, and Integrated
Web Services Server use WebSphere Application Server Liberty Profile. For more
information about the enhancements of IBM i Integrated Application Server, see 10.2, “IBM i
Integrated Web Application and Web Services Server” on page 480.
10.3.4 Installation of WebSphere Application Server to IBM i
In IBM i 7.2, the Web Admin user interface can be used to install WebSphere Application
Server package options to IBM i. IBM Installation Manager is required to install WebSphere
Application Server package options. The new user interface of Installer for WebSphere
Application Server in Web Administration for i also includes installing IBM Installation
Manager to IBM i.
For more information about the installation of WebSphere Application Server to IBM i, see
10.1.3, “IBM Web Administration for i for managing a WebSphere Application Server
installation” on page 479.
10.3.5 Upgrading to IBM i 7.2
If you are using Application Server V7.0 and upgrading to Version 7.2, you must migrate to
the WebSphere Application Server V8.0.0.8 or V8.5.5.2 products. Because migration does
not require Application Server V7.0 to be operational, migration can occur before you upgrade
to Version 7.2.
486 IBM i 7.2 Technical Overview with Technology Refresh Updates
For more information about migrating your existing WebSphere Application Server
environments, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzaq9/rzaq9.pdf
10.4 IBM Social Collaboration products
IBM 7.2 supports the following social collaboration products (formerly under the IBM Lotus
brand):
IBM Domino® V9.0.1.
IBM Notes Traveler V9.0.1.
IBM Sametime® V9.0. Sametime V9.0 requires hotfix HF1 to support IBM i 7.2.
IBM Enterprise Integrator 9.0.1.
Actual compatibility of IBM Social Collaboration products can be found in the following
document:
http://www.ibm.com/systems/resources/systems_power_ibmi_lotus_releasesupport.pdf
Note: There is a larger set of IBM Lotus product versions that support IBM i 7.1, but not
IBM i 7.2. If such products are needed in the future, additional checks must be done if a
version that is compatible with IBM 7.2 is released.
10.5 IBM Printing
This section covers the IBM i printing enhancements in IBM i 7.2. The following topics are
covered in this section:
10.5.1, “CPYSPLF CL command now supports the PDF format” on page 487
10.5.2, “Controlling the method of sending spooled files from list panels” on page 488
10.5.3, “Changes to TrueType and OpenType fonts” on page 488
10.5.4, “New bar code types for the printer DDS BARCODE keyword” on page 488
10.5.5, “Color image support” on page 489
10.5.6, “Color management support added to Print Services Facility for IBM i” on page 489
10.5.7, “Host print transform now supports color images” on page 490
10.5.8, “AFP color and grayscale solutions” on page 490
10.5.1 CPYSPLF CL command now supports the PDF format
The CPYSPL CL command can copy a spool file to IFS in PDF format. The new option *PDF for
parameter WSCST was added for this purpose. Example 10-1 shows an example of this
command.
Example 10-1 Example of the CPYSPLF CL command with the *PDF option
CPYSPLF FILE(QPRINT)
TOFILE(*TOSTMF)
JOB(000172/QSECOFR/DSP01)
SPLNBR(1)
TOSTMF('/home/qprint.pdf')
WSCST(*PDF)
Chapter 10. IBM i server functions 487
10.5.2 Controlling the method of sending spooled files from list panels
By using an environment variable, you can control whether spooled files are sent by using the
SNDNETSPLF (SNADS) or SNDTCPSPLF (TCP/IP) CL command from the WRKSPLF, WRKOUTQ, and
WRKJOB OPTION(*SPLF) panels.
The default method of sending spooled files from the WRKSPLF, WRKOUTQ, and WRKJOB
OPTION(*SPLF) panels by specifying "1=Send" uses the SNDNETSPLF CL command. If you
prefer to use the SNDTCPSPLF CL command to send spooled files from these panels, you can
do that by using the environment variable QIBM_SNDSPLF_OPT.
To change the default command for your job to be SNDTCPSPLF, run the following command:
ADDENVVAR ENVVAR(QIBM_SNDSPLF_OPT)VALUE(TCP)LEVEL(*JOB)
To change the default command for the system to SNDTCPSPLF, run the following command:
ADDENVVAR ENVVAR(QIBM_SNDSPLF_OPT)VALUE(TCP)LEVEL(*SYS)
The environment variable name and its value must be uppercase. If the environment variable
is not found or not set to TCP, the system defaults to the SNDNETSPLF CL command from the
spooled file list panels.
10.5.3 Changes to TrueType and OpenType fonts
The TrueType fonts are delivered as option 43 in the IBM i operating system product
5770-SS1. They are provided as stream files in the TrueType (OpenType) format.
TrueType and OpenType fonts are expected to be found in one of two Integrated File System
directories:
/QIBM/ProdData/OS400/Fonts/TTFonts for IBM supplied fonts
/QIBM/UserData/OS400/Fonts/TTFonts for user fonts
It is possible to specify additional directories for user fonts by using the environment variable
QIBM_FONT_RESOURCES_PATH. One or more directories, which are separated by a colon, can be
specified.
When searching for fonts, the system looks to see whether there are any paths set in the
environment variable QIBM_FONT_RESOURCES_PATH. If so, those paths are searched first. Then,
the UserData path is searched, followed by the ProdData path.
The detailed table of fonts that are provided can be found in IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzalu/rzalucontruetype.htm
10.5.4 New bar code types for the printer DDS BARCODE keyword
The BARCODE DDS keyword now supports these new types of bar codes:
QR Code
Code 93
USPS Intelligent Mail
Royal Mail Red Tag
GS1 Databar
488 IBM i 7.2 Technical Overview with Technology Refresh Updates
Some modifiers to formerly supported bar codes were added to the following bar codes:
UCC/EAN 128 (or GS1-128)
USPS intelligent Mail Container
GS1 ITF-14
The UCC/EAN 128 (or GS1-128) bar code can be selected by specifying the CODE128
bar-code-ID and a bar code modifier of 03 or 04.
The USPS Intelligent Mail Container bar code can be selected by specifying the CODE128
bar-code-ID and a bar code modifier of 05.
The GS1 ITF-14 bar code (Interleaved 2 of 5 with bearer bars) can be selected by specifying
the INTERL2OF5 bar-code-ID and a bar code modifier or 03 or 04.
Also, Databar and Intelligent Mail bar codes can be rendered by Host Print Transform and
Transform Services (5770-TS1) as a PDF.
The detailed definition of the BARCODE DDS keyword can be found in IBM Knowledge
Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzakd/rzakdmstptbarco.htm
10.5.5 Color image support
IBM 7.2 supports color printing. The following sections describe these enhancements in brief.
Color image support is a complicated area that includes IBM products such as Print Services
Facility™ for IBM i and IBM Infoprint Server for i, and Ricoh products. For more information
about this topic, see the following resources:
IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgprint.htm
The RICOH website, found at:
http://www.ricoh.com
The AFP Consortium (AFPC) was founded in 2004 and renamed to the AFP Color
Consortium. Its members are companies that develop and improve the AFP Color
Management Architecture (ACMA). The consortium’s present scope is the complete
Advanced Function Presentation (AFP) architecture.
For more information about the AFPC, see the following website:
http://afpcinc.org
10.5.6 Color management support added to Print Services Facility for IBM i
Print Services Facility for IBM i were enhanced to support the AFP Color Management
Architecture (CMOCA). A mechanism to print color consistently on different printers by
different manufacturers was added. Color profiles for input and output are used to adjust
colors automatically at high speed. You must have the AFP Resource Installer Tool to
generate a Resource Access Table (RAT).
Chapter 10. IBM i server functions 489
10.5.7 Host print transform now supports color images
The AFP-to-ASCII transform supports color images when you print to a color printer that
supports the PCL language (for example, PCL5C). The supported images are JPG, GIF, and
TIFF. The images can be referenced by the AFPRSC DDS keyword. Stream files can be used to
reference the resources.
For more information, see IBM Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzakd/printthis.htm
Information about the Workstation Customization Object tag PRTDTASTRM can be found in IBM
Knowledge Center:
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzalu/prtdtastrm.htm
10.5.8 AFP color and grayscale solutions
It is now possible to include color images or specify colors for AFP objects in your spooled
files and send them to an AFP color printer. The color images and objects print in color, which
is based on the default settings in your print server and printer.
You can perform this task with or without explicit color management. You can use color
management to print color images in exact colors, calibrate devices such as scanners and
printers. Color management solutions are supported by RICOH products. For more
information about these products, go to the following website:
http://www.ricoh.com
For color and grayscale printing, you can use the AFP Color Management Object Content
Architecture (CMOCA). You can include the AFP CMOCA resources in your spool file, or you
can manage and store it centrally so that you can leverage the full advantages of CMOCA
and improve the speed of print processing.
Your graphical objects can have different formats, such as AFPC JPEG Subset, EPS, GIF,
IOCA, PDF, PNG, and TIFF.
For uploading data objects, use the AFP Resource Installer. For more information about this
product, see the following website:
http://rpp.ricoh-usa.com/products/software/color-manage/afp-resource-installer
490 IBM i 7.2 Technical Overview with Technology Refresh Updates
Related publications
The publications that are listed in this section are considered suitable for a more detailed
description of the topics that are covered in this book.
IBM Redbooks
The following IBM Redbooks publications provide additional information about the topic in this
document. Some publications that are referenced in this list might be available in softcopy
only.
Accessing IBM i Health Indicators Using Performance Data Investigator, REDP-5150
Creating IBM i Client Partitions Using Virtual Partition Manager, REDP-4806
IBM DB2 Web Query for i Version 2.1 Implementation Guide, SG24-8063
IBM i 7.1 Technical Overview with Technology Refresh Updates, SG24-7858
IBM Power Systems E870 and E880 Technical Overview and Introduction, REDP-5137
IBM Power Systems S814 and S824 Technical Overview and Introduction, REDP-5097
IBM Power Systems SR-IOV: Technical Overview and Introduction, REDP-5065
IBM PowerVM Virtualization Introduction and Configuration, SG24-7940
IBM PowerVP: Introduction and Technical Overview, REDP-5112
IBM System Storage SAN Volume Controller and Storwize V7000 Replication Family
Services, SG24-7574
Modernizing IBM i Applications from the Database up to the User Interface and Everything
in Between, SG24-8185
PowerHA SystemMirror for IBM i Cookbook, SG24-7994
Row and Column Access Support in IBM DB2 for i, REDP-5110
Tools and Solutions for Modernizing Your IBM i Applications, REDP-5095
Uncovering Application Runtime Expert - IBM i 7.1, REDP-4805
You can search for, view, download, or order these documents and other Redbooks,
Redpapers, web docs, draft and additional materials, at the following website:
ibm.com/redbooks
© Copyright IBM Corp. 2015, 2016. All rights reserved. 491
Other publications
These publications are also relevant as further information sources:
Connecting to IBM i - IBM i Access Client Solutions
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajr/rzajropconovervie
w.htm
Connecting to IBM i - IBM i Access for Web
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzamm/rzammaccessweb.htm
DB2 for i SQL reference in IBM Knowledge Center
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
How to use the Batch Model performance tool
https://www.ibm.com/developerworks/ibmi/library/i-how-to-use-the-batch-model-pe
rformance-tool/
IBM developerWorks
http://www.ibm.com/developerworks/ibmi/
IBM i 7.2 IBM Knowledge Center
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/ic-homepage.htm
IBM i iSCSI Solution Guide
http://www.ibm.com/systems/power/software/i/integratedserver/guide/iscsi.html
IBM i Memo to Users Version 7.2
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzahg/rzahgmtu.htm
IBM i Version 7.2 Database DB2 for i SQL Reference
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/db2/rbafzintro.htm
IBM Power Virtualization Center Standard 1.2.1 documentation
http://www.ibm.com/support/knowledgecenter/SSXK2N_1.2.1/com.ibm.powervc.standar
d.help.doc/kc_welcome-standard-supermap.html?locale=en&ro=kcUI
IBM i Access Client Solutions: Customization and deployment made easy
https://www.ibm.com/developerworks/ibmi/library/i-ibmi-access-client-solutions-
customization-trs/
Online resources
These websites are also relevant as further information sources:
Cloud on Power Systems
http://www.ibm.com/systems/power/solutions/cloud/resources.html
Customer Notices and information for IBM i 7.2
http://www.ibm.com/systems/support/planning/notices72.html
Dates for support of various IBM i releases
http://www.ibm.com/systems/support/i/planning/upgrade/suptschedule.html
492 IBM i 7.2 Technical Overview with Technology Refresh Updates
DB2 for i blog
http://db2fori.blogspot.com/
Free-form RPG support on IBM i
https://www.ibm.com/developerworks/ibmi/library/i-ibmi-rpg-support/
IBM Backup, Recovery, and Media Services (BRMS) for i developerWorks wiki
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Ba
ckup%2C%20Recovery%20and%20Media%20Services%20%28BRMS%29%20for%20i
IBM Cloud Manager with OpenStack for Power Systems
http://www.ibm.com/systems/power/solutions/cloud/smartcloudentry/
IBM Cloud Manager with OpenStack wiki
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W21ed5ba
0f4a9_46f4_9626_24cbbb86fbb9/page/Documentation
IBM developerWorks IBM i Technology Updates wiki
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/beb2d3aa
-565f-41f2-b8ed-55a791b93f4f
IBM Fix Central
http://www.ibm.com/support/fixcentral
IBM i Access product website:
http://www.ibm.com/systems/power/software/i/access/solutions.html
IBM i and Related Software wiki
http://www.ibm.com/developerworks/ibmi/software
IBM i Resaves Information for IBM i 7.2
http://www.ibm.com/systems/support/i/planning/resave/v7r2.html
IBM i Server Firmware and HMC Code wizards
http://www-912.ibm.com/s_dir/slkbase.NSF/DocNumber/408316083
IBM i technical support
http://www.ibm.com/support
IBM Offering Information
http://www.ibm.com/common/ssi/
IBM Power code matrix
https://www-304.ibm.com/webapp/set2/sas/f/power5cm/home.html
IBM PowerHA SystemMirror for i wiki:
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Po
werHA%20SystemMirror%20for%20i/page/7.2%20Enhancements
IBM Power Systems for Service Providers
https://www.ibm.com/msp/us/en/powersystems
IBM Power Systems Solution Edition for Cloud
http://www.ibm.com/systems/power/hardware/solutioneditions/cloud/
IBM PowerVC - Virtualization Center
http://www.ibm.com/systems/power/software/virtualization-management/index.html
Related publications 493
IBM Pre-Upgrade Verification Tool for IBM i
http://www.ibm.com/support/docview.wss?uid=nas8N1014074
IBM Removable Media on IBM i wiki
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Re
movable%20Media%20on%20IBM%20i/page/IBM%20Removable%20Media%20on%20IBM%20i
IBM TS1150 tape drive
http://www.ibm.com/systems/storage/tape/ts1150/index.html
i Can - Technical Tips for i blog
http://ibmsystemsmag.com/Blogs/i-Can/
Management of POWER8 update access keys
http://www.ibm.com/support/docview.wss?uid=isg3T1020902
OpenStack
http://www.openstack.org/
Open Your i blog
http://iprodeveloper.com/blog/open-your-i
Pipelined table functions
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%
20Technology%20Updates/page/Pipelined%20Table%20Functions
Server virtualization with IBM PowerVM
http://www.ibm.com/systems/power/software/virtualization/index.html
Upgrade planning - Planning to upgrade to IBM i 7.2
http://www.ibm.com/systems/support/i/planning/upgrade/v7r2/index.html
You and i - IBM i Trends and Strategies blog
http://ibmsystemsmag.com/Blogs/You-and-i/
Help from IBM
IBM Support and downloads
ibm.com/support
IBM Global Services
ibm.com/services
494 IBM i 7.2 Technical Overview with Technology Refresh Updates
IBM i 7.2 Technical Overview SG24-8249-01
with Technology Refresh Updates ISBN 0738442070
(1.0” spine)
0.875”<->1.498”
460 <-> 788 pages
Back cover
SG24-8249-01
ISBN 0738442070
Printed in U.S.A.
ibm.com/redbooks