Skip to content

v0.9.0-beta9

Compare
Choose a tag to compare
@sduchesneau sduchesneau released this 21 Apr 15:52
· 58 commits to develop since this release

System Administration Changes

Added

  • Added support for environment variable EOSWS_PUSH_V1_OUTPUT=true that forces push-transaction (guarantee:in-block) to output the same content format as nodeos 2.0.x (with Inlines)
  • Added support for environment variable DSTORE_S3_BUFFERED_READ=true that forces reading S3 files (ex: blocks) ahead of processing, useful when S3 provider has trouble keeping long connections alive.
  • Added support for looking up irreversible blocks on blockmeta (when the LIB was stuck for a while) from tokenmeta and trxdb-loader. They now use '--common-blockmeta-addr' flag if available
  • Added --common-chain-core-symbol flag to define actual chain core symbol in the form <precision>,<symbol code> defaults to 4,EOS by default.
  • Added --tokenmeta-readiness-max-latency with default=5m, now tokenmeta will show as "NotServing" through grpc healthcheck if last processed block (HEAD) is older than this. Value of 0 disables that feature.
  • Added --relayer-source-request-burst with default=90 to allow a relayer connecting to another relayer to request a 'burst'
  • Added --statedb-disable-indexing to disable indexing of tablet and injecting data into storage engine developer option, don't use that in production.
  • Added --eosws-nodeos-rpc-push-extra-addresses to allow providing a list of backup EOS addresses when push-transaction does not succeed in getting the transaction inside a block (with push_guarantee)
  • Added --eosws-max-stream-per-connection to allow changing how many stream can be active at the same time for a given WebSocket connection, defaults to 12 which was the hard-coded value.
  • Added --eosws-statedb-proxy-retries, Number of time to retry proxying a request to statedb before failing (default 2)
  • Added --eosws-nodeos-rpc-proxy-retries, Number of time to retry proxying a request to statedb before failing (default 2)
  • Added --mindreader-max-console-length-in-bytes which is the limit in bytes that we allow action trace's console output to be before truncating them.
  • Environment variable MINDREADER_MAX_TOKEN_SIZE can now be set to override bufio.Scanner() max token size (default 52428800, i.e. 50Mb) for EOSIO chains with huge transactions
  • Flag --accounthist-mode to specific the accounthist mode of operation
  • Added tools check accounthist-shards to
  • Flag --common-include-filter-expr, --common-exclude-filter-expr, --common-system-actions-include-filter-expr can optionally specify multiple values, separated by ;;; and prefixed by #123; where 123 is a block number at which we stat applying that filter
  • Added accounthist tools allows you to scan and read accounts dfuseeos tools accounthist read ... dfuseeos tools accounthist scan ...
  • Flag --search-router-truncation-low-block-num to make the router aware of lower-block-truncation and serve requests accordingly
  • Flag --mindreader-oneblock-suffix that mindreaders can each write their own file per block without competing for writes. #140
  • Flag --eosws-disabled-messages a comma separated list of ws messages to disable.
  • Flag --common-system-shutdown-signal-delay, a delay that will be applied between receiving SIGTERM signal and shutting down the apps. Health-check for eosws and dgraphql will respond 'not healthy' during that period.

Removed

  • Breaking Change Removed --eosq-price-ticker-name flag, if you were using this flag, please use --common-chain-core-symbol instead to define it.
  • Removed dgraphql-graceful-shutdown-delay, it was a left-over, unused. Must use --common-system-shutdown-signal-delay now
  • Removed relayer-max-drift (now dependent on a new condition of presence of a "block hole", and no new block sent for 5 seconds)
  • Removed relayer-init-time (no need for it with this new condition ^)

Changed

  • The --eosq-available-networks logo field each network now has a maximum height of 70px.
  • The --eosq-available-networks config of each network now accepts a logo_text that when present, is displayed alongside the logo field. This field is taken into consideration only when logo is defined. In this mode, the logo is fixed to 48px x 48px. If the logo_text value is eosq, this is rendered like the standard eosq logo.
  • Breaking Change Changes to --eosq-available-networks config might be required around the logo field each network. You must now remove the logo field if it's not pointing to an existing image otherwise, the logo will not be rendered correctly.
  • Applying a block filter over previously-filtered-blocks does not panic anymore, it applies the new filter on top of it, only if that specific filter has never been applied before. Applied filters definitions are concatenated in the block metadata, separated by ;;;
  • Default trxdb-loader-batch-size changed to 100, Safe to do so because it does not batch when close to head.
  • Improved relayer mechanics: replaced "max drift" detection by "block hole" detection and recovery action is now to restart the joining source (instead of shutting down the process)
  • Improved dfuseeos tools check statedb-reproc-injector output by showing all shard statistics (and not just most highest block).
  • Breaking Change Changed --statedb-enable-pipeline flag to --statedb-disable-pipeline to make it clearer that it should not be disable, if you were using the flag, change the name and invert the logical value (i.e. --state-enable-pipeline=false becomes --state-disable-pipeline=true)

Fixed

  • Fixed validation of transaction ID passed to WebSocket get_transaction API, the prior validation was too permissive.
  • Fixed a bug making search-forkresolver useless, because ignored by search-router.
  • Fixed a bug on StateDB server not accepting symbol and symbol code as scope parameter value.
  • Fixed shutdown on dgraphql (grpc/http) so it closes the active connections a little bit more gracefully.
  • Fixed a bug in TiKV store implementation preventing it to delete keys correctly.
  • Fixed a bug in eosws WebSocket get_transaction_lifecycle where a transaction not yet in the database would never stream back any message to the client.
  • Fixed a bug with --mindreader-no-blocks-log option actually not being picked up (always false)
  • Fixed a bug with /state/table/row not correctly reading row when it was in the table index.
  • Fixed a bug with /state/tables/scopes where the actual block num used to query the data was incorrect leading to invalid response results.
  • Fixed a bug with gRPC dfuse.eosio.statedb.v1/State#StreamMultiScopesTableRows where the actual block num used to query the data was incorrect leading to invalid response results.
  • Fixed issue when reading ABI from StateDB where speculative writes were not handled correctly.
  • Fixed issue when reading Table Row from StateDB where speculative writes were not handled correctly.
  • Fixed a potential crash when reading ABI from StateDB and it does not exist in database.