クラス: Mongo::Server:: Description::feature

継承:
オブジェクト
  • オブジェクト
すべて表示
定義:
build/ruby-Driver-v 2.19 /lib/mongo/server/description/features.rb

Overview

特定のサーバーがサポートする機能に関する動作を定義します。

以来

  • 2.0.0

定数の概要の削減

マッピング =

機能とそれが表示されるワイヤプロトコルのバージョンのリスト。

ワイヤプロトコルのバージョンは、サーバーのリリースに次のようにマッピングされます。

  • 2 => 2.6

  • 3 => 3.0

  • 4 => 3.2

  • 5 => 3.4

  • 6 => 3.6

  • 7 => 4.0

  • 8 => 4.2

  • 9 => 4.4

  • 13 => 5.0

  • 14 => 5.1

  • 17 => 6.0

以来

  • 2.0.0

{
  merge_out_on_secondary: 13,
  get_more_comment: 9,
  retryable_write_error_level 9,
  commit_uorum: 9,
  # 4.2より古いサーバー バージョンではオプションは確実に検証されません
  # findAndModify 操作中にクライアントによって提供され、次が必要です:
  これらのオプションが提供されたときにクライアント側のエラーを発生させるようにします。
  find_and_modify_option_validation: 8,
  トランザクション: 7,
  SCRAM_sha_ 256 : 7,
  array_filters: 6,
  op_msg: 6,
  セッション: 6,
  collation: 5,
  max_staleness: 5,
  # 3.4より古いサーバー バージョンではオプションは確実に検証されません
  更新/削除操作中にクライアントによって提供される#。
  これらのオプションが提供されたときにクライアント側のエラーを発生させるようにします。
  update_delete_option_validation: 5,
  find_command: 4,
  list_collections: 3,
  list_indexes: 3,
  SCRAM_sha_ 1 : 3,
  write_command: 2,
  ユーザー_情報: 2,
}.freeze
SERVER_TOO_ old =

このバージョンのドライバーではサーバーが古すぎる場合のエラー メッセージ。

以来

  • 2.5.0

" (%s)のサーバーはワイヤバージョン(%s)を報告しますが、このバージョンの Ruby ドライバーは" +
には少なくとも(%s)が必要です。
Driver_TOO_ old =

ドライバーがサーバーのバージョンに対して古すぎる場合のエラー メッセージ。

以来

  • 2.5.0

" (%s)のサーバーにはワイヤバージョン(%s)が必要ですが、このバージョンの Ruby ドライバーは" +
は(%s)までのみをサポートします。
Driver_WRE_VERSIONS =

このバージョンのドライバーがサポートするワイヤプロトコルのバージョン。

以来

  • 2.0.0

(6..21).freeze

インスタンス属性の概要を折りたたむ

インスタンス メソッドの概要を折りたたむ

コンストラクターの詳細

#初期化(server_wire_versions、アドレス = nil) = nil) =機能

機能を初期化します。

例:

機能を初期化します。

Features.new(0..3)

パラメーター:

  • server_wire_versions 範囲

    サーバーはワイヤバージョンをサポートしていました。

以来

  • 2.0.0



117
118
119
120
121
122
123
124
125
126
127
128
129
130
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/server/description/features.rb', 行117

デフォルト 初期化(server_wire_versions, address = nil)
  場合 server_wire_versions.min.nil?
    発生 ArgumentError, " server_wire_versions の最小値は nil "
  end
  場合 server_wire_versions.最大.nil?
    発生 ArgumentError, " server_wire_versions の最大値は nil "
  end
  @server_wire_versions = server_wire_versions
  @address = address

  場合 mongo::Lint.有効か
    freeze
  end
end

インスタンス属性の詳細

# server_wire_versions =範囲(読み取り専用)

server_wire_versions サーバーのサポートされているワイヤバージョンを返します。

次の値を返します。

  • 範囲

    server_wire_versions サーバーのサポートされているワイヤバージョン。

以来

  • 2.0.0



106
107
108
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/server/description/features.rb', 行106

デフォルト server_wire_versions
  @server_wire_versions
end

インスタンス メソッドの詳細

# checkpoint_Driver_support =オブジェクト

ドライバーがサポートするワイヤ間で重複があることを確認

version range and the server wire version range.

例:

ワイヤバージョンの重複を確認します。

features.check_driver_support!

次の値が発生します。

  • Error::Unsupportedfeature

    ワイヤバージョン範囲がドライバーによってカバーされていない場合。

以来

  • 2.5.1



142
143
144
145
146
147
148
149
150
151
152
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/server/description/features.rb', 行142

デフォルト checkpoint_ドライバ_サポート。
  場合 Driver_WIRE_VERSIONS.min > @server_wire_versions.最大
    発生 エラー::サポートされていない機能.新着情報(SERVER_TOO_ old % [@address,
                                                           @server_wire_versions.最大,
                                                           Driver_WIRE_VERSIONS.min])
  elsif Driver_WIRE_VERSIONS.最大 < @server_wire_versions.min
    発生 エラー::サポートされていない機能.新着情報(Driver_TOO_ old % [@address,
                                                           @server_wire_versions.min,
                                                           Driver_WIRE_VERSIONS.最大])
  end
end