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

abronan / libkv
84%
master: 84%

Build:
Build:
LAST BUILD BRANCH: update_travis
DEFAULT BRANCH: master
Repo Added 13 Aug 2017 08:52AM UTC
Files 8
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

LAST BUILD ON BRANCH align_etcd_lock
branch: align_etcd_lock
CHANGE BRANCH
x
Reset
  • align_etcd_lock
  • align_redis_error
  • consul_http
  • consul_list_consistent
  • docs
  • docs_backend_installation
  • etcd_list
  • etcd_watch_fix_possible_race
  • etcdv3
  • filter_lock_key
  • fix_cas_failure_test
  • fix_consul_off_by_one
  • fix_etcdv3_atomicput_ttl
  • improve_tests
  • list_ser
  • master
  • meta_list_fix
  • readoptions
  • switch_boltdb_fork
  • update_docs
  • update_go
  • update_kv_version
  • update_readme
  • update_travis
  • watchtree_key_event

pending completion
62

push

travis-ci

abronan
Align etcd v2 lock behavior with other stores

Generally, locks in distributed kv stores leave the key as is
after a process locks or unlocks the key. The lock is just used
for mutual exclusion on the key to write. Until now, etcd v2
had no lock API and we had to circumvent that using our own lock
algorithm which was essentially using Compare and Swap with
watches on delete behavior to handle locking the key. This meant
that the locked key would disappear/reappear after each call to
Lock/Unlock while other stores would let the key live outside
of locking portions as expected.

To align the behavior of etcd v2 with other stores and let the key
live outside of locking workflow, we now use a side key for the mutex
with a suffix "_lock". Only that key is now subject to CAS/delete leaving
the original key intact outside of calls to Lock/Unlock.

Signed-off-by: Alexandre Beslic <abeslic@abronan.com>

1928 of 2293 relevant lines covered (84.08%)

9.86 hits per line

Relevant lines Covered
Build:
Build:
2293 RELEVANT LINES 1928 COVERED LINES
9.86 HITS PER LINE
Source Files on align_etcd_lock
  • List 0
  • Changed 3
  • Source Changed 3
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
62 align_etcd_lock Align etcd v2 lock behavior with other stores Generally, locks in distributed kv stores leave the key as is after a process locks or unlocks the key. The lock is just used for mutual exclusion on the key to write. Until now, etcd v2 had no lock A... push 28 Aug 2017 12:35AM UTC abronan travis-ci pending completion  
46 align_etcd_lock Align etcd v2 lock behavior with other stores Generally, locks in distributed kv stores leave the key as is after a process locks or unlocks the key. The lock is just used for mutual exclusion on the key to write. Until now, etcd v2 had no lock A... push 21 Aug 2017 10:24AM UTC abronan travis-ci pending completion  
45 align_etcd_lock Align etcd v2 lock behavior with other stores Generally, locks in distributed kv stores leave the key as is after a process locks or unlocks the key. The lock is just used for mutual exclusion on the key to write. Until now, etcd v2 had no lock A... push 21 Aug 2017 10:19AM UTC abronan travis-ci pending completion  
See All Builds (132)
  • Repo on GitHub
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