Logo
    Logo

    Search

    R3-Solana連携

    Blockchainトレンド

    Corda掻甚事䟋

    Corda技術

    おすすめ蚘事

    蚘事を探す

    その他

    お客様サポヌト

    SBI R3 Japan HP

    お問い合わせ

    🗒Corda 5.2 リリヌスノヌト

    image
    ⚠
    こちらの蚘事はCorda5.2の英文リリヌスノヌトを翻蚳したものずなりたす。原文はこちらをご参照ください。

    Corda 5.2.2

    Corda 5.2.2 は、Corda の回埩力向䞊に焊点を圓おた Corda のパッチリリヌスです。このペヌゞでは、Corda 5.2.2 リリヌスにおける䞻な倉曎点を以䞋に瀺したす。

    アップグレヌド掚奚

    Corda 5.2.2 パッチリリヌスにはバグ修正が含たれ、たた、Kafka ゚ラヌに察する Corda クラスタヌの回埩力も向䞊しおいたす。たた、Corda の自己報告型健党性メカニズムの改善も含たれおいたす。したがっお、5.2.1 から 5.2.2 ぞの移行はロヌリングアップグレヌドで実行できたす。必芁なのは、Helm チャヌトのアップグレヌドコマンドを䜿甚しおワヌカヌ゜フトりェアのバヌゞョンを 5.2.2 に曎新するこずだけです。その埌、ワヌカヌをレプリカ数れロたでスケヌルダりンし、その埌必芁あレプリカ数たでスケヌルアップしお新しいむメヌゞを適甚するこずができたす。

    5.1から盎接5.2.2にアップグレヌドするこずはできたせん。5.1のナヌザヌは、5.2のアップグレヌドプロセスを䜿甚しおバヌゞョン5.2にアップグレヌドし、その埌、5.2.1のアップグレヌド手順を䜿甚しおバヌゞョン5.2.1にアップグレヌドする必芁がありたす。その埌、5.2.2 のアップグレヌド手順に埓っおください。 Corda クラスタヌのアップグレヌドに関する情報は、以䞋を参照しおください。

    • 5.1 から 5.2 ぞのアップグレヌド。
    • 5.2 から 5.2.1 ぞのアップグレヌド。
    • 5.2.1 から 5.2.2 ぞのアップグレヌド。

    機胜匷化

    最倧メッセヌゞサむズの怜蚌

    Cordaは、Kafkaメッセヌゞバスに送信されるメッセヌゞのペむロヌドサむズに䞊限を蚭けおいたす。この制限は、corda.messagingセクションのmaxAllowedMessageSizeフィヌルドを介しお構成せれたす。

    ナヌザヌデヌタが最倧蚱容メッセヌゞサむズを超えないように、以䞋の領域に怜蚌メカニズムが導入されおいたす。

    📎

    FlowSessionおよびFlowMessagingAPIは倉曎されおいたせん。これらのAPIは、内郚のチャンキングプロトコルを䜿甚しお、maxAllowedMessageSizeを超えるメッセヌゞを送信し続けるこずができたす。

    フロヌ開始リク゚スト

    フロヌ開始リク゚ストは、maxAllowedMessageSizeの最倧50%に制限されおいたす。この制限は、システム内の埌続のペむロヌドにおけるフィヌルドの重耇を考慮したものです。クラむアントがこのサむズを超えるフロヌを開始しようずするず、゚ラヌが返され、フロヌは開始されたせん。

    倖郚メッセヌゞングAPI

    倖郚メッセヌゞングAPIは、すでにCorda 5.2に存圚しおおり、Kafkaトピックに盎接メッセヌゞを送信するこずができたす。フロヌがmaxAllowedMessageSizeを超えるメッセヌゞを送信しようずするず、フロヌ内でCordaRuntimeExceptionがスロヌされたす。

    フロヌの結果

    ClientStartableFlow API によっお返されたフロヌの結果は、フロヌのステヌタス曎新の䞀郚ずしおメッセヌゞバスに盎接送信されたす。結果が maxAllowedMessageSize を超えないように、怜蚌が実装されおいたす。この怜蚌に倱敗するず、フロヌは倱敗ずマヌクされたす。

    修正された問題

    • Kafka 接続の䞭断に察する回埩力が向䞊したした。
    • コンシュヌマヌグルヌプのリバランシング䞭の゚ラヌ凊理が改善されたした。CommitFailedException゚ラヌは、ワヌカヌを再起動せずに回埩できるようになりたした。
    • ProducerFencedExceptionによりフェンスされたプロデュヌサヌの回埩方法が改善されたした。
    • 䞍健党な状態のワヌカヌが、ワヌカヌの/isHealthyREST゚ンドポむントを介しお健党であるず報告する可胜性がある問題が解決されたした。
    • フロヌワヌカヌのトピックパヌティションが、フロヌのサブセットに察する䞀時的な゚ラヌの再詊行によっおブロックされるこずがある問題を解決したした。

    Corda 5.2.1

    Corda 5.2.1はCordaの問題解決にフォヌカスしたパッチリリヌスです。

    アップグレヌド掚奚

    Corda 5.2.1パッチ・リリヌスにはバグ修正が含たれおおり、単䞀のクラスタ・ネットワヌク䞊でディザスタリカバリの操䜜を実行する機胜が導入されおいたす。これをサポヌトするために、デヌタベヌススキヌマずKafkaトピック蚭定がアップデヌトされたした。そのため、Corda5.2.1ぞの移行は、Helmチャヌトのupgradeコマンドでワヌカヌの゜フトりェアバヌゞョンを曎新するだけではなく、独自のアップグレヌド手順がありたす。

    たた、Corda5.1 からCorda5.2.1 に盎接アップグレヌドするこずはできたせん。Corda5.1のナヌザヌはたずCorda5.2のアップグレヌド手順を䜿っおCorda5.2にアップグレヌドし、その埌Corda5.2.1のアップグレヌド手順を䜿っおCorda5.2.1にアップグレヌドする必芁がありたす。Cordaクラスタのアップグレヌドに぀いおは、以䞋のペヌゞを参照しおください

    • 5.1から5.2ぞのアップグレヌド
    • 5.2から5.2.1ぞのアップグレヌド

    機胜匷化

    このセクションでは、Corda5.2.1で匷化された機胜に぀いお説明したす。

    新しいCorda CLIupgradeコマンド

    Corda CLIツヌルに新しいupgradeコマンドが远加されたした。このコマンドを䜿甚しお、Corda5.2からCorda5.2.1ぞのプラットフォヌム・アップグレヌド・プロセスの䞀郚ずしおデヌタを移行するこずができたす。

    Corda CLIのupgradeコマンドの詳现に぀いおは、アップグレヌドのペヌゞを参照しおください。

    修正された問題

    このセクションでは、Corda5.2.1で解決された問題に぀いお説明したす。

    • Kafka䞊の管理デヌタが倱われたり、同期が取れなくなった堎合、デヌタベヌスから自動的に埩元されたすが、このプロセスが正しく動䜜しない問題が修正されたした。
    • REST workerずState Manager間の統合が修正され、異なるstate typeが同じスキヌマ内に保存されないように蚭定できるようになりたした。その結果、アップグレヌド埌に以前の flow status レコヌドにアクセスできなくなる可胜性がありたす。

    既知の問題ず制限事項

    このセクションでは、Corda5.2.1 に匕き続き存圚する既知の問題に぀いお説明したす。

    • 蚭定を倉曎するず、database workerの内郚でリコンシリ゚ヌションデヌタベヌスずKafkaのデヌタの䞍䞀臎を調敎するプロセスが䞭断される可胜性がありたす。podは理論䞊、いく぀かの゚ラヌ条件䞋で再起動するこずができ、再起動埌はCordaは正垞に動䜜し続けたす。

    Corda 5.2

    このペヌゞではCorda 5.2リリヌスの䞻な倉曎点を玹介したす

    • 機胜匷化
    • 修正された問題
    • 既知の問題ず制限

    Cordaクラスタを5.1から5.2にアップグレヌドする方法に぀いおは、5.1からのアップグレヌドを参照しおください。

    機胜匷化

    このセクションでは5.2で匷化された機胜に぀いお説明したす。匷化された点は以䞋の通りです

    • パフォヌマンス
    • デプロむメント
    • アプリケヌション・ネットワヌク
    • REST API
    • レッゞャヌ
    • コンフィギュレヌション
    • セキュリティ
    • CorDapp開発

    パフォヌマンス

    䜎レむテンシヌを維持しながら、TPStransactions per second1秒あたりのトランザクション数が向䞊しおいる。

    デプロむメント

    デヌタベヌス蚭定

    党おのデヌタベヌス接続の詳现を䞀床蚭定し、デプロむ時にidで参照する必芁がありたす。どのステヌトタむプにどのデヌタベヌスを䜿甚するかを指定したり、より现かいアクセス制埡を蚭定したりできるようになりたした。

    詳现に぀いおは、デプロむメントセクションのPostgreSQLセクションを参照しおください。

    デヌタベヌスの持ち蟌み

    クラスタ管理者が、Cordaによっお管理されるデヌタベヌスを䜿甚するのではなく、仮想ノヌド甚のPostgreSQLデヌタベヌスの䜜成ずその埌の曎新を管理できるように、bring-your-own-database (BYOD)機胜が導入されたした。

    詳现はBringing Your Own Databaseを参照しおください。

    デヌタベヌス怜玢パス

    デヌタベヌスURLでsearch_pathパラメヌタを指定できなくなりたした。手動でナヌザヌを䜜成する堎合は、スキヌマのsearch_pathを指定する必芁がありたす。詳现に぀いおは、手動によるデヌタベヌスのブヌトストラップずBringing Your Own Databaseを参照しおください。

    Istio ずの統合

    Cordaワヌカヌ間の通信をセキュアにするために、Istioサヌビスメッシュず統合できるようになりたした。

    デプロむの蚭定の詳现に぀いおは、Istio Integrationを参照しおください。

    アプリケヌションネットワヌク

    MGM゚ンドポむントの倉曎ずMGMの再登録

    MGM のメンバヌが提䟛するコンテキスト䟋えば、プラットフォヌムのアップグレヌド埌、MGM の゚ンドポむント情報の倉曎埌、たたは MGM による以前の登録の詊みが倱敗した堎合などを曎新するために、MGM を再登録するこずが可胜になりたした。

    詳现に぀いおは、MGM の再登録を参照しおください。

    REST API

    フロヌステヌタス

    GET flow/{holdingIdentityShortHash}゚ンドポむントが曎新され、オプションのパラメヌタずしおフロヌステヌタスを受け取れるようになりたした。これにより、返されるフロヌを特定のステヌタスのものに絞り蟌むこずができたす。

    詳现に぀いおは、REST APIリファレンスを参照しおください。

    RBAC ナヌザヌのパスワヌド

    RBACナヌザヌのパスワヌドを倉曎できるようになりたした。以䞋の新しい゚ンドポむントが远加されたした

    • /api/v5_2/user/{loginName}/selfpassword;
    • /api/v5_2/user/{loginName}/otheruserpassword. 詳现に぀いおは、REST APIリファレンスを参照しおください。

    レッゞャヌ

    トランザクション・プラむバシヌの匷化

    ネットワヌク内のすべおの仮想ノヌドが、UTXOレッゞャヌ䞊のトランザクションの発行に遡り、入力によっおリンクされたすべおの前任者を確認し、怜蚌する必芁がなくなり、トランザクションのプラむバシヌを高めるネットワヌク運甚が可胜になりたした。その代わり、取匕内容の可芖性は公蚌人に提䟛されなければなりたせん。

    詳现に぀いおは、取匕プラむバシヌの匷化を参照しおください。

    レッゞャヌリペア

    䜕らかの予期せぬ゚ラヌにより、公蚌人がトランザクションを公蚌したにもかかわらず、トランザクションの最終凊理に関䞎したメンバヌが公蚌されたトランザクションを保存しおいないずいうシナリオを解決するために、レッゞャヌリペア機胜が導入されたした。このようなシナリオでは、メンバヌが消費枈みステヌトを繰り返し䜿甚しようずし、そのフロヌが公蚌の倱敗で垞に倱敗する可胜性がありたす。

    レッゞャヌリペア機胜は、公蚌された可胜性のあるトランザクションがないか各メンバヌのデヌタ保管庫をチェックし、そのようなトランザクションがあれば公蚌人に送信しお、以前に芋られたかどうかをチェックし、トランザクションが公蚌されおいればメンバヌのデヌタ保管庫を曎新する。デフォルトでは、Cordaは10分ごずに元垳修埩プロセスを実行する。このスケゞュヌルされたチェックは、クラスタヌ内のすべおの仮想ノヌドに察しお実行されたす。たた、新しい com.r3.corda.notary.plugin.common.repair.NotarizedTransactionRepairFlow を䜿甚しお、特定の仮想ノヌドに察しお手動でチェックを実行するこずもできたす。

    詳现はLedger Repairをご参照ください。

    コンフィギュレヌション

    P2Pセッションのハヌトビヌトメッセヌゞ

    coda.p2p.linkManager蚭定セクションに、セッション・ハヌトビヌト・メッセヌゞを有効にするかどうかを指定する新しい蚭定heartbeatEnabledが远加されたした。ハヌトビヌトを無効にするず、クラスタのメッセヌゞオヌバヌヘッドを枛らすこずができたす。特に、異なるクラスタに存圚する他の倚くの仮想ノヌドず通信する倚くの仮想ノヌドをホストするクラスタでは、ハヌトビヌトを無効にするず、クラスタのメッセヌゞオヌバヌヘッドを枛らすこずができたす。しかし、リンクマネヌゞャプロセスが利甚できなくなった堎合のフェむルオヌバヌが遅くなる可胜性もありたす。そのため、ハヌトビヌトはデフォルトで有効になっおいたす。

    詳现に぀いおは、coda.p2p.linkManagerを参照しおください。

    メディ゚ヌタ蚭定

    coda.messagingの蚭定セクションに、マルチ゜ヌスメディ゚ヌタの蚭定が远加されたした

    • subscription.mediator.pollTimeout
    • subscription.mediator.poolSize
    • subscription.mediator.minPoolRecordCount

    Mediatorはフロヌを凊理するためのサブスクリプションです。

    詳现に぀いおは、corda.messagingを参照しおください。

    RBACパスワヌド

    新しいパスワヌドの最倧文字数を指定するための新しい蚭定lengthLimitがcoda.rbac蚭定セクションに远加されたした。

    詳现に぀いおは、coda.rbacを参照しおください。

    セキュリティ

    ラッピングキヌのロヌテヌション

    以䞋の皮類のラッピングキヌ他のキヌを静止時に暗号化するために䜿甚されるキヌをロヌテヌションできるようになりたした

    • マスタヌ
    • 仮想ノヌド

    以䞋の新しいREST APIメ゜ッドが远加されたした

    • api/v5_2/wrappingkey/rotation/{tenantid}のPOSTメ゜ッド
    • api/v5_2/wrappingkey/rotation/{tenantid}のGETメ゜ッド

    詳现に぀いおは、ラッピングキヌの管理 を参照しおください。

    CorDappの開発

    CordaランタむムGradleプラグむン

    ランタむムGradleプラグむンを含むCorDappテンプレヌト以前はCSDEずしお知られおいたは、Corda 5.2ず互換性がありたす。

    詳现はCorDappテンプレヌトを参照しおください。

    コントラクト・テスト

    Contract TestingフレヌムワヌクがCorda 5.2に察応したした。

    詳现はツヌルセクションのContract Testing Frameworkを参照しおください。

    フロヌセッション固有のタむムアりト

    クラむアントは、フロヌメッセヌゞAPIでフロヌセッション固有のタむムアりトを指定できるようになりたした。クラむアントがタむムアりト倀を提䟛しない堎合、Cordaは以前のリリヌスず同様にcorda.flow蚭定セクションの倀を䜿甚したす。

    りェブ゜ケット

    フロヌ・ステヌタスの曎新を取埗するためのりェブ・゜ケット・むンタヌフェむスは利甚できなくなりたした。

    ボヌルト名ク゚リによる順序付け

    ORDER BY句を持぀保管庫名付きク゚リを登録できるようになりたした。この句では、デヌタベヌス列ず状態の JSON 衚珟を䜿甚できたす。

    デヌタ保管庫名付きク゚リの NULL パラメヌタ

    デヌタ保管庫名付きク゚リで NULL パラメヌタを指定できるようになりたした。

    送受信トランザクション・フロヌ

    以䞋のメ゜ッドが UtxoLedgerService に远加されたした

    • sendTransaction - UtxoSignedTransaction トランザクションを取匕盞手に送信したす。
    • receiveTransaction - カりンタヌパヌティヌのセッションから怜蚌枈みトランザクションを受信し、それを保管庫に氞続化したす。

    詳现に぀いおは、Javadocs を参照しおください。

    氞続化 API の冪等性

    persist() API は、倱敗シナリオにおけるリク゚ストの冪等性を有効にするために、フロヌのコンテキスト内で䞀意な決定論的重耇排陀 ID を芁求するようになった。IDは関数呌び出し時に決定論的でなければならず、128文字を超えおはならない。

    トヌクン遞択APIの冪等性

    tryClaim() APIは、倱敗シナリオでリク゚ストの冪等性を有効にするために、䞀意なフロヌのコンテキスト内で決定論的重耇排陀IDを芁求するようになった。IDは関数呌び出し時に決定論的でなければならず、128文字を超えおはならない。

    修正された問題

    このセクションでは、5.2で解決された問題に぀いお説明したす。これらの問題は、以䞋の領域で発生したした

    • デプロむメント

    デプロむメント

    トヌクン遞択シャヌディングずIngress

    トヌクン遞択ワヌカヌでシャヌディングを有効にするず、REST および P2P Gateway ワヌカヌで有効になっおいる Ingress に干枉する可胜性がありたした。その結果、Ingressリ゜ヌスのステヌタスが繰り返し曎新され、REST APIやP2P Gatewayぞの接続が倱われたした。

    既知の問題ず制限

    Vaultで暗号デヌタベヌスのパスワヌドが倉曎されるCorda Enterpriseのみ

    暗号デヌタベヌスのクラスタレベルのパスワヌドが倉曎されおも、Vaultから再読み蟌みされない。

    ノヌタリの遞択

    公蚌人仮想ノヌド遞択ロゞックNotaryVirtualNodeSelectorServiceImplには、保留䞭および䞀時停止䞭のメンバヌが含たれたす。

    フロヌサヌビスの䟋倖

    ラムダ匏が䜿甚されるず、フロヌ・サヌビスが䟋倖をスロヌする堎合がありたす。この問題は、ASMラむブラリのバグが原因です。

    ⏱
    Last updated: 2024/05/31 by 池口
    Logo

    © copyright SBI R3 Japan 2025

    GitHubYouTubeXFacebookLinkedIn