Search This Blog

Tuesday, March 18, 2014

Deleting non-processed messages from queues – MIF (Maximo Integration Framework)


Queues
The IBM Maximo uses these queues for data integration purposes:
Inbound sequential (sqin) - Maximo sequential queue used for importing data
Inbound continuous (cqin) – Maximo continuous queue used for importing data
Outbound sequential (sqout) – Maximo sequential queue used for exporting data
Error continuous (cqinerr) – Maximo continuous queue used for error. The error messages generated in the inbound continuous queue (cqin) can be redirected to this queue, since the cqinerr has been previously set for receiving those messages
Queues are structures based on the FIFO (first in, first out) principle, in which the first elements included in the queue are the first elements to be removed. In a sequential queue, whenever an error occurs, this queue stops processing its elements and remains in the same position until the message is removed or the error is fixed. On the other hand, in a continuous queue, even if there is an error, this queue moves on processing all the other elements.
Clients using sequential queues usually have to delete all the messages of a certain queue during the data integration. We will use an inbound operation with XML as an example to explain this process:
From an MIF environment correctly set, import the XML file. MIF then identifies the JMS inbound queue and writes the message into this queue. If the message contains multiple instances of a document, MIF will write multiple messages into the queue. If at least one of these messages is processed with errors, an exception message is identified and no other message is processed and written into the database.
You can also import several records by using several XML files or records in an XML file, and this action generates several messages in the queue. If, by any chance, a failure occurs while importing the records, you can delete or fix the XML that generated the error in the Message Reprocessing application (see the picture below). With this procedure, the following message in the queue is processed. However, if the entire batch of messages contains errors, you do not need to wait until all the messages are processed, deleted or fixed; you can use IBM Maximo or the application server (Weblogic or Websphere) in order to delete all the elements from the queue. Then, you can perform the required modifications and import news message to an empty queue.


  



To use Maximo for deleting the queues, follow these steps:
Go to Integration > External Systems.
Select the external system used for integration purposes. Then, go to Select Action > Add/Modify Queues.
Select the queue that contains non-processed data and click the Delete Queue Data button.
In case you need to check how many messages there are in the queue, click the View Queue Data button:



  Click OK. If you do not provide any parameters, all the messages will be deleted:






  You will see a message informing how many messages were deleted:
image
  
Using Weblogic for deleting the queues:  follow the steps below:
Go to JMS > JMS Modules > intjmsmodule > sqin > Summary of JMS Messages > sqin
Then, click the Monitoring tab:
image



Select intjmsmodule!sqin and click Show Messages
image
 Select Delete All to delete all the messages:
image
 Check that all the listed messages have been deleted:

image
image
image
image











Using WebSphere for deleting the queues: follow the steps below:
Go to Buses > intjmsbus > destination > sqinbd > Queue points
Select the sqin target and click Runtime. Then, click Messages
image





  Click the Delete All button:

Confirm that all messages must be deleted by clicking OK:

image










imageimageimageimageimageimageimageimageimage


  Check that all non-processed messages have been deleted from the queue:




image
image
image
imageimage

Deploying the confhelp.properties file in CCMDB




The confhelp.properties file must be deployed to enable the help system for the product.
To deploy the confhelp.properties file, complete the following steps:
  1. Ensure that you are logged in to the administrative workstation.
  2. Run the following command:
3.  \jacl\solutions\Sendfile.bat
4. 
5. 
6.  $
7.  "\applications\
8.  maximohelp\helpweb\webmodule\WEB-INF\confhelp.properties"
9.  "WASInstallLocation>\properties"
"confhelp.properties"

Thursday, January 30, 2014

DB2 Tuning Commands & DB2 Utility Commands

Quickly look at some basic tuning measurements:
db2 "select db_name,  rows_read, rows_selected, lock_waits, lock_wait_time, deadlocks, lock_escals, total_sorts, total_sort_time from table (snapshot_database (' ', -1) ) as snapshot_database"


List the running utilities and their progress
=>db2 list utilities show detail
Throttle a running utility.
First find the Utility ID.
=>db2 list utilities show detail
Throttle the utility to a value of 1 to 10. 10 being the most throttled.
=>db2 set UTIL_IMPACT_PRIORITY for TO 5

DB2 Tablespace and Bufferpool Commands

View the names, pagesize, and number of pages of the bufferpools in your database:
=>db2 "select bpname,pagesize,npages from syscat.bufferpools"
Make a bufferpool resize automatically.  You must have STMM turned on at the database configuration level
=>db2 alter bufferpool bp1 size AUTOMATIC
Alter a bufferpool size that is a fixed size
=>db2 ALTER BUFFERPOOL IBMDEFAULTBP SIZE 15000;
Add space to a DMS tablespace:
=>db2 "alter tablespace  extend (all 8000)"

DB2 Table and Index Commands

Look at columns and data types of a table
=>db2 describe table schema.tabelename
Look at one column's data type.
=>db2 "describe select from schema.tablename"
Look at indexes on a table:
=>db2 describe indexes for table schema.tablename
Export data to a file in ixf format:
  • =>db2 export to tablename.ixf of ixf messages tablename.txt select * from SCHEMA.TABNAME
Import data from an ixf file:
  • =>db2 import from filename.ixf of ixf messages tablename.txt insert into SCHEMA.TABNAME
Import using Load which is faster (doesn't check constraints) and NONRECOVERABLE doesn't log anything.
  • =>db2 load from filename.ixf of ixf insert into SCHEMA.TABNAME nonrecoverable;
Build a file to set integrity on all tables that are in set integrity pending state.
=>db2 "select 'set integrity for '||tabschema||'.'||tabname ||' immediate checked;' from syscat.tables where type = 'T' and status = 'C'" > file.out

DB2 Security Commands

Build a script to grant user execute privilege on all packages.
=>db2 "select 'db2 grant execute on package '||pkgschema||'.'||pkgname||' to user ;' from syscat.packages where pkgschema = 'NULLID'" > output.file

Security Notes
  • dbadm auth must be revoked before any other database privlege.
  • create_not_fenced_routine must be revoked before create_external_routine

DB2 Backup and Restore Commands

Take an OFFLINE backup 
db2 connect to
db2 quiesce database immediate force connections
db2 connect reset
db2 backup database to compress without prompting
after backup completes:
db2 connect to
db2 unquiesce database
db2 connect reset
Take an ONLINE Backup
db2 backup db to online compress
or use a background process on a linux/unix machine
nohup db2 backup db to online compress &
List recent backups and where they are stored
=>db2 list history backup all for
Check the integrity of a backup image
=>db2ckbkp
Restore from Incremental Backup Automatic
=>db2 restore db  incremental automatic taken at
If you need to restore an incremental backup manually this command will give you the required previous backups.
=>db2ckrst -d -t

MAS and Manage custom resources are not reconciled

  After a change was applied to IBM Maximo Application Suite (MAS) or IBM Maximo Manage, the custom resources are not reconciled. For exampl...