node of the decentralized oracle network, bridging on and off-chain computation
OTHER License
Bot releases are visible (Hide)
Published by tyrion70 about 4 years ago
README.md
files: root, core,Previously when the node was overloaded with heads there was a minor possibility it could get backed up with a very large head queue, and become unstable. Now, we drop heads instead in this case and noisily emit an error. This means the node should more gracefully handle overload conditions, although this is still dangerous and node operators should deal with it immediately to avoid missing jobs.
A new environment variable is introduced to configure this, called ETH_HEAD_TRACKER_MAX_BUFFER_SIZE
. It is recommended to leave this set to the default of "3".
A new prometheus metric is also introduced to track dropped heads, called head_tracker_num_heads_dropped
. You may wish to set an alert on a rule such as increase(chainlink_dropped_heads[5m]) > 0
.
Published by tyrion70 about 4 years ago
Published by tyrion70 about 4 years ago
Published by tyrion70 about 4 years ago
Performance improvements when using BulletproofTxManager.
Published by tyrion70 about 4 years ago
Default max gas increased to 5000 Gwei
Added a workaround for Infura users who are seeing "error getting balance: header not found".
This behaviour is due to Infura announcing it has a block, but when we request our balance in this block, the eth node doesn't have the block in memory. The workaround is to add a configurable lag time on balance update requests. The default is set to 1 but this is configurable via a new environment variable ETH_BALANCE_MONITOR_BLOCK_DELAY
.
Published by tyrion70 about 4 years ago
fromAddresses
field in the ethtx task spec.fromAddress
in ethtx task specs has been deprecated. Please use fromAddresses
instead.IMPORTANT: The selection mechanism for keys has changed. When an ethtx task spec is not pinned to a particular key by defining fromAddress
or fromAddresses
, the node will now cycle through all available keys in round robin fashion. This is a change from the previous behaviour where nodes would only pick the earliest created key.
This is done to allow increases in throughput when a node operator has multiple whitelisted addresses for their oracle.
If your node has multiple keys, you will need to take one of the three following actions:
fromAddresses
If your node only has one key, no action is required.
Published by tyrion70 over 4 years ago
Published by tyrion70 over 4 years ago
Published by tyrion70 over 4 years ago
Published by tyrion70 over 4 years ago
ethtx
tasks now support a new parameter, minRequiredOutgoingConfirmations
which allows you to tune how many confirmations are required before moving on from an ethtx
task on a per task basis (only works with BulletproofTxManager). If it is not supplied, the default of MIN_OUTGOING_CONFIRMATIONS
is used (same as the old behaviour).ETH_FINALITY_DEPTH
admin withdraw
command has been removed. This was only ever useful to withdraw LINK if the Oracle contract was owned by the Chainlink node address. It is no longer recommended to have the Oracle owner be the chainlink node address.txs create
to send the amount in Eth not in Wei (as per the documentation)Published by tyrion70 over 4 years ago
This release contains a number of features aimed at improving the node's reliability when putting transactions on-chain.
setnextnonce
. This should never be necessary under normal operation and is included only for use in emergencies.ethtx
tasks now support two new parameters (only available with BulletproofTxManager):
minRequiredOutgoingConfirmations
- allows you to tune how many confirmations are required before moving on from an ethtx
task on a per task basis. If not supplied, the default of MIN_OUTGOING_CONFIRMATIONS
is used (same as the old behaviour).fromAddress
- enables multikey support by allowing you to peg a job spec to a particular ethereum address.head_tracker_heads_in_queue
- The number of heads currently waiting to be executed. You can think of this as the 'load' on the head tracker. Should rarely or never be more than 0.head_tracker_callback_execution_duration
- How long it took to execute all callbacks. If the average of this exceeds the time between blocks, your node could lag behind and delay transactions.ENABLE_BULLETPROOF_TX_MANAGER
- Experimental feature for transaction manager, do not enable!ETH_GAS_BUMP_PERCENT
default value has been increased from 10% to 20%ETH_GAS_BUMP_THRESHOLD
default value has been decreased from 12 to 3ETH_FINALITY_DEPTH
specifies how deep protection should be against re-orgs. The default is 50. It only applies if BulletproofTxManager is enabled. It is not recommended to change this setting.ETH_HEAD_TRACKER_HISTORY_DEPTH
specifies how many heads the head tracker should keep in the database. The default is 100. It is not recommended to change this setting.Published by tyrion70 over 4 years ago
Published by tyrion70 over 4 years ago
Published by tyrion70 over 4 years ago
None
created_at
and updated_at
to all tables allowing for better historical insights. This migration may take a minute or two on large databases.Published by tyrion70 over 4 years ago
New cron jobs MUST now include time zone. For example if you want your jobs to run in UTC:
CRON_TZ=UTC * * * * *
.
A full list can be found here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones. You need to specify the TZ Database name.
Previously, jobs specified without a time zone would run in the server's native time zone, which in most cases is UTC but this was never guaranteed. This behaviour is now disabled for new jobs, because it is ambiguous.
Old jobs will continue to run AS IS and run on the servers timezone.
There a number of database migrations included in this release as part of our ongoing effort to make the node even more reliable and stable, and build a firm foundation for future development.
If you have made custom edits to your database, the migration might fail. If this happens you will need to fix the offending data manually and run the migration again.
If you have very large tables, these migrations may take several minutes.
Published by samsondav over 4 years ago
Chainlink 0.8.2 is a minor release
GAS_UPDATER_ENABLED
- turns on the automatic gas updater if set to trueGAS_UPDATER_BLOCK_DELAY
- number of blocks that the gas updater trails behind headGAS_UPDATER_BLOCK_HISTORY_SIZE
- number of past blocks to keep in memoryGAS_UPDATER_TRANSACTION_PERCENTILE
- percentile gas price to choose. E.g. if the block history contains four transactions with gas prices [100, 200, 300, 400]
then picking 25 for this number will give a value of 200. If the calculated gas price is higher than ETH_GAS_PRICE_DEFAULT
then the higher price will be used as the base price for new transactions. Node operators are encouraged to reach out to us before experimenting with these settings.Delete Run
section in Configuration
section of the UI has been fixed and extended so the buttons properly remove runs and all associated data. Use this if you want to greatly reduce the size of your database. Don't forget to take a backup first.This release contains some database migrations that help with the performance improvements. We tested these migrations on our production node and it took less than 10 seconds. It may take longer if you have a very large database (millions of rows). These migrations run on application start, so be prepared for that.
Also note that as part of these migrations we clean up and remove some bad data. Be sure to take a full database backup before upgrading.
Published by tyrion70 over 4 years ago
Chainlink 0.8.1 is a hotfix release. Any node operators on 0.8.0 are encourage to upgrade as soon as possible.
context cancelled
Published by samsondav over 4 years ago
Chainlink 0.8.0 is a major release.
Published by samsondav over 4 years ago
Release 0.7.8 is a bugfix release that addresses several issues that can surface under very high network congestion:
./chainlink local rebroadcast-transactions
that allows node operators to manually resubmit pending transactions with a configured gas pricePublished by samsondav over 4 years ago