View a markdown version of this page

AWS Transformation für Mainframe-Runtime Bahnbrechende Änderungen — 5.X - AWS Mainframe-Modernisierung

AWS Das selbstverwaltete Erlebnis der Mainframe-Modernisierung steht neuen Kunden nicht mehr offen. Informationen zu Funktionen, die mit der selbstverwalteten AWS Lösung zur Mainframe-Modernisierung vergleichbar sind, finden Sie in Angeboten, die direkt vom Anbieter angeboten werden, und von. AWS Transform Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter Änderung der Verfügbarkeit von Mainframe-Modernisierung AWS .

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS Der Mainframe Modernization Service (Managed Runtime Environment Experience) steht Neukunden nicht mehr zur Verfügung. Funktionen, die dem AWS Mainframe Modernization Service (Managed Runtime Environment-Erfahrung) ähneln, finden Sie unter AWS Mainframe Modernization Service (Self-ManagedExperience). Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter Änderung der Verfügbarkeit von AWS Mainframe Modernization.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS Transformation für Mainframe-Runtime Bahnbrechende Änderungen — 5.X

Der Zweck dieses Dokuments besteht darin, wichtige Änderungen an der Runtime von AWS Transform for Mainframe für 5.X-Hauptversionen, beginnend mit Version 5.75.0, aufzulisten. Immer wenn eine Komponente für eine einzelne Legacy-Umgebung gilt, wird die entsprechende Änderung mit dieser Umgebung gekennzeichnet.

Die folgenden Umgebungen werden verwendet:

  • z/OS : IBM Mainframe-Serie und assimiliert, läuft auf; z/OS

  • AS400: IBM iSeries-Midframes;

  • GS21: Fujitsu GS21-Umgebung;

  • ALL (oder leer): eine Änderung, die mehr als eine bestimmte Umgebung betreffen kann;

Anmerkung

Ein Großteil der Änderungen betrifft die interne Verwendung von Klassen in der AWS Transform for Mainframe-Runtime. Sie sollten keine Auswirkungen auf den bestehenden Kundencode haben.

Version 5.274.0 — Die wichtigsten Änderungen von 5.194.0

Generated-code Änderungen an der Signatur

Diese Methoden werden von der Transformationsengine direkt in den generierten, modernisierten Anwendungscode ausgegeben, sodass bei einer erneuten Transformation eine Bindung an die neue Signatur hergestellt wird. Es gibt drei.

  • InputDeviceHelper.writeInto(...)— Der dritte Parametertyp wurde geändert

    • Datei: velocity-framework/GapWalk-Runtime-Legacy-Statements/src/main/java/com/netfective/bluage/gapwalk/runtime/statements/InputDeviceHelper.java

    • Warum das wichtig ist: Der Generator gibt InputDeviceHelper.writeInto(...) Aufrufe an den generierten Code für COBOL ACCEPT aus... FROM CONSOLE, wobei ein beschreibbares Feldsegment als drittes Argument übergeben wird. Re-transformed Anwendungen binden sich an den neuen RecordAdaptable Parameter.

    Vor

    void writeInto(ExecutionContext executionContext, Context context, RangeReference rangeReference)

    Nach

    void writeInto(ExecutionContext executionContext, Context context, RecordAdaptable recordAdaptable)
  • DataUtils.formatBytes(RangeReference, RangeReference)— Rückgabetyp geändert

    • Datei: velocity-framework/GapWalk-DataSimplifier/src/main/java/com/netfective/bluage/gapwalk/datasimplifier/utils/DataUtils.java

    • Warum das wichtig ist: Der Generator sendet DataUtils.formatBytes(...) in den generierten Code und verwendet nun den zurückgegebenen Wert int als Längenargument eines generierten SequentialFile.write(record, int) Aufrufs (GS21-Schreibpfad im Druckmodus). VARYING-without-DEPENDING-ON Re-transformed Anwendungen hängen von der neuen Rückgabe ab. int

    Vor

    public static void formatBytes(RangeReference source, RangeReference target)

    Nach

    public static int formatBytes(RangeReference source, RangeReference target)
  • Blu4UserSpace.withTransferSize(...)— Der Parametertyp wurde erweitert

    • Datei: velocity-framework/gapwalk-runtime-userspace-support/src/main/java/com/netfective/bluage/gapwalk/userspace/support/data/Blu4UserSpace.java

    • Warum das wichtig ist: Zwei Generatoren senden withTransferSize(<field reference>) für die AS/400 QUSCRTUS-API (Create User Space) und binden die Referenzüberladung. Der gelöschte Methodendeskriptor wurde von (ElementaryRangeReference) zu geändert(RangeReference), sodass vorgefertigte Kundenartefakte, die den alten Deskriptor aufrufen, neu kompiliert werden müssen. Der Quellcode ist bei der erneuten Transformation kompatibel (der neue Text verarbeitet immer noch ein Argument). ElementaryRangeReference

    Vor

    public Blu4UserSpace withTransferSize(ElementaryRangeReference transferSize)

    Nach

    public Blu4UserSpace withTransferSize(RangeReference transferSize)

Configuration-property ändert sich

Keine. Keine vorhandene Transformations-, Generierungs- oder Laufzeitkonfigurationseigenschaft wurde umbenannt, entfernt oder ihr Standardwert wurde geändert. Bei allen Eigenschaftsänderungen in der Version handelt es sich um neue Opt-in-Schlüssel, deren Standardwerte das bisherige Verhalten beibehalten.

Änderungen bei Abhängigkeit und Bereitstellung

  • Der RabbitMQ-Client ist nicht mehr im Lieferumfang enthalten

    • Auswirkung: Runtime · Aktion erforderlich (nur RabbitMQ-Benutzer)

    • Änderung: Die com.rabbitmq:amqp-client Bibliothek wurde von der Runtime entbündelt (um ein CVE und ein License Gate zu löschen). GPL-2.0 Der Zugriff auf RabbitMQ erfolgt jetzt über eine Spiegelung hinter den Messaging-Schnittstellen der Runtime.

    • Warum das wichtig ist: Ein Deployment, das einen RabbitMQ-Broker (ims.messages,, oderblu4ivmq.queues.broker = rabbitmq) verwendet jics.queuesdataqueue.queues, schlägt zur Laufzeit (RabbitMQUnavailableException) fehl, weil das JAR fehlt. Die standardmäßige interne Warteschlangenbildung ist davon nicht betroffen. Dabei handelt es sich lediglich um eine Änderung des Klassenpfads — die Messaging-Schnittstellen für Kunden (MqQueueingConsumer,JicsQueueingConsumer, die IMS-Nachrichtenwarteschlange) haben sich nicht geändert.

    • Handlung: RabbitMQ-Benutzer müssen ein CVE-free amqp-client JAR (5.35.0 oder höher) im Laufzeit-Klassenpfad angeben, genauso wie Oracle- und IBM MQ-Treiber bereitgestellt werden.

Version 5.125.0 — Die wichtigsten Änderungen gegenüber 5.75.0

Komponente gapwalk-utility-pgm (5.125.0) — Nur z/OS

  • com.netfective.bluage.gapwalk.utility.sort.service.sum.AbstractSumKlasse:

    • Bugfix (z/OS): Behandelt den SUM-Feldüberlauf mit OPTION OVFLO=RC0 in DFSORT. Wenn OPTION OVFLO=RC0 gesetzt ist und ein SUM-Feld seine Kapazität überschreitet, wird der aktuelle akkumulierte Datensatz ausgegeben und eine neue Akkumulation beginnt mit dem aktuellen Datensatz, anstatt den Wert zu kürzen.

    Der Rückgabetyp der Methode wurde von zu geändert. addRecord(byte[]) void boolean Gibt true zurück, wenn Datensätze hinzugefügt wurden, false, wenn ein Überlauf aufgetreten ist und OPTION OVFLO=RC0 gesetzt wurde (Datensätze nicht hinzugefügt). Jeder benutzerdefinierte Code, der diese Methode überschreibt oder aufruft, muss möglicherweise entsprechend aktualisiert werden.

    Vor

    public void addRecord(byte[] record)

    Nach

    public boolean addRecord(byte[] record)

Komponente gapwalk-bluesam-core (5.125.0) — Nur z/OS

  • com.netfective.bluage.gapwalk.bluesam.core.storage.MetadataPersistenceSchnittstelle:

    • Leistungsoptimierung (z/OS): Verbessert die Leistung und behebt Probleme bei großen KSDS-Dataloadern, wenn der Anfügemodus aktiviert ist. Alle bekannten Implementierungen dieser Schnittstelle wurden entsprechend angepasst. Diese Schnittstelle ist aus BluSam Support-Gründen Teil der Blu Age-Laufzeit. Die bestehende 3-Parameter-Methode delegiert jetzt an die neue 4-Parameter-Version mit False als Standard. Sie sollte keine Auswirkungen auf den bestehenden Kundencode haben.

    Neue öffentliche Methode hinzugefügt boolean buildDatasetIndexes(CoreMetadata metadata, int indexingPageSizeInMb, long expectedRecordsCount, boolean isAppendMode);

  • Schnittstellecom.netfective.bluage.gapwalk.bluesam.LargeKeySequencedDataSet:

    • Leistungsoptimierung (z/OS): Verbessert die Leistung und behebt Probleme bei großen KSDS-Dataloadern, wenn der Anfügemodus aktiviert ist. Alle bekannten Implementierungen dieser Schnittstelle com.netfective.bluage.gapwalk.bluesam.core.LargeKSDS undcom.netfective.bluage.gapwalk.bluesam.core.LargeESDS, wurden entsprechend angepasst. Jede Klasse, die implementiert, LargeKeySequencedDataSet muss nun diese neue Methode implementieren. Bei Verhalten ohne Anhängen delegieren Sie an die bestehende Version mit 2 Parametern oder übergeben Sie intern false. isAppendMode

    Neue öffentliche Methode hinzugefügt void buildIndexes(int indexingPageSizeInMb, long expectedRecordsCount, boolean isAppendMode);

Komponente gapwalk-bluesam-services-pgsql (5.125.0) — Nur z/OS

  • com.amazonaws.bluage.gapwalk.bluesam.services.util.large.ReadWorkerSchnittstelle:

    • Leistungsoptimierung (z/OS): Verbessert die Leistung und behebt Probleme bei großen KSDS-Dataloadern, wenn der Anfügemodus aktiviert ist. Die einzige bekannte Implementierung,com.amazonaws.bluage.gapwalk.bluesam.services.pgsql.util.PgsqlReadWorker, wurde entsprechend angepasst. Jede Klasse, die implementiert, ReadWorker muss jetzt diese 3 Methoden implementieren.

    Neue öffentliche Methode hinzugefügt DataSource getDataSource();

    Neue öffentliche Methode hinzugefügt boolean isMultiSchemaEnabled();

    Neue öffentliche Methode hinzugefügt String getFileType();