Upload
nora-nash
View
213
Download
0
Embed Size (px)
Citation preview
Managing Your Lawson System
MSPs and CTPs
Ron Wright
netASPx Corp.
CTP Definition
Lawson’s Definition:
"Critical Transfer Packages ( CTP's )" are individual "high priority" fixes that are available to download immediately without waiting for the scheduled Maintenance Service Package.
• Many CTPs released every week
MSP Definition
Lawson’s Definition:"Maintenance Service Packages ( MSP's )"
consist of scheduled, periodic groupings of individual, critical fixes. Each new Transfer Package is built upon the previous one, so all fixes are included in the newest available CTP.
• Released every 2-3 months• NOT installed like a collection of CTPs!
MSP: When and How Often
netASPx applies all MSPs
• Give MSPs time for critical problems to be resolved (1 month)
• Review CTPs released within 2 weeks of an MSP for applicability
• Watch Topica mailing lists for impressions (http://www.topica.com/lists/Lawson_SysAdmin)
MSP: Experiences
• Call volume increases for a short duration after• Issues are often serious in nature• Number of issues and severity closely related to
the amount and quality of the testing performed!• Develop test plans with end user involvement.• Test processes and programs, not just programs
CTP: When and How Often
• Other than those reviewed after an MSP, CTPs are applied only upon an issue
• CTPs are more problematic than MSPs
• netASPx has applied over 100 unique CTPs since August, 2002
Application Maintenance Toolset
Suite of utilities for installing applications and applying MSPs and CTPs
• Downloaded from support.lawson.com (Transfer Packages)
• Includes lasetup, appmetaload, patchcompile, and the metadata load and dump programs
lasetup initial
• Used for a new installation or point release
• Rolls $LAWDIR/<prodline>/Admin/install.log
• Overwrites source files without backup
• Performs sysloads
lasetup staged (MSP)
• Files staged to designated location then compared to program code in productline
• Programs found to be more recent than code in the MSP are replaced, but logged in the install.log as “Reverted”
• All files to be replaced are backup up to $LAWDIR/<pl>/backup/<version>_MSP#
• GEN database information for programs NOT backed up.
• CTPs that were “Reverted” must be reapplied
Backing out an MSP
Preparation:
• Complete data backup (expsysdb)
• Backup of LADBDIR and LAWDIR
Optional prep step:
• sysdump <pl> (more options for recovery)
Backing out an MSP (cont)
Procedure:1. Backup data (if unsure of backup or potential
exists that updated data may need to be retrieved)2. Drop tables (bldxxxddl –UDq <pl>)3. Restore LADBDIR and LAWDIR4. Startladb5. bldxxxddl –Uq <pl>6. Restore data (impexp)7. startlaw
lasetup patch (CTP)
• Files to be replaced are compared for more recent versions. More recent versions are not replaced.
• Replaced files and GEN information to be updated is backed up to $LAWDIR/<pl>/backup/<patch #>
• GEN data not updated yet
appmetaload (CTP)
• Applies changes to the GEN database related to a program or library
• Information related to workfiles, messages, etc. loaded for you. No more manual entry,, except…
• Database changes (dbdef) not handled
patchcompile (CTP)
• Determines all programs related to the patch that must be recompiled and submits them.
• Optionally creates a script to submit all compiles.
Backing out a CTP
• No prep required1. Copy program files from
$LAWDIR/<pl>/backup/<patch #> back to appropriate location
2. Go through “meta” directories (ex. Metagl) and run appropriate metaload<ext> program for each file found. ( ex. metaloadmsg <pl> AP20.msg )
3. If manual database changes were done, those must be reversed manually. (dbdef, blddbdict, dbreorg)
4. Recompile productline or rerun patchcompile
Under the Covers
Version comparison:• Version compared using the first line in every
program file. This line has:<program> <version> <Perl sum32 for file>• Any change to the file changes the chksum value.
If chksum doesn’t match the header, version ignored and program overwritten in all circumstances.
• A Perl programmer could easily write Perl to regenerate the chksum value
Under the Covers (cont)
• Metaload series of programs do not do a merge within the GEN database. Deletes within GEN are performed on a backout.
• Be careful if you run the metadump programs. They do not write to stdout. Overwrite files in the current directory.
• Metadump files fairly easy to read. Contain “prefix” of GEN tables to be updated. Confirm prefix by running dmpdict GEN <table>. Look for index (ie. PGMSET1 - PGM is prefix)
Handling Program Modifications
• Use the UNIX diff utility to see changes. (works on NT too with MKS Toolkit or others)
diff $LAWDIR/dev8/backup/12345/apsrc/AP20PD $LAWDIR/dev8/apsrc/AP20PD
• diff can also create a merged version of two programs for you:
diff –D12345 $LAWDIR/dev8/backup/12345/apsrc/AP20PD $LAWDIR/dev8/apsrc/NA20PD
(merged program will not compile until edited)