Hi everybody.
The question for experts is: Why is it that when you run Fixup on a folder, the DBIID is not cleared, but when you run on a specific database, it is performed? This is clearly shown in the screenshot. I checked it on servers 12.0.2FP6 and 14.5. The behavior is the same.
The difference in DBIID behavior is by design and relates to the perceived severity and scope of the Fixup operation:
Single Database (with -J or -D):Fixup assumes a more critical repair is being performed, and thus a new DBIID is assigned to establish a clean transactional slate. This is a deliberate action to ensure data integrity and force a new backup baseline for recovery.
Folder:Fixup performs a more general scan. It avoids clearing DBIIDs unless specific, database-level options (like -J or -D) are applied to individual databases within that folder (which would typically be done by running Fixup on each database individually, or by a script that passes those options to each database).
If you need the DBIID to be cleared for databases within a folder, you would typically need to script the Fixup command to run on each database individually with the -J (and/or -D) option. However, be aware of the implications for transaction logging and backup strategies when doing so.