Releases: dolittle/Runtime
Prerelease v7.0.0-eventsource.0
Changes docs about event source id
Release v6.1.0
Summary
Adds Embeddings, a special type of event handler used for comparing read models states and generating events to reflect that changes done to the state. The embeddings are saved into their own database, much like Projections.
Added
- Grpc services for registering, updating and deleting embeddings
- Grpc services for retrieving embeddings
- New resource definition for embeddings in
resources.json. This defines the MongoDB database used by the embeddings, the format is the same as for the other databases.
"embeddings": {
"servers": [
"localhost"
],
"database": "embeddings",
"maxConnectionPoolSize": 1000
}Changed
- Changed some loggs to
Trace, as they were just clogging theDebuglogging too much.
Prerelease v6.1.0-embeddings.2
Merge pull request #553 from dolittle/fix-embedding-bugs
Prerelease v6.1.0-embeddings.1
This branch started off to just fix som logging messages, but it then quickly turned into fixing a bug we saw while testing this runtime with the embeddings sample.
Things done
- Refactoring
- Some fixes on logging
- Fixed bug where the aggregate root version that was committed after updating an embedding was the wrong version
- Implement and spec Embeddings.Store.Services
- Implement and spec Embeddings.Store.Services.Grpc
Prerelease v6.1.0-embeddings.0
Merge pull request #509 from dolittle/add-interfaces Add interfaces and specs
Release v6.0.1
Summary
Fix some of the configuration files under Server/.dolittle to their original intended
Changed
- Changed back configuration files
Release v6.0.0
Summary
Changes the behavior of the pinging system to be more reliable and to also start immediately when receiving a connection. This is to deal with a bug that was causing connections between the SDK and the Runtime to be dropped. This is a breaking behavioral change, as the pinging behavior now expects the client to be immediately ready to receive pings and write pongs after creating the connection. Older versions of the SDKs wont function correctly with this release of the Runtime. For this we've added a compatibility table.
We also added a Prometheus metric system into the Runtime, which you can access from localhost:9700/metrics to see the full list of all the metrics reported.
Also reworks the reverse call services to be more reliable and fixes an Event Horizon bug logging bug.
Added
- A Prometheus metrics service exposed on port
9700and path/metrics. It mainly collects metrics related to Event Horizon currently.
Changed
- The Runtime now starts to ping the client immediately when receiving a connection instead of waiting for the connection to be accepted first. The client needs to be ready to start receiving pings and writing pongs immediately after initiating the connection.
- Reworked many aspects of the reverse call clients and dispatchers to be more readable and reliable.
Fixed
- Make pinging more reliable by using a single high priority thread to keep track of the scheduled pings. The old implementation relied on the
ThreadPool, which was swamped during the startup and other periods of high activity in the Runtime, causing the pings to be delayed and eventually timing out. - Fixes a bug in the event horizon subscription that resulted in it not writing a proper log message of what the cause of a failure was if one of the event horizon processing tasks failed with an exception. (#544)
Prerelease v6.0.0-timeout.20
- More specs for ReverseCallClient
- Removes some extraneous calls to the
_serverToClient.Currentto make specs simpler.
Prerelease v6.0.0-timeout.19
Summary
Fixes a bug in the event horizon subscription that resulted in it not writing a proper log message of what the cause of a failure was if one of the event horizon processing tasks failed with an exception. The problem was a too greedy try-catch and a too naive method of setting the connection response.
Fixed
- Now it should log correctly when event horizon event processing failed for any reason
- A metrics collector in Services.Clients was missing the Singleton attribute which caused it to crash on NullReferenceException every time it was used
Removed
- States from SubscriptionState enum that were not really states. Now the only states are Created, Connecting and Connected
Prerelease v6.0.0-timeout.18
Summary
Fix a spec for CallbackScheduler for running multiple callbacks and cancelling one.
Changed
- The spec to be a bit more clear and change a bit on how the callbacks are disposed.