- Bump @joystream/types to Petra version
- Bump deps @polkadot/api v10.7.1
- Nara release.
- Replaced
Query-NodeAPI withStorage-SquidGraphql API. This is a breaking change and requires theendpoints.queryNodeconfiguration option to be replaced withendpoints.storageSquid.
- Added parsing of Axios errors on logger level so that we never log the whole Axios client instance (which is a circular object and causes the node to crash)
- Changed Elasticsearch transport to use data streams instead of regular indices. Renamed
config.logs.elastic.indextoconfig.logs.elastic.indexPrefix. Node ID from config will be automatically appended to the index name.
- Bumped
winston-elasticsearchpackage verion - FIX: Added error handler to caught exception in
ElasticsearchTransportand gracefully log them
- Add 1s delay between fetching pages for QN state sync. This will allow QN to have some breathing space and process other requests that may have been stuck because of heavy processing.
- Add
Access-Control-Expose-Headersresponse header to allow web clients checking cache status of downloaded file. - Include response headers in
httplogs - Disable open-api express response validation if NODE_ENV is set to 'production' or 'prod'. This should improve response times when serving assets.
- Include
nodeEnvin/api/v1/statusresponse, to help detect mis-configured nodes. - FIX Axios Error Logging: Logging the error, when asset download from storage-node time outs, has been fixed to include the only error message, response, status code and bunch of other fields. Previously, logging error object (which includes axios client instance), failed with
Converting circular structure to JSONerror and causing the distributor-node to crash.
- FIX QN state sync: The QN state sync that runs on startup and on interval, has been split to multiple paginated queries so that it doesn't crash QN's GraphQL server because of huge payload: #4921
- Adds support for TTL based caching of
StorageDataObjectQN entity forHEAD /assetsrequests. The TTL is configurable usinginterval.queryNodeCacheTTLflag.
- FIX
sendExtrinsic: The send extrinsic function (which is a wrapper around PolkadotJStx.signAndSendfunction) has been fixed to handle the case when tx has been finalized before the callback registered intx.signAndSendwould run.
- Integrates OpenTelemetry API/SDK with Argus for exporting improved tracing logs & metrics to Elasticsearch. Adds
./start-elasticsearch-stack.shscript to bootstrap elasticsearch services (Elasticsearch + Kibana + APM Server) with all the required configurations. - Add support for Elasticsearch authentication (
logs.elastic.authconfig section) - FIX: Objects belonging to group
0of LRU-SP cache were never fully dropped from the state because of a bug inStateCacheService.dropById
dev:batchUploadcommand was removed as it relied on no longer availablesudoextrinsic- Any other references to
sudowere removed (not affecting any functionality besides the removeddev:batchUploadcommand) - Updated
@joystream/typesand@joystream/metadata-protobufdependencies - Minor fix for invalid elasticsearch log metadata format in
verbosemode (#3877)
@joystream/typesdependency version bump for consistency with mainnet release versioning
- Adds connected query-node's state information to the
/statusendpoint. - Bumps the major version of the node since it's now Joystream mainnet compatible.
- Support for mime-type provided as part of
SubtitleMetadata(video subtitles). It is now treated as fallbackmime-typeas long as it's a validtext/*type and thefile-typepackage fails to detect any type from the file signature (magic number), - Security: Sensitive information (like private keys) is now hidden in the node's logs,
- Requesting an asset which has not been accepted by any storage provider yet (
isAccepted == false) now results in404: Data object has not been uploaded yet(previously500: Failed to download object {id} from any available storage provider), - Fixed links in CLI docs,
- Autogenerated API client library (
@joystream/distributor-node-client) is now part of the distributor node codebase.
- Fix cache
cache-control: max-ageheader for objects served from the filesystem (sendlibrary requiresmax-ageto be provided as miliseconds).
- Replace
read-chunkdependency w/ customreadFileChunkimplementation in order to fix the issue w/ data objectmime-typedetection (#3723), - Add
versionproperty to/statusendpoint result.