π Breaking Changes
π Transaction Support
GlueSQL now supports "TRANSACTION"!
New `Transaction` store trait with three interface methods: `begin`, `rollback` and `commit` is added.
GlueSQL's default storage engine, `SledStorage` supports MVCC transaction using snapshot based internal data structure.
`SledStorage` transaction details
- Transaction isolation level is `SNAPSHOT ISOLATION` or also known as `REPEATABLE READ`.
- Concurrency support but only a single writer at the same time.
- Read operations are not blocked by other read or write operations. (snapshot based)
- Provides transaction timeout limit functionality.
Merged PRs
- Implement MVCC transaction, panarch (257)
- Implement SledStorage transaction timeout support, panarch (297)
β¨ New Functions
Text Functions
- `TRIM`, `LPAD` and `RPAD`
Math Functions
- `FLOOR`, `CEIL`, `ROUND`, `DIV`, `MOD`, `GCD`, `LCM`, `SIN`, `COS`, `TAN`, `EXP`, `LN`, `LOG2` and `LOG10`.
Merged PRs
- Implement TRIM function ever0de (292)
- Add Floor, Ceil, Round Function tmdgusya (291)
- Add mathematical functions: DIV(), MOD(). MRGRAVITY817 (295)
- Add support for gcd and lcm operator genieCS (290)
- Support SIN, COS, TAN functions. maruoovv (289)
- Lpad rpad No-YE (311)
- Add `Exp`, `Ln`, `Log2`, `Log10` heka1024 (305)
π Features
- Add support for like operaror euiko (252)
π Changes
- Resolve clippy error ever0de (261)
- Support `DivisorShouldNotBeZero` error and Remove `{number} / {interval}` implementations MRGRAVITY817 (309)
- Remove PRIMARY KEY uses in test codes panarch (315)
- Extend `sled_transaction_timeout_` tests timeout duration, panarch (316)
- Replace binary op macro to normal function, panarch (304)
- Add toolchain file that has version number 1.54 MRGRAVITY817 (303)
- Reduce try\_self! and try\_into! macro uses, panarch (302)
- Remove Row from Payload::Select, panarch (287)
- Remove unnecessary IntoIterator call syntax ever0de (274)
- Replace filter\_map and next to find\_map ever0de (271)
- Chang unreachable code that was being treated as "unwrap" to return unreachable error ever0de (270)
- Update deps: sqlparser, rust\_decimal, indexmap and tokio panarch (263)
- Add --all-targets option to clippy panarch (262)
- Remove Boolinator crate dependency, panarch (254)
π Bug Fixes
- renew Usage at README.md and Doc: executing multiple queries devgony (260)
π New Contributors
Welcome and thanks a lot to new contributors!
- euiko
- ever0de
- devgony
- tmdgusya
- MRGRAVITY817
- genieCS
- maruoovv
- No-YE
- heka1024