Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert "Compress/Encrypt Blocks in the background (#1227)" #1409

Merged
merged 1 commit into from
Jul 10, 2020

Conversation

jarifibrahim
Copy link
Contributor

@jarifibrahim jarifibrahim commented Jul 10, 2020

This reverts commit b13b927.
This commit is being reverted because we have seen some crashes which could be caused by it. We haven't been able to reproduce the crashes yet.

Related to #1389, #1388, #1387
Also, see https://discuss.dgraph.io/t/current-state-of-badger-crashes/7602

Conflicts:

  • options.go
  • table/builder.go
diff --cc options.go
index 4a0d1e0,4fbe091..0000000
--- a/options.go
+++ b/options.go
@@@ -176,16 -155,12 +176,25 @@@ func DefaultOptions(path string) Option
  
  func buildTableOptions(opt Options) table.Options {
  	return table.Options{
++<<<<<<< HEAD
 +		TableSize:               uint64(opt.MaxTableSize),
 +		BlockSize:               opt.BlockSize,
 +		BloomFalsePositive:      opt.BloomFalsePositive,
 +		LoadBloomsOnOpen:        opt.LoadBloomsOnOpen,
 +		LoadingMode:             opt.TableLoadingMode,
 +		ChkMode:                 opt.ChecksumVerificationMode,
 +		Compression:             opt.Compression,
 +		ZSTDCompressionLevel:    opt.ZSTDCompressionLevel,
 +		KeepBlockIndicesInCache: opt.KeepBlockIndicesInCache,
 +		KeepBlocksInCache:       opt.KeepBlocksInCache,
++=======
+ 		BlockSize:            opt.BlockSize,
+ 		BloomFalsePositive:   opt.BloomFalsePositive,
+ 		LoadingMode:          opt.TableLoadingMode,
+ 		ChkMode:              opt.ChecksumVerificationMode,
+ 		Compression:          opt.Compression,
+ 		ZSTDCompressionLevel: opt.ZSTDCompressionLevel,
++>>>>>>> parent of b13b927... Compress/Encrypt Blocks in the background (#1227)
  	}
  }
  
diff --cc table/builder.go
index 312f8f7,2651949..0000000
--- a/table/builder.go
+++ b/table/builder.go
@@@ -101,75 -82,6 +82,78 @@@ func NewTableBuilder(opts Options) *Bui
  		keyHashes:  make([]uint64, 0, 1024), // Avoid some malloc calls.
  		opt:        &opts,
  	}
++<<<<<<< HEAD
 +
 +	// If encryption or compression is not enabled, do not start compression/encryption goroutines
 +	// and write directly to the buffer.
 +	if b.opt.Compression == options.None && b.opt.DataKey == nil {
 +		return b
 +	}
 +
 +	count := 2 * runtime.NumCPU()
 +	b.blockChan = make(chan *bblock, count*2)
 +
 +	b.wg.Add(count)
 +	for i := 0; i < count; i++ {
 +		go b.handleBlock()
 +	}
 +	return b
 +}
 +
 +var slicePool = sync.Pool{
 +	New: func() interface{} {
 +		// Make 4 KB blocks for reuse.
 +		b := make([]byte, 0, 4<<10)
 +		return &b
 +	},
 +}
 +
 +func (b *Builder) handleBlock() {
 +	defer b.wg.Done()
 +	for item := range b.blockChan {
 +		// Extract the block.
 +		blockBuf := item.data[item.start:item.end]
 +		var dst *[]byte
 +		// Compress the block.
 +		if b.opt.Compression != options.None {
 +			var err error
 +
 +			dst = slicePool.Get().(*[]byte)
 +			*dst = (*dst)[:0]
 +
 +			blockBuf, err = b.compressData(*dst, blockBuf)
 +			y.Check(err)
 +		}
 +		if b.shouldEncrypt() {
 +			eBlock, err := b.encrypt(blockBuf)
 +			y.Check(y.Wrapf(err, "Error while encrypting block in table builder."))
 +			blockBuf = eBlock
 +		}
 +
 +		// BlockBuf should always less than or equal to allocated space. If the blockBuf is greater
 +		// than allocated space that means the data from this block cannot be stored in its
 +		// existing location and trying to copy it over would mean we would over-write some data
 +		// of the next block.
 +		allocatedSpace := (item.end - item.start) + padding + 1
 +		y.AssertTruef(uint32(len(blockBuf)) <= allocatedSpace, "newend: %d oldend: %d padding: %d",
 +			item.start+uint32(len(blockBuf)), item.end, padding)
 +
 +		// Acquire the buflock here. The builder.grow function might change
 +		// the b.buf while this goroutine was running.
 +		b.bufLock.Lock()
 +		// Copy over compressed/encrypted data back to the main buffer.
 +		copy(b.buf[item.start:], blockBuf)
 +		b.bufLock.Unlock()
 +
 +		// Fix the boundary of the block.
 +		item.end = item.start + uint32(len(blockBuf))
 +
 +		if dst != nil {
 +			slicePool.Put(dst)
 +		}
 +	}
++=======
++>>>>>>> parent of b13b927... Compress/Encrypt Blocks in the background (#1227)
  }
  
  // Close closes the TableBuilder.

This change is Reviewable

This reverts commit b13b927.

 Conflicts:
	options.go
	table/builder.go
@jarifibrahim jarifibrahim merged commit 6001230 into master Jul 10, 2020
@jarifibrahim jarifibrahim deleted the ibrahim/revert-bc branch July 10, 2020 12:49
jarifibrahim pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 11, 2020
Also, disable conflict detection in badger to save memory.

```
0dfb8b4 Changelog for v20.07.0 (dgraph-io/badger#1411)
03ba278 Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
6001230 Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
800305e Revert "Buffer pool for decompression
(dgraph-io/badger#1308)"
(dgraph-io/badger#1408)
63d9309 Revert "fix: Fix race condition in block.incRef
(dgraph-io/badger#1337)"
(dgraph-io/badger#1407)
e0d058c Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
d981f47 return error if the vlog writes exceeds more that 4GB.
(dgraph-io/badger#1400)
7f4e4b5 add assert to check integer overflow for table size
(dgraph-io/badger#1402)
8e896a7 Add a contribution guide
(dgraph-io/badger#1379)
b79aeef Avoid panic on multiple closer.Signal calls
(dgraph-io/badger#1401)
717b89c Enable cross-compiled 32bit tests on TravisCI
(dgraph-io/badger#1392)
09dfa66 Update ristretto to commit f66de99
(dgraph-io/badger#1391)
509de73 Update head while replaying value log
(dgraph-io/badger#1372)
e013bfd Rework DB.DropPrefix (dgraph-io/badger#1381)
3042e37 pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
675efcd Increase default valueThreshold from 32B to 1KB
(dgraph-io/badger#1346)
158d927 Remove second initialization of writech in Open
(dgraph-io/badger#1382)
d37ce36 Tests: Use t.Parallel in TestIteratePrefix tests
(dgraph-io/badger#1377)
3f4761d Force KeepL0InMemory to be true when InMemory is true
(dgraph-io/badger#1375)
dd332b0 Avoid panic in filltables()
(dgraph-io/badger#1365)
c45d966 Fix assert in background compression and encryption.
(dgraph-io/badger#1366)
```
jarifibrahim pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 11, 2020
This commit brings the following new changes from badger.
This commit also disable conflict detection in badger to save memory.
```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```
jarifibrahim pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 11, 2020
This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```
jarifibrahim pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 11, 2020
This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```
jarifibrahim pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 11, 2020
This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```
jarifibrahim pushed a commit that referenced this pull request Jul 13, 2020
The compaction process can leak `*table.Builder` instances if the table built
is empty.

This used to be a big problem: before #1409 it would leak out the block
compression/encryption goroutines (that are all blocked on reading from the
`b.blockChan`, and because of that, it would leak the builder too.

Since #1409 this is now a simple question of correctness. Take it or leave it.
parasssh pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 13, 2020
* Update badger to v20.07.0-rc1

This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```

* Remove unnecessary detect conflicts
parasssh pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 13, 2020
* Update badger to v20.07.0-rc1

This commit brings the following new changes from badger.
This commit also disable conflict detection in badger to save memory.
```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```

* Remove unnecessary detect conflicts
parasssh pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 13, 2020
* Update badger to v20.07.0-rc1

This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```

* Remove unnecessary detect conflicts

Co-authored-by: parasssh <[email protected]>
parasssh pushed a commit to hypermodeinc/dgraph that referenced this pull request Jul 13, 2020
* Update badger to v20.0.7-rc1

This commit brings following new changes from badger
This commit also disable conflict detection in badger to save memory.

```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```

* Remove unnecessary detect conflicts

Co-authored-by: parasssh <[email protected]>
dna2github pushed a commit to dna2fork/dgraph that referenced this pull request Jul 18, 2020
* Update badger to v20.07.0-rc1

This commit brings the following new changes from badger.
This commit also disable conflict detection in badger to save memory.
```
Fix assert in background compression and encryption. (dgraph-io/badger#1366)
Avoid panic in filltables() (dgraph-io/badger#1365)
Force KeepL0InMemory to be true when InMemory is true (dgraph-io/badger#1375)
Tests: Use t.Parallel in TestIteratePrefix tests (dgraph-io/badger#1377)
Remove second initialization of writech in Open (dgraph-io/badger#1382)
Increase default valueThreshold from 32B to 1KB (dgraph-io/badger#1346)
pre allocate cache key for the block cache and the bloom filter cache (dgraph-io/badger#1371)
Rework DB.DropPrefix (dgraph-io/badger#1381)
Update head while replaying value log (dgraph-io/badger#1372)
Update ristretto to commit f66de99 (dgraph-io/badger#1391)
Enable cross-compiled 32bit tests on TravisCI (dgraph-io/badger#1392)
Avoid panic on multiple closer.Signal calls (dgraph-io/badger#1401)
Add a contribution guide (dgraph-io/badger#1379)
add assert to check integer overflow for table size (dgraph-io/badger#1402)
return error if the vlog writes exceeds more that 4GB. (dgraph-io/badger#1400)
Revert "add assert to check integer overflow for table size (dgraph-io/badger#1402)" (dgraph-io/badger#1406)
Revert "fix: Fix race condition in block.incRef (dgraph-io/badger#1337)" (dgraph-io/badger#1407)
Revert "Buffer pool for decompression (dgraph-io/badger#1308)" (dgraph-io/badger#1408)
Revert "Compress/Encrypt Blocks in the background (dgraph-io/badger#1227)" (dgraph-io/badger#1409)
Add missing changelog for v2.0.3 (dgraph-io/badger#1410)
Changelog for v20.07.0 (dgraph-io/badger#1411)
```

* Remove unnecessary detect conflicts
manishrjain added a commit that referenced this pull request Aug 11, 2020
jarifibrahim pushed a commit that referenced this pull request Oct 2, 2020
This reverts commit b13b927.
This commit is being reverted because we have seen some crashes which
could be caused by it. We haven't been able to reproduce the crashes yet.

Related to #1389, #1388, #1387
Also, see https://discuss.dgraph.io/t/current-state-of-badger-crashes/7602

This commit had some conflicts. See PR description for details.
jarifibrahim pushed a commit that referenced this pull request Oct 2, 2020
The compaction process can leak `*table.Builder` instances if the table built
is empty.

This used to be a big problem: before #1409 it would leak out the block
compression/encryption goroutines (that are all blocked on reading from the
`b.blockChan`, and because of that, it would leak the builder too.

Since #1409 this is now a simple question of correctness. Take it or leave it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants