version 4.0.0
Version 4.0.0 is a complete rework and aims to improve the stability and accuracy of benchmark results.
Most Significant Changes
- 🚄 More consistent & reliable results By using GraalVM to precompile the binaries IGUANA shows persistent performance from the start. Before, the warmup and iterative JIT-compilation of the JVM lead to handling earlier queries slower than later queries. This could be observed in increasing triplestore performance being reported over the course of an evaluation.
- 👑 Rich result formats The results are now available in RDF and CSV making it easy to analize them the tools you prefer. Issues in the ontology were resolved.
- 😤 Even more stress By removing synchronization points between IGUANA's clients it is now able to put triplestores under even more stress when requesting with multiple clients in parallel.
- 👶🏻 Easy & hassle-free configuration The configuration was updated, unused features were removed. Configuration is now easier to understand and more stream lined.
- 🗻 Supports for large queries & responses IGUANA can handle now queries and responses that are larger than 2GB.
- 💎 Native executable For Linux, we offer now a native executable (powered by GraalVM) that works without any dependencies. Just download and run it.
Breaking Changes
As a complete rework, more or less everything changed. In particular:
- Comparison with results from previous version is not valid.
- Command-line interface changed.
- Configuration file layout changed.
- RDF Result file format changed.
- Most internal classes and APIs changed.
- Custom implementations for workers or result processors (we are not aware of any) are not supported anymore.
What's Changed
- fix accepting all 200-299 status codes on http responses by @frensing in #180
- fix encoding in post request body by @frensing in #179
- Rework query handling by @frensing in #184
- Make the testing workflow trigger on pull requests by @nck-mlcnv in #201
- fix testing workflow by @nck-mlcnv in #208
- Fix unit tests by @nck-mlcnv in #202
- Fix for #191 by @nck-mlcnv in #197
- Upgrade to Java 17 by @nck-mlcnv in #212
- Upgrade to junit 5 by @nck-mlcnv in #213
- Change repository structure by @nck-mlcnv in #215
- Add junit 5 back by @nck-mlcnv in #216
- Rework result processing by @nck-mlcnv in #219
- HTTP worker refactoring by @nck-mlcnv in #221
- Fix schema file by @nck-mlcnv in #235
- Fix performance issues by @nck-mlcnv in #241
- Apache HTTP Client 5 implementation by @nck-mlcnv in #243
- Fix request caching by @nck-mlcnv in #245
- Fix storage of completion target information in results by @nck-mlcnv in #247
- Rewrite documentation by @nck-mlcnv in #233
- Remove old docs by @nck-mlcnv in #253
- Add ResponseBodyProcessor timeout by @nck-mlcnv in #250
- Add missing dataset property to example by @nck-mlcnv in #251
- Add support for ahead-of-time compilation by @nck-mlcnv in #248
- Fix github workflow by @nck-mlcnv in #257
- Update result data format by @nck-mlcnv in #254
- Update Documentation Deployment by @nck-mlcnv in #256
- Fix start script by @nck-mlcnv in #259
- Fix example suite by @nck-mlcnv in #260
New Contributors
Full Changelog: v3.3.3...v4.0.0