Skip to content

Releases: mutable-org/mutable

v0.0.164: [Scheduler] Use -1 as special Timestamp

04 Jan 14:14
ca5206c
Compare
Choose a tag to compare
Initially, we reserved 0 as a special timestamp for `Transaction`s and tuples.
For `Transaction`s a timestamp of 0 means the `Transaction` has not started executing statements yet.
For Tuples the value 0 is equivalent to infinity.

Since SQL does not support unsigned integers, this commit changes this special value from 0 to -1. This should help comprehension since -1 is often assigned a special meaning and we no longer skip over 0 when assigning timestamps.

v0.0.163

03 Jan 11:30
ca23186
Compare
Choose a tag to compare
[Util] Support `const`, `&` in `is_specialization`

v0.0.162: [Util] Pools now do reference counting.

30 Dec 13:27
6dbfa89
Compare
Choose a tag to compare
Massively refactor our pools `PODPool` and `Pool` to support reference
counting of pooled objects.

The pools are now *maps* from pooled object to the object's reference
count.  This allows for tracking whether we would leave any dangling
pointers around when deleting a pool.  Deleting a pool while the ref
count of a pooled object is greater than zero causes an abort in the
debug build.  This should give us good confidence that we don't leave
dangling references around.

This patch also prepares for garbage-collecting pooled objects that are
not being referenced anymore.  Making `Pooled` perform
garbage-collection is now a just a trivial change.  However, before we
can implement this, we must drop the implicit degeneration of a `Pooled`
to a raw pointer, thereby reducing the reference count while still
holding a reference through the raw pointer to the object.

This patch also prepares for *optional* `Pooled`s, that do not reference
any object.  I don't know yet how to design declaration and construction
in a convenient way...

v0.0.161

29 Dec 14:52
3769cc9
Compare
Choose a tag to compare
[IR] Mark some visitor methods `override`.

v0.0.160: [Util] Fix #146: Refactor visitor header (1/X).

28 Dec 17:13
2f9068c
Compare
Choose a tag to compare
Refactor the implementation of making a class hierarchy STL-style
`visit()`-able.  Replace the macro code by template magic.

Reader discretion advised!  This is not for the faint of heart.

v0.0.159: [CMake] Fix #172: Add Boost as CMake external proj

28 Dec 12:06
301c7e9
Compare
Choose a tag to compare
Build Boost as CMake external project.  Boost is self-contained,
shipping its own configuration and build automation tooling
(`bootstap.sh` and `b2`).

WIP Boost

WIB boost

v0.0.158: [CMake] Fix #180: Refactor CMake external projects

27 Dec 20:02
cfbcaf8
Compare
Choose a tag to compare
Move CMake external projects and the like to separate files that live in
new subdirectory `CMakeFiles/`.

v0.0.157

27 Dec 17:30
Compare
Choose a tag to compare
[ITest] Add positional argument to specify test files

v0.0.156

26 Dec 17:45
91b1918
Compare
Choose a tag to compare
[Doc] Add documentation badge to README

v0.0.155: [ITest] More generous timeout per test case.

23 Dec 10:45
0e852c1
Compare
Choose a tag to compare
With the current timeout of 15 seconds, few long-running integration
tests timeout frequently.  This commit generously increases the timeout
to 60 seconds.  The goal of the timeout is not to ensure that
integration tests run fast, but to ensure they guarantee they terminate
eventually and the testing script (and hence CI) come to a result in a
reasonable amount of time.