github livepeer/go-livepeer v0.5.11

latest releases: v0.8.0, v0.7.9-ai.4, list...
4 years ago

Summary

This release includes a breaking change to the broadcaster <> orchestrator transcoding networking protocol that improves orchestrator stream management.

Other highlights of this release include a bug fix to prevent orchestrators from redeeming expired winning tickets, updates to livepeer_cli based on the recent deployment of LIP-40, LIP-36 and LIP-52 to mainnet as well as many other bug fixes and improvements to node operator UX.

Thanks to everyone that submitted bug reports and assisted in testing!

Breaking Changes 🚨🚨

  • The new auth token feature (see the "Features" section for more details) is a mandatory capability for both broadcasters and orchestrators. This means that any node running this release will not be able to connect to a node running an older release. So, it is crucial for all node operators to upgrade to this release ASAP to ensure that their nodes are compatible with as many nodes as possible in the rest of the network

Features

General

  • Add an auth token to the broadcaster <> orchestrator transcoding networking protocol which is generated by an orchestrator during discovery (#1613)
    • This also fixed some longstanding issues around how an orchestrator keeps track of streams
  • Show the transaction hash in livepeer_cli after successfully voting in a poll (#1570)
  • Check that values for -maxPricePerUnit and -pricePerUnit are valid integers (#1570)
  • Remove the manual claim earnings option in livepeer_cli since earnings no longer need to be manually claimed after the LIP-36 and LIP-52 deployment (#1637)

Broadcaster

  • Allow form fields for the /setBroadcasterConfig endpoint to be optional (#1597)
    • This allows an operator to programmatically update broadcaster configuration options such as the max price per pixel while the node is running
  • Add the -localVerify flag which can toggle local verification (pixel count verification and signature verification) on/off (#1588)
    • This can be useful when connected to a trusted orchestrator to reduce computational overhead for the broadcaster
  • Update integration with the latest version of the verification-classifier API which is used when experimental transcoding verification is enabled (#1577)
  • Update the orchestrator selection strategy to select the fastest orchestrator to respond during discovery out of orchestrators that use the same ETH address (#1617)
  • Add additional metrics for source segment duration, HTTP push client timeouts and real-time transcoding ratios (#1630)

Orchestrator

  • Allow form fields for the /setOrchestratorConfig endpoint to be optional (#1597)
    • This allows an operator to programmatically update orchestrator configuration options such as the price per pixel while the node is running
  • Return a clearer error when an audio-only segment is received (currently will not transcode this type of segment) (livepeer/lpms#207 #1608)
  • Allow the price per unit to be set to 0 to transcode for free (#1616)
  • Return clearer errors for orchestrator registration and configuration setting in livepeer_cli (#1570)
  • Fetch and pre-populate the orchestrator configuration prompt in livepeer_cli with the current reward cut and fee share values for the orchestrator (#1570)
  • Remove overly verbose gas price caching log statement (#1634)

Bug Fixes

General

  • Fix incorrect Minter contract parameter values displayed in livepeer_cli after the LIP-40 deployment (#1606)
  • Fix a bug where non-whole second duration metrics were incorrectly truncated when recorded (#1630)

Broadcaster

  • Fix bug where transcoding via the HTTP push fails when the manifestID returned by a configured webhook is different from the manifestID extracted from the segment URL provided in the HTTP push request (#1627)

Orchestrator

  • Fix a busy loop that caused CPU usage to shoot up to 100% after receiving a ticket (#1619)
  • Fix a bug that could cause the orchestrator to repeatedly try to redeem expired winning tickets (#1598)

Full list of changes

Verifying Release

md5 hashes for release binaries:

  • livepeer (Linux): e176899fd322e4171d6a37d787660cf1
  • livepeer_cli (Linux): dd42130a0a5d1510b6e7f54bff551c13
  • livepeer (Darwin): ffafeaa5752da9ce93eba6f1f50de5fa
  • livepeer_cli (Darwin): 173a35554ab8e1e569c0658834c18da8
  • livepeer.exe (Windows): b7089b46f05e263fcca35a480d9068fe
  • livepeer_cli.exe (Windows): 9181bbad2f8ba870fcc64ce3c80664a6

Generate the md5 hash:

md5sum livepeer
md5sum livepeer_cli

sha256 hashes for release binaries:

  • livepeer (Linux): 9eaa35177999df84eefadc694512e5f5ef3639f104afeca6b7dd40811687a42c
  • livepeer_cli (Linux): f9e0108147399d08aa968f86d1fee98d898eb2c17d102ccb7ef72e1cb2d44de4
  • livepeer (Darwin): 4a14bd74c90a7f6ffcaa1581c3d1b33d6e68c2ce637fd139d3cab2c955129b54
  • livepeer_cli (Darwin): 452e494b8c9ac5a949d9183529d0569ce0189dd1e969ab734f5ba73b41d7f654
  • livepeer.exe (Windows): 46b3100d858d79ddc6acafc7f98ba4b7718b35ea9a8d8ee7abc85fbe3d58ad8d
  • livepeer_cli.exe (Windows): 8bbf7c2148a6ca95cbfeb59d8078660f49a498bd6b7a748ed5b26e2b8bef2f14

Generate the sha256 hash:

shasum -a 256 livepeer
shasum -a 256 livepeer_cli

Don't miss a new go-livepeer release

NewReleases is sending notifications on new releases.