Repository navigation
Expand file tree
/
Copy pathexample.cloudbreak.index.toml
More file actions
122 lines (109 loc) · 4.8 KB
/
Copy pathexample.cloudbreak.index.toml
File metadata and controls
122 lines (109 loc) · 4.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# The buffer size for queuing finalize slot events
finalize-slot-buffer-size = 1000
accounts-owner-map-enabled = false
# Finalized slots between cleanup drains. 1 drains every slot. Higher values coalesce repeat
# touches into one delete and retain more account versions for reads to scan past.
cleanup-interval-slots = 1
# Keys per cleanup statement. Caps how long one DELETE holds its row locks.
cleanup-batch-size = 500
# Maintains the running total-supply figure served by getSupply from a bounded
# hot-accounts cache. Requires an empty [programs] filter,
# accounts-owner-map-enabled = false, owner partitioning off, and [snapshot].
# Runs on a dedicated supply-only instance. Set it together with the API
# [supply] section.
# [supply]
# enabled = false
# Accounts kept resident in the hot-accounts map (~65 bytes each). Stake
# accounts live in the non-circulating stake map instead.
# hot-accounts = 1000000
[snapshot]
accounts-file-concurency = 32
# Max consecutive gap-filling iterations allowed to fail fetching a covering
# snapshot from the tracker before the indexer gives up and exits. Resets on the
# first successful fetch. (~30s per attempt.)
gap-fill-max-snapshot-retries = 10
[snapshot.pg-indexes]
idx_snapshot_accounts_pubkey = false
idx_snapshot_accounts_pubkey_slot = true
idx_snapshot_accounts_token_mint = true
idx_snapshot_accounts_token_owner = true
idx_snapshot_accounts_token_owner_mint = true
idx_snapshot_accounts_token_delegate = true
# If this section is not present, the indexer will not download or process any snapshot
[snapshot.tracker_endpoint]
endpoint = "http://localhost:8458"
[database]
url = "postgres://cloudbreak:cloudbreak@localhost:5432/cloudbreak"
max-connections = 10
min-connections = 1
connect-timeout = "30s"
idle-timeout = "10m"
acquire-timeout = "60s"
max-lifetime = "30m"
sqlx-logging = true
schema-search-path = "public"
test-before-acquire = true
connect-lazy = false
max-db-errors-threshold = 100
[grpc]
endpoint = "http://localhost:8877"
x-token = "<YOUR_TOKEN>"
timeout = 60
chunk-size = 1000
max-chunk-bytes-data = 2097152
# The max number of grpc errors before trying to reconnect
# (it will always reconnect on a single stream `None`)
max-grpc-errors = 1
# The buffer size for queuing subscription events
channel-size = 1000
# How long to keep retrying (re)connection/subscription before giving up and panicking
reconnect-give-up = "600s"
# Delay between (re)connection/subscription attempts
reconnect-backoff = "5s"
# How long a reconnection keeps replaying from the last received slot before dropping from_slot
reconnect-from-slot-retain = "300s"
[metrics]
host = "0.0.0.0"
port = 8875
[programs]
include = ["Stake11111111111111111111111111111111111111"]
# getLargestAccounts (GLA) and getTokenLargestAccounts (GTLA) are enabled
# independently. Each is on only when its section is present with enabled = true,
# and the co-deployed API config must carry the same enabled sections. Both are
# commented out below because this example filters [programs] to Stake, which
# neither supports. Uncomment a section and meet its prerequisites to enable.
# GLA: the native-SOL top plus the circulating and non-circulating class tops
# (the filter param). Prerequisites: [programs] unfiltered (include = []) and
# the [snapshot] section.
# [largest-accounts]
# enabled = true
# accounts-per-mint = 100 # in-memory holders per top, of which the top 20 are persisted and served
# prune-interval-slots = 20 # prune stale rows every N finalized slots, off the finalize critical path
# GTLA: one persisted top per mint in tracked-mints. Prerequisites: the token
# programs (Tokenkeg / Token-2022) indexed, meaning [programs] unfiltered or an
# include-list containing both, and the [snapshot] section. Does not need the
# owner map or the non-circulating tracker.
# [token-largest-accounts]
# enabled = true
# accounts-per-mint = 100
# prune-interval-slots = 20
# tracked-mints = [
# "kinXdEcpDQeHPEuQnqmUgtYykqKGVFq6CeVX5iAHJq6", # KIN
# "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", # USDC
# "So11111111111111111111111111111111111111112", # wSOL
# "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB", # USDT
# "6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN", # TRUMP
# "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263", # BONK
# ]
# When set, the indexer runs in consistency-check mode: it indexes until the
# limit is reached, compares its computed LtHash against the snapshot's, and
# exits 0 on match / 1 on mismatch. Provide either time-limit or slot-limit.
# [hash-checker]
# time-limit = "4h"
# slot-limit = 416520592
# Fills and maintains the mints table for the API [mint-cache] (~4.6 GB in memory).
# Requires the [snapshot] section and both token programs in [programs].
# [mint-cache]
# enabled = true
# Slots between two writes of the changed mints to the mints table.
# db-write-interval-slots = 1000