Releases: lingo-db/lingo-db
Releases · lingo-db/lingo-db
LingoDB v0.0.4
What's Changed
- Smaller improvements of Scheduler
- active Execution Context is now set by scheduler
- sorting is parallel again
- Replace existing "catalog" logic with proper one
- Fix groupjoins and reenable them
- Restructure and improve github actions for pushes/pull requests
- Bump apache arrow to Apache 20
- MacOs support: build + python package
- Optimize loading/storing of members during sub-operator lowering
- UTF-8 aware string functions
- Remove EnforceCABIPass (now unnecessary)
- Add devcontainer
- Proper handling of char type
- Avoid generation of redundant operations and add folding rules
- Optimize hash lookups (including bloom filters from this paper
- Refactor dsa dialect into proper arrow dialect
- Generate documentation for MLIR dialects
- Fix bug under Linux ARM calling convention
- Improve LLVM Debugging Backend
- Fix memory leaks and improve ASAN build (by avoiding boost fibers for ASAN)
- Add string functions necessary for clickbench queries
- Fix problem with distinct aggregations and groupbys
- Improve sql cli tool (line-editing + history)
LingoDB v0.0.3
What's Changed
- Fix bug in DecomposeLambdas Pass
- Smaller Improvements for CT tool
- Use stock LLVM/MLIR 20, don't ship patched version as Python anymore
- Use Apache Arrow 19 don't use pyarrow anymore
- Refactor python package (also switch to nanobind) and build process
- Github actions: add dataset tests
- Refactor dataset generation scripts/SQL
- Add asan build to Makefile/CI and fix use-after-free error
- Replace tbb with custom fiber-based scheduler
- Don't use/require Python anymore for dependency management
- Github actions: build release binaries that should run on most Linux systems
- Fix/Cleanup Makefile
Regressions (expected to be fixed in next release):
- sorting became single-threaded when moving away from tbb
- moving away from tbb introduced smaller overheads when executing fast queries
Full Changelog: v0.0.2...v0.0.3
LingoDB v0.0.2
Changes:
- Improve runtime-header-tool
- Add Python Bindings for MLIR dialects to Python package
- Refactor TableBuilder -> ArrowColumnBuilder
- Smaller features (add a few new runtime functions for strings, floats)
- Sub-Operator: small fixes in lowering
- Bump used LLVM version (also: preparations for using LLVM binary packages without patches after LLVM 20 is released)
- Introduce explicit execution steps in subop dialect to simplifiy further lowerings
- Reimplement the Parallelization pass
- Implement general logic for handling settings
- New infrastructure for profiling/debugging
- Refactor snapshotting instrumentation
- Tool for analyzing snapshots and correlating them
- New "translators" to create a plan in json format from an MLIR module
- Remove existing web app for profiling (now in webinterface repository)
- Switch coverage tooling to LLVM
- Restructure structure of codebase (incl.
namespace lingodb,mlir::->lingodb::compiler::for LingoDB dialects) - Remove dsa::ForOp and migrate existing use cases to scf.ForOp
- Add a simplified ssb benchmark (often used in GPU papers)
- util: add new BufferGetMemRef operation
- preparations for proper GPU support
- Fix relalg -> json tool
- SubOp: improve PrepareLowering pass to avoid redundant arguments/operations
- Improve CI (e.g., build python packages, docker containers for actions, ...)
- Update Readme
Full Changelog: v0.0.1...v0.0.2
LingoDB v0.0.1
Changes:
- Improve CI Pipelines
- Add/Improve tests
- Bugfixing
- Distribute dependencies as Python packages
LingoDB 0.0.0
First release not motivated by one of the first papers:
Changes:
- Build Basic Python Package for LingoDB
- Bug fixing and small improvements
LingoDB version used for VLDB 2023 paper
Second release without explicit version for LingoDB paper (Declarative Sub-Operators for Universal Data Processing):
Main Changes:
- Implement Layer of Sub-Operators
- Parallel Execution based on Sub-Operators
- Modularization of Compilation/Execution Pipeline
- Add new Execution Backends for Debugging/Profiling/Faster compilation(Cranelift)
- New operators/features (e.g., full outer joins, window functions, index nested loop joins,...)
- Improve github actions (e.g., code coverage)
- Supports more benchmarks (e.g., TPC-DS)
- Bug fixes in several parts
LingoDB version used for VLDB 2022 paper
Initial release without explicit version for LingoDB paper presented at VLDB 2022.