Releases: th2-net/th2-estore
5.6.0-dev
What's Changed
-
Migrated to th2 gradle plugin
0.0.8
by @Nikita-Smirnov-Exactpro in #103 -
Updated
- bom: 4.6.1
- common: 5.12.0-dev
- common-utils: 2.2.3-dev
- cradle api: 5.3.0-dev
Full Changelog: 5.5.0-dev...5.6.0-dev
5.4.0-dev
What's Changed
- [Th2-5165] Cradle API uses page day cache by @Nikita-Smirnov-Exactpro in #98
Full Changelog: 5.3.0-dev...5.4.0-dev
Dev-Release 5.3.0-dev
Feature:
- Estore persists event with aggregated statistics about internal errors into cradle periodically
Dependencies
- Updated common:
5.6.0-dev
- Added common-utils:
2.2.2-dev
Dev-Release 5.2.2-dev
Migrated to the cradle version with fixed load pages where removed
field is null problem.
Updated cradle: 5.1.4-dev
Dev-Release 5.2.1-dev
Fixed the lost messages problem when estore is restarted under a load
Release 4.1.4
What's new in release 4.1.4
Bug fixes
The Cradle version is updated to 3.1.5. It contains the fix for the serialization of message IDs attached to an event. That bug could cause an OOM error in some cases.
Release 4.1.1
What's new in release 4.1.1
New features
Manual acknowledgements
Message acknowledgements are sent after finishing persisting events. This prevents possibility to lose events in case of estore restart or failure.
Note: if estore gives up persisting event due to exceeding retry limit, confirmation will still be sent
Bugfixes
Using Cradle 3.1.4 with a fix for degraded performance while persisting events
Other
Changed default configuration to
{
"maxTaskCount" : 256,
"maxRetryCount" : 1000000,
"retryDelayBase" : 5000
}
Release 4.1.0
What's new in release 4.1.0
New features
Event processing parallelism control
Introduced internal queue for storing events. Events from RabbitMQ are placed to this queue and stored to cradle. This queue is configuration limited by event count and event sizes at the same time. No new event can be added to this queue if queue limits are reached. This prevents estore from encountering OOM exceptions when many large events were stored in parallel, reaching estore heap limits.
Persistence retries
estore can be configured to retry event persistence in case of failure.
Event batch durations
Updated cradle library allows to track event batch durations during persistence. This helps to retrieve event batches that contain events after specified timestamp
Prometheus metrics
Collecting various performance metrics for exporting to Prometheus.
Other
- Fixed Unicode string serialization / deserialization bug
- Fixed bug that in highly concurrent scenarios caused estore to freeze.
- Common library has been updated to
3.39.3
- Cradle library has been updated to
3.1.3
Release 3.7.0
What's new in release 3.7.0
New features
Use async methods for storing events to the Cradle
Estore stores incoming events and information about attached messages asynchronously. It is mean estore gets events and stores them in a separate thread pool without blocking MQ listening tread in most cases. MQ listening thread is blocked when the thread pool for asynchronously storing is over and can't begin storing a new event.
This approach increases the throughput of the store.
Use timeout property from cradle_manager.json
Estore uses some cradle's settings during work.
Timeout defines maximum time limit in milliseconds for inserting new data into cradle. If set to 0 or ommited, the default value of 5000 is used.
Max event batch size (cradleMaxEventBatchSize
) is used by estore to implement rebatch feature.
Compressed metadata for events
Implemented compression of batch events metadata after serialization. Metadata is decompressed before deserialization. If decompression fails due to data format, deserialization is made on given bytes, meaning that metadata was written by an old version of Cradle API.
Disable waiting for connection recovery when closing the SubscribeMonitor
Dependency to common library has been updated from 3.13.4
to 3.35.0
and cradle from 2.9.1
to 2.21.0
.
store-common is not needed anymore
There were some common methods for convert and store. Needed methods were moved to estore and redundant dependency was removed.
Other
- Logging improvements
Full Changelog: v2.3.0-beta...v3.7.0
v2.3.0-beta
Version for demo-configuration and demo-script.