KDCUPD vergleicht die Generierungen der beiden KDCFILEs. Abhängig vom Ergebnis dieser Prüfungen kann KDCUPD eventuell einige Daten nicht übertragen und muss in einigen Fällen die Übertragung ganz ablehnen.
Falls bei einem KDCUPD-Lauf erkannt wird, dass die beiden Generierungen bezüglich der Datenbank-Konfiguration nicht zusammenpassen, wird eine Fehlermeldung ausgegeben und der KDCUPD-Lauf abnormal beendet.
Keine Übertragung auf BS2000-Systemen
Bei der Generierung der neuen KDCFILE darf der Anwender im Vergleich zur alten KDCFILE im Prinzip alle Generierungsparameter ändern. Es gibt jedoch einige Ausnahmen, die nur bei UTM-S gelten:
Wenn die alte KDCFILE mit Formatierung und die neue KDCFILE ohne Formatierung generiert ist, wird die ganze Übertragung von KDCUPD abgelehnt, weil ein Anwendungsbetrieb mit der KDCFILE zu Fehlern führen würde.
Wenn sich die Datenbank-Generierungen bezüglich Anzahl und Reihenfolge der Datenbanken geändert haben, werden keine offenen Vorgänge übertragen.
Ausnahme:
Wenn in der neuen Generierung mehr Datenbanken generiert sind als in der alten und die bisherige Reihenfolge aus der alten Generierung erhalten bleibt, dann wird alles übertragen.- Bei einem Versionswechsel wird die gesamte Übertragung abgelehnt, falls sich die Datenbank-Generierungen bezüglich Anzahl und Reihenfolge der Datenbanken geändert haben,
Bei Anwendungen der Variante UTM-F in stand-alone Anwendungen sind solche Unterschiede für KDCUPD kein Hindernis für die Übertragung.
Eingeschränkte Übertragung
Es gibt Generierungsunterschiede zwischen alter und neuer KDCFILE, die zwar eine Übertragung generell ermöglichen, bei denen aber einzelne Nachrichten oder Datenbereiche nicht übertragen werden können. KDCUPD protokolliert solche Ereignisse nach SYSOUT oder SYSLST (bei BS2000-Systemen) bzw. nach stdout oder stderr (bei Unix-, Linux- und Windows-Systemen) und setzt die Übertragung in die neue KDCFILE fort.
Beispiele
Ist ein LTERM-Partner nicht mehr in der neuen KDCFILE definiert, kann KDCUPD eventuell vorhandene FPUT-Nachrichten und TLS-Bereiche für diesen LTERM-Partner nicht übernehmen.
Ist der Kommunikationsbereich eines Dialog-Vorgangs größer als die maximale KB-Länge (Operand MAX KB=...) in der neuen KDCFILE, dann lehnt KDCUPD die Übertragung dieses Vorgangs ab.
Allgemein gilt, dass bei der Übertragung mit KDCUPD die Generierungswerte in der neuen KDCFILE maßgebend sind.