Module: Arango::Database::Replication

Included in:
Arango::Database
Defined in:
lib/arango/database/replication.rb

Overview

Arango Database Replication

Instance Method Summary collapse

Instance Method Details

#cluster_inventory(include_system: nil) ⇒ Object



17
18
19
20
# File 'lib/arango/database/replication.rb', line 17

def cluster_inventory(include_system: nil)
  query = { includeSystem: include_system }
  request("GET", "_api/replication/clusterInventory", query: query)
end

#inventory(batch_id:, global: nil, include_system: nil) ⇒ Object

REPLICATION ===



8
9
10
11
12
13
14
15
# File 'lib/arango/database/replication.rb', line 8

def inventory(batch_id:, global: nil, include_system: nil)
  query = {
    batchId: batch_id,
    global: global,
    includeSystem: include_system
  }
  request("GET", "_api/replication/inventory", query: query)
end

#last_tickObject



52
53
54
# File 'lib/arango/database/replication.rb', line 52

def last_tick
  request("GET", "_api/wal/lastTick")
end

#loggerObject



22
23
24
# File 'lib/arango/database/replication.rb', line 22

def logger
  request("GET", "_api/replication/logger-state")
end

#logger_first_tickObject



36
37
38
# File 'lib/arango/database/replication.rb', line 36

def logger_first_tick
  request("GET", "_api/replication/logger-first-tick", key: :firstTick)
end

#logger_follow(from: nil, to: nil, chunk_size: nil, include_system: nil) ⇒ Object



26
27
28
29
30
31
32
33
34
# File 'lib/arango/database/replication.rb', line 26

def logger_follow(from: nil, to: nil, chunk_size: nil, include_system: nil)
  query = {
    from: from,
    to:   to,
    chunkSize:     chunk_size,
    includeSystem: include_system
  }
  request("GET", "_api/replication/logger-follow", query: query)
end

#logger_range_tickObject



40
41
42
# File 'lib/arango/database/replication.rb', line 40

def logger_range_tick
  request("GET", "_api/replication/logger-tick-ranges")
end

#rangeObject



48
49
50
# File 'lib/arango/database/replication.rb', line 48

def range
  request("GET", "_api/wal/range")
end

#replication(master:, adaptive_polling: nil, auto_resync: nil, auto_resync_retries: nil, chunk_size: nil, connect_timeout: nil, connection_retry_wait_time: nil, idle_max_wait_time: nil, idle_min_wait_time: nil, include_system: true, incremental: nil, initial_sync_max_wait_time: nil, max_connect_retries: nil, request_timeout: nil, require_from_present: nil, restrict_collections: nil, restrict_type: nil, verbose: nil) ⇒ Object



69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/arango/database/replication.rb', line 69

def replication(master:, adaptive_polling: nil, auto_resync: nil, auto_resync_retries: nil, chunk_size: nil, connect_timeout: nil,
                connection_retry_wait_time: nil, idle_max_wait_time: nil, idle_min_wait_time: nil, include_system: true, incremental: nil,
                initial_sync_max_wait_time: nil, max_connect_retries: nil, request_timeout: nil, require_from_present: nil,
                restrict_collections: nil, restrict_type: nil, verbose: nil)
  Arango::Replication.new(slave: self, master: master, adaptive_polling: adaptive_polling, auto_resync: auto_resync,
                          auto_resync_retries: auto_resync_retries, chunk_size: chunk_size, connect_timeout: connect_timeout,
                          connection_retry_wait_time: connection_retry_wait_time, idle_max_wait_time: idle_max_wait_time,
                          idle_min_wait_time: idle_min_wait_time, include_system: include_system, incremental: incremental,
                          initial_sync_max_wait_time: initial_sync_max_wait_time, max_connect_retries: max_connect_retries,
                          request_timeout: request_timeout, require_from_present: require_from_present,
                          restrict_collections: restrict_collections, restrict_type: restrict_type, verbose: verbose)
end

#replication_as_master(slave:, adaptive_polling: nil, auto_resync: nil, auto_resync_retries: nil, chunk_size: nil, connect_timeout: nil, connection_retry_wait_time: nil, idle_max_wait_time: nil, idle_min_wait_time: nil, include_system: true, incremental: nil, initial_sync_max_wait_time: nil, max_connect_retries: nil, request_timeout: nil, require_from_present: nil, restrict_collections: nil, restrict_type: nil, verbose: nil) ⇒ Object



82
83
84
85
86
87
88
89
90
91
92
93
# File 'lib/arango/database/replication.rb', line 82

def replication_as_master(slave:, adaptive_polling: nil, auto_resync: nil, auto_resync_retries: nil, chunk_size: nil, connect_timeout: nil,
                          connection_retry_wait_time: nil, idle_max_wait_time: nil, idle_min_wait_time: nil, include_system: true,
                          incremental: nil, initial_sync_max_wait_time: nil, max_connect_retries: nil, request_timeout: nil,
                          require_from_present: nil, restrict_collections: nil, restrict_type: nil, verbose: nil)
  Arango::Replication.new(master: self, slave: slave, adaptive_polling: adaptive_polling, auto_resync: auto_resync,
                          auto_resync_retries: auto_resync_retries, chunk_size: chunk_size, connect_timeout: connect_timeout,
                          connection_retry_wait_time: connection_retry_wait_time, idle_max_wait_time: idle_max_wait_time,
                          idle_min_wait_time: idle_min_wait_time, include_system: include_system, incremental: incremental,
                          initial_sync_max_wait_time: initial_sync_max_wait_time, max_connect_retries: max_connect_retries,
                          request_timeout: request_timeout, require_from_present: require_from_present,
                          restrict_collections: restrict_collections, restrict_type: restrict_type, verbose: verbose)
end

#server_idObject



44
45
46
# File 'lib/arango/database/replication.rb', line 44

def server_id
  request("GET", "_api/replication/server-id", key: :serverId)
end

#tail(from: nil, to: nil, global: nil, chunk_size: nil, server_id: nil, barrier_id: nil) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/arango/database/replication.rb', line 56

def tail(from: nil, to: nil, global: nil, chunk_size: nil,
         server_id: nil, barrier_id: nil)
  query = {
    from: from,
    to: to,
    barrierID: barrier_id,
    chunkSize: chunk_size,
    global: global,
    serverID: server_id,
  }
  request("GET", "_api/wal/tail", query: query)
end