There's an expression that is weirdly true for me, but yet I still keep struggling to not have happen:
Jamais deux sans trois (Never two, without three)
It's fruitless, but I still try. The latest: being asked about the z15 FIXCAT categories and what's the difference between them, twice in the same week. I hope that by writing this there won't be a third occurrence this week. Let's see what I can do about that; the weekend is close.
(An early apology if I use too many SMP/E terms for those still learning how to install fixes...we are hoping to make that easier, but that's another story.)
What are the three z15 FIXCAT categories?
For the IBM z15:
First one, IBM.Device.Server.z15-8561.RequiredService
This one is the critical list of PTFs that you must install to run z/OS on a z15. These are the PTFs that is your "minimum" list needed if you wonder what is the smallest number of fixes to install before you IPL on the z15. Unfortunately, these tend to be from some critical components and can be embroiled into what can be a messy PTF-in-error (PE) chain if you are trying to put one of them on. For that reason if you end up with an unresolved PE chain involving these PTFs during an APPLY CHECK, you have to investigate what you should do (forgo installing the IBM.Device.Server.z15-8561.RequiredService PTF, or BYPASSing the PE PTF installation, or even installing a ++APAR). Quite often this involves IBM Service if you need help deciding.
We do try to keep the number of PTFs that need to be in the category to the absolute minimum for this reason. Usually this list of Required PTFs stays very constant and doesn't change much at all.
Second one, IBM.Device.Server.z15-8561.Exploitation
The PTFs on this list are the ones for new functions on the z15 that you've probably heard a lot about, and are even excited to use. For the z15, this might be Coupling Facility Control Code Level 24 new functions for example. The PTFs here do not have to be installed until such time as you want to use those functions. You do not need to install them right away, with your IBM.Device.Server.z15-8561.RequiredService. However, when you are ready to exploit a new function on the z15, these are the PTFs you will want to verify are on. (We do lump all exploitation into this one category for general z15 new functions, however note that there are some FIXCATs for some specific functions and it is possible that some of these z15 exploitation PTFs may also be marked with a specific functional FIXCAT.)
As we add more functions to the hardware, the PTFs on this Exploitation list grows.
Third one, IBM.Device.Server.z15-8561.RecommendedService
This category is used for PTFs that are recommended to install because they probably fix a defect that was found, or maybe they don't raise to the level of "required" but IBM Service would encourage you to install. (The PTFs found here are the ones that you are probably familiar with if you looked at the hardware PSP buckets in the olden days under the "Service Recommendations" section.) We'd like you to not rediscover this problem, so it is encouraged to put on this PTF. Is it required like the first category? No, but if you can cleanly install these, and the APAR looks like it applies to you, then go ahead and install it with the Required ones.
Today, we have only two APARs in this category for the z15: one of them is for IOCP and was marked both as Recommended and Required (maybe the Developer was just covering all bases??) and the other APAR is for ICSF (for new functions in CCA they would like installed). Usually over time, PTFs on this Recommended list will grow as the new hardware runs in more locations across the world.
Why have three?
We have three as we need to distinguish between what you absolutely must install in order to get the new hardware up and running (Required), what you can hold off on until you want to use the function (Exploitation), and those you should entertain installing but shouldn't hold up your hardware upgrade for (Recommended).
As z/OS system programmers know, putting the smallest amount of change on a system can be beneficial for availability especially when you are changing a hardware level, so identifying the smallest amount of change is what we do.
Can I put all three on at the same time?
Sure! And it is a good idea to at least do your first REPORT MISSINGFIX command with all three to see where you stand with what you don't have installed yet. It's how you proceed installing what is missing is where the distinction between the three will be valuable to you.
As I've always said, FIXCATs are the best thing since sliced bread. And make that only two pieces of bread for me.