• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dgraph-io / badger / 3011
61%
main: 61%

Build:
Build:
LAST BUILD BRANCH: dependabot/github_actions/actions-eb8e6b6abe
DEFAULT BRANCH: main
Ran 16 Oct 2019 11:28AM UTC
Jobs 2
Files 118
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Oct 2019 10:38AM UTC coverage: 77.519% (-0.1%) from 77.635%
3011

push

travis-ci

web-flow
Fix deadlock in discard stats (#1070)

Fixes #1032

Currently discardStats flow is as follows:
* Discard Stats are generated during compaction. At the end, compaction routine updates these stats in vlog(vlog maintains all discard stats). If number of updates exceeds a threshold, a new request is generated and sent to write channel. Routine waits for request to complete(request.Wait()).
* Requests are consumed from write channel and written to vlog first and then to memtable.
* If memtable is full, it is flushed to flush channel.
*From flush channel, memtables are written to L0 only if there are less than or equal to NumLevelZeroTablesStall tables already.

Events which can lead to deadlock:
Compaction is running on L0 which has NumLevelZeroTablesStall tables currently and tries to flush discard stats to write channel. After pushing stats to write channel, it waits for write request to complete, which cannot be completed due to cyclic dependency.

Fix:
This PR introduces a flush channel(buffered) for discardStats. Compaction routine, will push generated discard stats to flush channel, if channel is full it just returns. This decouples compaction and writes. We have a separate routine for consuming stats from flush chan.

62 of 62 new or added lines in 2 files covered. (100.0%)

19324 of 24928 relevant lines covered (77.52%)

126583.63 hits per line

Jobs
ID Job ID Ran Files Coverage
1 3011.1 16 Oct 2019 11:29AM UTC 0
77.48
Travis Job 3011.1
2 3011.2 16 Oct 2019 11:30AM UTC 0
77.58
Travis Job 3011.2
Source Files on build 3011
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #3011
  • c1cf0d7e on github
  • Prev Build on master (#2973)
  • Next Build on master (#3033)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc