SNOWFLAKE NEW FEATURE / PRACTICAL BRIEF

Node.js Driver 3.2.0でCRL検証を高速化し、接続・転送の安定性を改善

Node.js Driver (v3.2.0)

日付不明機能アップデート

Node.js Driver利用者は、CRL検証の高速化と認証・ファイル転送関連の修正を適用し、接続初期化を短縮できます。

Node.js Driver 3.2.0は、2026年8月18日に公開されたリリースです。証明書失効確認で使用するCRL署名検証を、上流テストで約635ミリ秒から約6ミリ秒へ高速化しました。Azureの非商用クラウドでのPUT/GET、TypeScriptのfetchResult()型、トークンキャッシュなどの不具合も修正しています。RowStatement.fetchRows()は非推奨となり、次のメジャーバージョンで削除予定です。

CHANGE TYPE
機能アップデート
PRIMARY AUDIENCE
Node.jsアプリケーション開発チーム
AVAILABILITY
公開日: 2026年8月18日
01

なぜ重要か

証明書失効確認を有効にした接続では、CRL検証処理の短縮が接続経路に反映されます。また、Azure非商用クラウドのファイル転送失敗や、複数アカウント・複数ロール環境でのトークンキャッシュキー衝突が修正され、該当環境の既知の問題を回避できます。既存コードではfetchRows()からstreamRows()への移行準備が必要です。

02

対象となるチーム

  • Node.jsアプリケーション開発チーム
  • Snowflake接続・認証を管理するプラットフォームチーム
  • Azure非商用クラウド上でPUT/GETを運用するチーム
  • TypeScriptライブラリやデータアクセス基盤の保守担当者
03

提供条件

  • 公開日: 2026年8月18日
  • 提供ステータス: リリースノートに記載なし
  • エディション: リリースノートに記載なし
  • リージョン: リリースノートに記載なし
  • 前提条件: v3.0.0以降の最小サポートNode.jsバージョンは20で、Node.js 18は公式サポート対象外
04

ユースケース

  • CRLベースの証明書失効確認を有効にした本番接続で、接続初期化時間を短縮する。
  • Azureの非商用クラウドでPUT/GETを利用するアプリケーションに適用し、ファイル転送失敗の修正を取り込む。
  • 複数アカウント・複数ロールを扱うサービスで、トークンキャッシュキー衝突の修正を適用する。
  • TypeScriptでconnection.fetchResult()を利用するコードの型定義を更新し、queryIdを使った呼び出しを正しく記述する。
  • fetchRows()を使用しているコードを確認し、streamRows()への移行計画を立てる。
05

仕組みと使い方

利用時は、アプリケーションのNode.js Driverを3.2.0へ更新し、既存の接続、認証、PUT/GET、結果取得処理を回帰検証します。CRL署名検証の高速化は、証明書失効確認が有効な接続経路にのみ適用されます。行取得処理でRowStatement.fetchRows()を使用している場合は、streamRows()への置き換えを検討してください。getRowValue()とgetRowValueAsString()はColumnインターフェースから削除されており、ユーザーが参照する行では従来から実行時エラーになる仕様でした。リリースノートにはインストールコマンドやSQL例は記載されていません。

06

導入ステップ

  1. アプリケーションのNode.jsバージョンが20以上であることを確認する。
  2. 依存関係で使用しているNode.js Driverのバージョンと、fetchRows()など削除・非推奨APIの利用箇所を棚卸しする。
  3. 検証環境で3.2.0へ更新し、CRL有効接続、通常接続、認証、クエリ実行、結果取得を確認する。
  4. Azure非商用クラウドを利用している場合は、PUT/GETの実ファイル転送を検証する。
  5. 問題がなければ、段階的に本番へ展開し、接続時間、転送エラー、認証エラー、プロセス異常終了を監視する。
07

運用上の注意

  • fetchRows()は非推奨で、次のメジャーバージョンで削除予定です。新規実装や改修ではstreamRows()を優先してください。
  • compressFileWithGZIPはPUT対象のソースファイルを読めない場合のNode.jsプロセスクラッシュが修正されましたが、ファイルパスや権限の問題自体が解消されるわけではありません。
  • CRL検証の性能値は上流テストの目安であり、実環境の接続時間や改善幅を保証するものではありません。
  • getRowValue()およびgetRowValueAsString()の削除により、これらを型や独自ラッパーで参照しているコードは確認が必要です。
08

制約事項

  • エディション別、リージョン別の提供条件はリリースノートに記載されていません。
  • Preview機能であるとの記載はありませんが、一般提供ステータスも明記されていません。
  • CRL署名検証の高速化は、証明書失効確認が有効な接続パスに限られます。
  • Node.js 18はv3.0.0以降、公式サポート対象外です。動作する可能性があっても、SnowflakeによるテストやNode.js 18固有問題の調査・修正は行われません。
  • fetchRows()の削除は次のメジャーバージョン予定であり、3.2.0で直ちに削除されたわけではありません。
09

次に確認すること

  • SnowflakeのNode.js Driver公式ドキュメントで、3.2.0のインストール方法とstreamRows()のAPI仕様を確認する。
  • 自社コードと依存ライブラリでfetchRows()、getRowValue()、getRowValueAsString()の参照有無を検索する。
  • CRL有効時の接続性能、Azure非商用クラウドのPUT/GET、複数アカウント・ロールのトークンキャッシュを検証環境で測定する。
  • Node.js Driverのサポートポリシーと、利用中のSnowflakeアカウント・リージョンに関する適用条件を公式情報で確認する。

公式情報

仕様・提供条件は更新される可能性があります。導入前に必ず公式リリースノートを確認してください。

https://docs.snowflake.com/release-notes/clients-drivers/nodejs-2026