クラス: Mongo::CsonTimeoutH older Private

継承:
オブジェクト
  • オブジェクト
すべて表示
定義:
lib/mongo/csot_timeout_holder.rb

Overview

このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。

このクラスは操作タイムアウトを保存し、対応するヘルパーメソッドを提供します。

既知のサブクラスを直接確認

操作::Context

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

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

コンストラクターの詳細

# 初期化(セッション: nil、 operation_timeouts: {}) = CsonTimeoutH older

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

CsonTimeoutH older の新しいインスタンスを返します。

[ソースを表示]

22
23
24
25
26
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 22

デフォルト 初期化(セッション: nil, operation_timeouts: {})
  @ deadline = explain_readline(operation_timeouts, セッション)
  @operation_timeouts = operation_timeouts
  @timeout_second = (@ deadline - Utils.MongoDB_time 場合 @ deadline)
end

インスタンス属性の詳細

オブジェクト(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。


28
29
30
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 28

デフォルト deadline
  @ deadline
end

# operation_timeouts = オブジェクト(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。


28
29
30
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 28

デフォルト operation_timeouts
  @operation_timeouts
end

# timeout_second = オブジェクト(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。


28
29
30
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 28

デフォルト timeout_second
  @timeout_second
end

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

# checkpoint。= オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

操作タイムアウトが期限切れになっているかどうかを確認し、該当する場合は適切なエラーが発生します。

次の値が発生します。

[ソースを表示]

84
85
86
87
88
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 84

デフォルト checkpoint_timeout.
  return ただし、 timeout_expired?

  発生 エラー::TimeoutError, " 操作は #{ timeout_second } 秒以上かかった "
end

#csot?true | false

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

操作で CSO が有効になっているかどうかを返します。

次の値を返します。

  • true | false

    操作で CSO が有効になっているかどうか

[ソースを表示]

31
32
33
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 31

デフォルト csot?
  !deadline.nil?
end

残り_timeout_ms = 整数 | 整数 | 整数 | 整数nil

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

操作のタイムアウト設定の残りのミリ秒を返します。タイムアウトが設定されていない場合、またはタイムアウトが 0(無制限)の場合、nil が返されます。

次の値を返します。

  • (Integer | nil)

    操作のタイムアウト設定の残りのミリ秒を返します。タイムアウトが設定されていない場合、またはタイムアウトが 0(無制限)の場合、nil が返されます。

[ソースを表示]

58
59
60
61
62
63
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 58

デフォルト retention_timeout_ms
   = retention_timeout_second
  return nil 場合 .nil?

  ( * 1_000).to_i
end

残り_timeout_ms = オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

[ソースを表示]

65
66
67
68
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 65

デフォルト retention_timeout_ms。
  checkpoint_timeout.
  retention_timeout_ms
end

残り_timeout_second = 浮動小数点数 | nil

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

操作のタイムアウトに設定された残りの秒数を返します。タイムアウトが設定されていない場合、またはタイムアウトが 0(無制限)の場合、nil が返されます。

次の値を返します。

  • (Float | nil)

    操作のタイムアウトに設定された残りの秒数を返します。タイムアウトが設定されていない場合、またはタイムアウトが 0(無制限)の場合、nil が返されます。

[ソースを表示]

44
45
46
47
48
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 44

デフォルト retention_timeout_second
  return nil ただし、 タイムアウト

  deadline - Utils.MongoDB_time
end

残りの_timeout_秒を使用します。 = オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

[ソースを表示]

50
51
52
53
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 50

デフォルト retention_timeout_second
  checkpoint_timeout.
  retention_timeout_second
end

# タイムアウト?= true | false

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

CSOT が有効になっていない場合は false を返し、CSO が 0(無制限)に設定されている場合は true を返します。

次の値を返します。

  • true | false

    CSOT が有効になっていない場合は false を返し、CSO が 0(無制限)に設定されている場合は true を返します。

[ソースを表示]

37
38
39
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 37

デフォルト タイムアウト
  ![ nil, 0 ].include?(@ deadline)
end

# timeout_expired は? = true | false

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

操作のタイムアウトが期限切れになっているかどうかを返します。 タイムアウトが設定されていない場合、このメソッドは false を返します。

次の値を返します。

  • true | false

    操作のタイムアウトが期限切れになっているかどうか。 タイムアウトが設定されていない場合、このメソッドは false を返します。

[ソースを表示]

72
73
74
75
76
77
78
# ファイル 'lib/mongo/cson_timeout_handler.rb' 行 72

デフォルト timeout_expired?
  場合 タイムアウト
    Utils.MongoDB_time >= deadline
  else
    false
  end
end