Module: InfluxDB

Defined in:
lib/influxdb/errors.rb,
lib/influxdb/client.rb,
lib/influxdb/config.rb,
lib/influxdb/logging.rb,
lib/influxdb/version.rb,
lib/influxdb/max_queue.rb,
lib/influxdb/query/core.rb,
lib/influxdb/query/user.rb,
lib/influxdb/writer/udp.rb,
lib/influxdb/client/http.rb,
lib/influxdb/point_value.rb,
lib/influxdb/query/series.rb,
lib/influxdb/writer/async.rb,
lib/influxdb/query/builder.rb,
lib/influxdb/query/cluster.rb,
lib/influxdb/query/database.rb,
lib/influxdb/query/continuous_query.rb,
lib/influxdb/query/retention_policy.rb

Overview

:nodoc:

Defined Under Namespace

Modules: HTTP, Logging, Query, Writer Classes: AuthenticationError, Client, Config, ConnectionError, Error, JSONParserError, MaxQueue, PointValue, QueryError, SeriesNotFound

Constant Summary collapse

RECOVERABLE_EXCEPTIONS =

When executing queries via HTTP, some errors can more or less safely be ignored and we can retry the query again. This following exception classes shall be deemed as “safe”.

Taken from: github.com/lostisland/faraday/blob/master/lib/faraday/adapter/net_http.rb

[
  Errno::ECONNABORTED,
  Errno::ECONNREFUSED,
  Errno::ECONNRESET,
  Errno::EHOSTUNREACH,
  Errno::EINVAL,
  Errno::ENETUNREACH,
  Net::HTTPBadResponse,
  Net::HTTPHeaderSyntaxError,
  Net::ProtocolError,
  SocketError,
  (OpenSSL::SSL::SSLError if defined?(OpenSSL)),
].compact.freeze
NON_RECOVERABLE_EXCEPTIONS =

Exception classes which hint to a larger problem on the server side, like insuffient resources. If we encouter on of the following, wo _don’t_ retry a query but escalate it upwards.

[
  EOFError,
  Zlib::Error,
].freeze
NON_RECOVERABLE_MESSAGE =
"The server has sent incomplete data" \
" (insufficient resources are a possible cause).".freeze
VERSION =
"0.3.15".freeze