Releases: guycipher/k4
Releases · guycipher/k4
K4 v1.9.4
K4 v1.9.4 PATCH BREAKING
- TTL if set of keys is now persisted through to SSTables as well.
- Gob register *time.Time for KeyValue struct serialization
- BACKGROUND_OP_SLEEP addition and set to 5 * time.Microsecond for greater background operation efficiency
- Multithreaded parallel paired compaction. the compact method pairs sstables, creates go routines and conquers paired compaction in parallel as opposed to a sequence. The Close method will still wait on background compaction and all routines associated with it.
All tests PASSED
K4 v1.9.3
K4 v1.9.2
K4 v1.9.2 PATCH
- Iterator implementation for K4 instances. i.e
it := NewIterator(db)
for {
key, value := it.Next()
if key == nil {
break
}
// .. You can also go back if you want
key, value = it.Prev()
if key == nil {
break
}
}
- Corrections on skiplist, going Prev could cause infinite loop.
- Shared C library implementation
K4 v1.9.1
K4 v1.9.1 PATCH
- better comparisons with bytes across all retrieval functions using new methods
greaterThan
,lessThan
, and to usebytes.Equal
instead ofbytes.Compare
for efficiency at the byte level.
K4 v1.9.0
K4 v1.8.3
K4 v1.8.2
K4 v1.8.1
K4 v1.8.0
K4 v1.7.0
K4 v1.7.0 BREAKING MINOR
- Remove parallel compaction, too much contention. Caused unreliability and unnecessary slowdowns
- Finalized compaction functions for reliability
- Commenting and minor reformating
- Change bloomfilter size from 1m to 100k works better, there is a case where setting it to 1 million causes keys to not be found. The bloom filter in the end can be switched up for something more efficient. I will see what I can design in that regard
- More test cases and adjusts across all packages