Leonid Zharikov 
							
						 
					 
					
						
						
						
						
							
						
						
							4dfe42cb3b 
							
						 
					 
					
						
						
							
							Export method reopen ( #113 )  
						
						
						
						
							
						
					 
					
						2019-11-16 21:08:45 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							803b08949e 
							
						 
					 
					
						
						
							
							Fix setup target in Makefile to install mockery correctly  
						
						
						
						
							
 
						
					 
					
						2019-10-17 13:59:00 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							65e9317d26 
							
						 
					 
					
						
						
							
							Fix glfmt/golint issues  
						
						
						
						
							
						
					 
					
						2019-10-14 16:55:47 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c4e12e0019 
							
						 
					 
					
						
						
							
							Fix spelling mistake in README s/Sponser/Sponsor  
						
						
						
						
							
						
					 
					
						2019-10-08 22:04:22 +10:00 
						 
				 
			
				
					
						
							
							
								Steve Mynott 
							
						 
					 
					
						
						
						
						
							
						
						
							029f901bb7 
							
						 
					 
					
						
						
							
							fix example ( #106 )  
						
						
						
						
							
						
					 
					
						2019-09-28 08:08:45 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							af8bf54962 
							
						 
					 
					
						
						
							
							Add *.db to ignore future accidental commits of a bitcask db to the repo  
						
						
						
						
							
						
					 
					
						2019-09-26 21:09:27 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5ea05fb3c2 
							
						 
					 
					
						
						
							
							Add unit test for opening bad database with corrupted/invalid datafiles ( #105 )  
						
						
						
						
							
						
					 
					
						2019-09-26 21:07:13 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5fe19989d4 
							
						 
					 
					
						
						
							
							Update Drone CI test pipeline  
						
						
						
						
							
						
					 
					
						2019-09-25 22:15:22 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							498ea4069c 
							
						 
					 
					
						
						
							
							codebeat: Code quality improvement ( #103 )  
						
						... 
						
						
						
						* codebeat: improve & bugfix
* codebeat: refactor to improve readability
* bugfix
* bugfix
* internal/data/codec: improve code coverage 
						
						
							
						
					 
					
						2019-09-24 07:19:07 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							42c2b810bf 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-09-22 21:26:52 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							16a7feb603 
							
						 
					 
					
						
						
							
							cmd/bitcask: add recovery tool for datafiles ( #102 )  
						
						... 
						
						
						
						* cmd/bitcask: refactor recovery index logic
* cmd/bitcask: first version of datafile recovery tool
* cmd/bitcask: finished recovery datafile tool
* cmd/bitcask: temporary script to test recovery tool
* cmd/bitcask: remove commited binary file
* cmd/bitcask: delete bash test 
						
						
							
						
					 
					
						2019-09-21 18:33:36 -03:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f17187a5c7 
							
						 
					 
					
						
						
							
							Test for data corruption in datafile decoding ( #99 )  
						
						... 
						
						
						
						* internal/data: move codec to own subpackage
* internal/data/codec: check & test nil Entry Decode
* internal/data/decoder: test for short prefix error
* internal/data/codec: test invalid key & value sizes
* internal/data/codec: check & test for truncated data
* interna/data/codec: use assert for tests 
						
						
							
						
					 
					
						2019-09-16 09:29:08 -03:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5be114adab 
							
						 
					 
					
						
						
							
							Makefile setup & key/value coherent datatypes & refactoring ( #98 )  
						
						... 
						
						
						
						* internal/data: comment exported functions
* internal/data: make smaller codec exported api surface
* make key and value sizes serializing bubble up to everything
* Makefile setup & go mod tidy 
						
						
							
						
					 
					
						2019-09-12 10:44:26 -03:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							7e0fa151f7 
							
						 
					 
					
						
						
							
							fix test compilation ( #97 )  
						
						
						
						
							
						
					 
					
						2019-09-10 06:25:09 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d59d5ad8c2 
							
						 
					 
					
						
						
							
							Improves Test Coverage by covering error cases ( #95 )  
						
						... 
						
						
						
						* Add Unit  Test for testing a corrupted config
* Add Unit Test for testing errors from .Stats()
* Refactor  Datafile into an interface and add Unit Tests for testing Merge() errors
* Refactor indexer into an interface and add Unit Tests for .Close() errors
* Add Unit Tests for .Delete() errors
* Add Unit Tests for  testing Put/Get errors
* Add Unit Test for testing Open errors (bad path for example)
* Refactor out bitcask.writeConfig
* Add more tests for config errors
* Add unit test for options that might error
* Add more test cases for close errors
* Add test case for rotating datafiles
* Fix a possible data race in .Stats()
* Add test case for checksum errors
* Add test case for Sync errors with Put and WithSync enabled
* Refactor and use testify.mock for mocks and generate mocks for all interfaces
* Refactor TestCloseErrors
* Refactored TestDeleteErrors
* Refactored TestGetErrors
* Refactored TestPutErrors
* Refactored TestMergeErrors and fixed a bug with .Fold()
* Add test case for Scan() errors
* Apparently only Scan() can return nil Node()s? 
						
						
							
						
					 
					
						2019-09-09 07:18:38 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							13e35b7acc 
							
						 
					 
					
						
						
							
							bitcask: fix data races & use Encode() to serialize config ( #94 )  
						
						
						
						
							
						
					 
					
						2019-09-07 09:09:08 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							0d3a9213ed 
							
						 
					 
					
						
						
							
							cmd/bitcask: recovery tool ( #92 )  
						
						... 
						
						
						
						* cmd/bitcask: recovery tool
* refactor configuration & use it in recover tool 
						
						
							
						
					 
					
						2019-09-07 07:57:30 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f4fb4972ee 
							
						 
					 
					
						
						
							
							Improves test coverage by adding some missing unit tests ( #90 )  
						
						... 
						
						
						
						* Add Unit Test for testing WithSync() option
* Add Unit Test for testing re-indexing
* Add Unit Test for testing re-indexing with deleted keys (tombstone values) 
						
						
							
						
					 
					
						2019-09-04 22:45:04 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1108840967 
							
						 
					 
					
						
						
							
							Refactor the bitcaskd (redis compatible server) sample to improve code quality ( #88 )  
						
						
						
						
							
						
					 
					
						2019-09-04 22:44:33 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							003c3abc42 
							
						 
					 
					
						
						
							
							Update to Go 1.13 and update README with new benchmarks ( #89 )  
						
						
						
						
							
						
					 
					
						2019-09-04 22:43:53 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							a2b5ae2287 
							
						 
					 
					
						
						
							
							fix: check of persisted index values ( #91 )  
						
						
						
						
							
						
					 
					
						2019-09-04 22:42:32 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1c7df7f9c7 
							
						 
					 
					
						
						
							
							Removed unused readConfig() ( #87 )  
						
						
						
						
							
						
					 
					
						2019-09-04 21:25:31 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							93cc1d409f 
							
						 
					 
					
						
						
							
							codec_index: check sizes, new tests for data corruption & refactor ( #84 )  
						
						... 
						
						
						
						* bitcask/codec_index: check key and data sizes
* codec_index: tests for key and data size overflows
* codec_index: simplify internal funcs for unused returns 
						
						
							
						
					 
					
						2019-09-04 12:26:26 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							24ab3fbf27 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-09-04 08:20:44 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							8041a4c1e7 
							
						 
					 
					
						
						
							
							Refactor and general tests for codec index ( #83 )  
						
						... 
						
						
						
						* codec_index: unexport const fields
* codec_index: unexport internal functions and doc exported ones
* codec_index: rename func & return errors for corruption
* codec_index: new test for ReadIndex, WriteIndex, and read corruption
* Update internal/codec_index.go
Co-Authored-By: James Mills <1290234+prologic@users.noreply.github.com>
* Update internal/codec_index.go
Co-Authored-By: James Mills <1290234+prologic@users.noreply.github.com> 
						
						
							
						
					 
					
						2019-09-03 08:19:35 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							50d3971e86 
							
						 
					 
					
						
						
							
							Fixed a bug with incorrect offsets populating the trie ( #82 )  
						
						
						
						
							
 
						
					 
					
						2019-09-02 19:44:11 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							0338755f8c 
							
						 
					 
					
						
						
							
							fix readme typos ( #81 )  
						
						
						
						
							
 
						
					 
					
						2019-09-02 10:22:08 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							877bf982b1 
							
						 
					 
					
						
						
							
							fix go vet ( #80 )  
						
						
						
						
							
						
					 
					
						2019-09-02 10:20:56 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							abbbeb8e1d 
							
						 
					 
					
						
						
							
							Replace keydir with ART trie ( #75 )  
						
						... 
						
						
						
						* Replace keydir with ART trie
* Address some review feedback
* Address review feedback (consts) 
						
						
							
						
					 
					
						2019-09-02 08:38:56 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							36bc134b22 
							
						 
					 
					
						
						
							
							Fix a bug wit the decoder passing the wrong value for the value's offset into the buffer ( #77 )  
						
						
						
						
							
						
					 
					
						2019-08-31 08:35:17 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ea96b8afc0 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-08-30 13:28:17 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b3d6f734b6 
							
						 
					 
					
						
						
							
							Use an Adaptive Radix Tree ( #71 )  
						
						
						
						
							
						
					 
					
						2019-08-30 08:13:24 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							55459a5c93 
							
						 
					 
					
						
						
							
							readme: fix stargazers link ( #73 )  
						
						
						
						
							
						
					 
					
						2019-08-30 08:05:08 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a20ee3e3d4 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-08-26 08:45:15 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cd27b84069 
							
						 
					 
					
						
						
							
							Create FUNDING.yml  
						
						
						
						
							
						
					 
					
						2019-08-25 12:01:15 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b28353de02 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-08-18 22:34:14 +10:00 
						 
				 
			
				
					
						
							
							
								Awn 
							
						 
					 
					
						
						
						
						
							
						
						
							e8bee948bc 
							
						 
					 
					
						
						
							
							Make optimised scan functionality optional ( #68 )  
						
						
						
						
							
						
					 
					
						2019-08-16 10:51:59 +10:00 
						 
				 
			
				
					
						
							
							
								Xin Zhang 
							
						 
					 
					
						
						
						
						
							
						
						
							156d29e344 
							
						 
					 
					
						
						
							
							Fix typo ( #65 )  
						
						
						
						
							
						
					 
					
						2019-08-14 20:53:08 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c5a565cd82 
							
						 
					 
					
						
						
							
							Adds WithSync(...) option to turn  on sync after write durability ( #63 )  
						
						... 
						
						
						
						* Added WithSync(...) option to turn  on sync after write durability
* Add Sync/NoSync benchmark variants for Put() 
						
						
							
						
					 
					
						2019-08-12 06:47:46 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							8f56cffd86 
							
						 
					 
					
						
						
							
							codec: collapse write and save extra alloc ( #64 )  
						
						
						
						
							
						
					 
					
						2019-08-12 06:47:26 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7204a33512 
							
						 
					 
					
						
						
							
							Fix and cleanup some unnecessary internal sub-packages and duplication  
						
						
						
						
							
						
					 
					
						2019-08-08 22:28:25 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c7d101d34f 
							
						 
					 
					
						
						
							
							Fixed missing model import for codec with undefined Entry  
						
						
						
						
							
						
					 
					
						2019-08-08 20:14:27 +10:00 
						 
				 
			
				
					
						
							
							
								Awn 
							
						 
					 
					
						
						
						
						
							
						
						
							af43cfa8f1 
							
						 
					 
					
						
						
							
							Remove merge function ( #60 )  
						
						... 
						
						
						
						* tidy: clean up some leftovers
Fixes  #56 
Fixes  #57 
Fixes  #58 
* api: remove standalone merge function
Fixes  #55  
						
						
							
						
					 
					
						2019-08-08 19:51:45 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							110c5024ee 
							
						 
					 
					
						
						
							
							Update README.md  
						
						
						
						
							
						
					 
					
						2019-08-08 12:17:42 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							1f10b4026d 
							
						 
					 
					
						
						
							
							inline hash function to save extra alloc ( #53 )  
						
						
						
						
							
						
					 
					
						2019-08-08 09:52:31 +10:00 
						 
				 
			
				
					
						
							
							
								Ignacio Hagopian 
							
						 
					 
					
						
						
						
						
							
						
						
							fd179b4a86 
							
						 
					 
					
						
						
							
							custom high-performance encoder implementation ( #52 )  
						
						
						
						
							
						
					 
					
						2019-08-08 09:21:46 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							755b1879b5 
							
						 
					 
					
						
						
							
							Use []byte byte slices as keys directly avoiding serialing string(s) ( #46 ) ( #51 )  
						
						
						
						
							
						
					 
					
						2019-08-08 08:14:48 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d0c913ccee 
							
						 
					 
					
						
						
							
							Revert "Use []byte byte slices as keys directly avoiding serialing string(s) ( #46 )" ( #50 )  
						
						... 
						
						
						
						This reverts commit 3c1808cad3f19c23c6e4aacd4cfbbc4a04da1c08. 
						
						
							
 
						
					 
					
						2019-08-08 08:06:38 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							6b372d8334 
							
						 
					 
					
						
						
							
							Added export/import sub-commands to backup/resotre a database ( #48 )  
						
						
						
						
							
						
					 
					
						2019-08-08 08:00:29 +10:00 
						 
				 
			
				
					
						
							
							
								James Mills 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3c1808cad3 
							
						 
					 
					
						
						
							
							Use []byte byte slices as keys directly avoiding serialing string(s) ( #46 )  
						
						
						
						
							
						
					 
					
						2019-08-08 07:59:11 +10:00