Copyright © TIBCO Software Inc. All Rights Reserved
Copyright © TIBCO Software Inc. All Rights Reserved


Chapter 1 Using TIBCO Object Service Broker Utilities : S6BBRBAL (Segment Balance)

S6BBRBAL (Segment Balance)
The S6BBRBAL (Segment Balance) utility reads a TIBCO Object Service Broker segment archive (backup) and creates a new archive that matches the new specifications provided for the segment. This utility works at the page level only. It accepts archives from any of the supported TIBCO Object Service Broker platforms, and can be used against Release 3.2 and above archives.
Purpose
S6BBRBAL automates the redistribution of the used pages of a specified segment into a redefined space. This redistribution makes changing space allocation for a segment easier and in some cases also leads to improved performance.
We strongly recommend that the procedures described here be performed by an experienced TIBCO Object Service Broker system administrator who is familiar with the site backup and recovery environment. All the steps in these procedures should be read and understood before proceeding with this activity. All aspects of this topic should be considered, such as:
Steps to Take Before Executing S6BBRBAL
Step 1. Take a Journal Spin
Do either of the following procedures:
1.
This segment is here referred to as the target segment.
2.
OR, if all segments are to be balanced:
1.
2.
3.
Step 2: Take a Backup
1.
If you are using continuous backup, run a spin merge and create a new continuous backup file for the target segments.
OR
If you do not use continuous backup, run S6BTLBPS (Backup Page Data Sets) to take a backup of each target segment.
2.
3.
Check that the resulting audit report contains no errors or orphan pages. Fix the errors and recover all orphan pages before proceeding.
Steps to Run S6BBRBAL
1.
2.
Ensure you are using the appropriate backup data set for each segment.
3.
Ensure you are using the appropriate newly balanced data set for each segment.
4.
Steps to Take After Successfully Executing S6BBRBAL
When the new archive is created:
1.
If the number of data sets in a target segment changed, modify the ACBS statement for that segment in your JCL member DBJCL to equal the new number of data sets in the segment.
2.
3.
4.
5.
Run S6BTLRPS (Restore Pagestore) to restore the newly balanced archive to the segment, using the output from S6BBRBAL as input to S6BTLRPS.
6.
If you are using continuous backup, restart it from this point for each target segment using the output of S6BBRBAL to create a base backup for each segment. Alternatively, you can run S6BTLBPS (Backup Page Data Sets) to create the base backup.
OR
If you are not using continuous backup, run S6BTLBPS (Backup Page Data Sets) to take a full backup of each target segment.
7.
Failure to complete step 7 can result in a corrupted target segments and loss of data. You can use a sort job using the following sort control statement to accomplish step 7:

 
MODS E15=(S6BSPX15,100000,EXITLIB,N),E35=(S6BSPX35,110000,EXITLIB,N)
* -------------------------------------------------------------------
* ----------------------V------------------V-------------------------

 
8.
See Also
TIBCO Object Service Broker for z/OS Managing Backup and Recovery for detailed information about the backup and restore procedures.
Invoking S6BBRBAL
The S6BBRBAL member of the JCL data set distributed with TIBCO Object Service Broker contains sample JCL required to run this utility.
This sample is provided as a reference only; modify the JCL for your needs.
Note the following about the sample JCL:
The number of the offline segment. If this option is omitted, the segment number defaults to zero (that is, the base segment is expected).
Y produces a verbose audit report; N produces a terse audit report. A verbose audit report gives complete details of all modifications made to the segment, for example, the old and new numbers of all pages.
OLDARC represents the name of the segment archive to use (input)
NEWARC represents the name of the new segment archive (output)
Return Codes
 
A non-recoverable error results in an abend.
Example Report

 
S6BBRBAL    Balance Segment number:   001      2009 Apr 22    12:50 v1.2
Balance Archive S6B.PRD.BACKUP.S001.G0011V00
into Redefined Archive S6B.AP.OSBNEW.ARCHIVE
Number of files in redefined segment: 001
 
 
PHASE 1 - Analyze Old Archive:
 
 
Segment: 0001; Old File: 0; Extent: 0; Page# 00000000
# pages available: 31744; Bit map size: 0F80
Segment: 0001; Old File: 0; Extent: 1; Page# 00007C00
# pages available: 31744; Bit map size: 0F80
Segment: 0001; Old File: 0; Extent: 2; Page# 0000F800
# pages available: 26512; Bit map size: 0CF2
 
File 0 High Used Page: 0000B3B6; # Used Pages: 44593; # Pages Ignored: 3
OLD ARCHIVE - Read: 44596; Processed: 44596; Used: 44593; Ignored: 3
 
 
PHASE 2 - Re-assign Page Numbers:
 
 
Pages to be assigned to 1st file only: 44593
New File 0 Summary;
High Used Page: 0000AE32; # Assigned Pages: 44593; # Control Pages 2
 
 
PHASE 3 - Create New Archive:
 
New Control Page; 00000000
Prev: FFFFFFFF; Next: FFFFFFFF; Type: x’F0’
Number of Pages: 31744; Bit Map Size: 0F80; File High Page: 0000AE32
 
New Control Page; 00007C00
Prev: FFFFFFFF; Next: FFFFFFFF; Type: x’F0’
Number of Pages: 12851; Bit Map Size: 0647; File High Page: 0000AE32
 
Bytes: Input 144020059; Output - old 144007867; New 5767
OLD Pages - Read: 44596; Processed: 44596; Used: 44593; Ignored: 3

 
 

Copyright © TIBCO Software Inc. All Rights Reserved
Copyright © TIBCO Software Inc. All Rights Reserved