One of the problems we come across a lot is how to analyze what happened to an object prior to it being put on hold by the apply process. A recent incident with a client suggested we needed a new tool which would help reduce the data complexity and help show what caused the problem. This resulted in a new feature which allows the user to see all entries from the journal which have affected a specific RRN prior to it going into error.
The new IBM Display_Journal UDTF helped tremendously in being able to extract the data we needed, once we sorted out the data that could be returned it was just a question of building the relevant SQL strings to pull back the required data. One issue we are still investigating is how to best build the SQL string to give the best performance and efficiency, our test systems work fine but when you are running the query against millions of journal entries making a stupid mistake in building the query can have a significant effect on how it runs. So we have asked for advice through the various forums we follow in the hope of getting the best solution possible. In the meantime we simply built the SQL request in 2 stages and have built the following display.
This shows a sample output we created by fabricating an error for a specific RRN in a file and then requesting all entries from the journal which are for the same RRN. The test is not reflective of a real world situation because updates would only fail if they were tried against a non existent record, but the data is factual and shows just what we can do.
The real world problem we ran into was caused by the APYJRNCHG command failing to delete a record in a file before adding a new record even though the entry existed in the journal to delete it first. IBM brought out a PTF to fix the problem but it took days of effort to track down the problem due to the huge number of entries deposited into the journal by the customer in question. If we had this tool available then we could have identified the problem in a matter of minutes.
HA4i continues to gain traction in the market and the customer input we get makes the product better and better. If you are looking for a High Availability product for the IBMi or want to look at the cost of a replacement for an existing solution let us know, we are always happy to see if HA4i will meet your needs at an affordable cost.