summaryrefslogtreecommitdiffstats
path: root/ctdb/server/ctdb_lock.c
diff options
context:
space:
mode:
authorAmitay Isaacs <amitay@gmail.com>2013-07-03 11:01:21 +1000
committerAmitay Isaacs <amitay@gmail.com>2013-07-10 14:33:18 +1000
commit9ae379c91a30dbaf17d7b8f7542d7ebdb74241da (patch)
tree0f3e80e2c5f55533e51c8a1bfe3ec439309719ef /ctdb/server/ctdb_lock.c
parent1afb7fccb2adc54d5ff3915dff22b9a15932fa0c (diff)
downloadsamba-9ae379c91a30dbaf17d7b8f7542d7ebdb74241da.tar.gz
samba-9ae379c91a30dbaf17d7b8f7542d7ebdb74241da.tar.xz
samba-9ae379c91a30dbaf17d7b8f7542d7ebdb74241da.zip
locking: Update locking bucket intervals
0 < 1 ms 1 < 10 ms 2 < 100 ms 3 < 1 s 4 < 2 s 5 < 4 s 6 < 8 s 7 < 16 s 8 < 32 s 9 < 64 s 10 >= 64 s Signed-off-by: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 6fc36a7036933237d09151a0baf4d8ccd2bc2c99)
Diffstat (limited to 'ctdb/server/ctdb_lock.c')
-rw-r--r--ctdb/server/ctdb_lock.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/ctdb/server/ctdb_lock.c b/ctdb/server/ctdb_lock.c
index ca2093a3daf..2b0a0f69e5b 100644
--- a/ctdb/server/ctdb_lock.c
+++ b/ctdb/server/ctdb_lock.c
@@ -386,27 +386,31 @@ static void process_callbacks(struct lock_context *lock_ctx, bool locked)
static int lock_bucket_id(double t)
{
- double us = 1.e-6, ms = 1.e-3, s = 1;
+ double ms = 1.e-3, s = 1;
int id;
- if (t < 1*us) {
+ if (t < 1*ms) {
id = 0;
- } else if (t < 10*us) {
+ } else if (t < 10*ms) {
id = 1;
- } else if (t < 100*us) {
+ } else if (t < 100*ms) {
id = 2;
- } else if (t < 1*ms) {
+ } else if (t < 1*s) {
id = 3;
- } else if (t < 10*ms) {
+ } else if (t < 2*s) {
id = 4;
- } else if (t < 100*ms) {
+ } else if (t < 4*s) {
id = 5;
- } else if (t < 1*s) {
+ } else if (t < 8*s) {
id = 6;
- } else if (t < 10*s) {
+ } else if (t < 16*s) {
id = 7;
- } else {
+ } else if (t < 32*s) {
id = 8;
+ } else if (t < 64*s) {
+ id = 9;
+ } else {
+ id = 10;
}
return id;