[SCM] Samba Shared Repository - branch v3-6-test updated

Karolin Seeger kseeger at samba.org
Tue Aug 23 12:29:36 MDT 2011


The branch, v3-6-test has been updated
       via  9bf2b30 Fix bug #8395 - optimize serverid_exists() for Solaris.
      from  8d46b29 talloc: check block count aftter references test

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -----------------------------------------------------------------
commit 9bf2b3034b4c9523bfac779e518a2a1a6d76ef46
Author: Ira Cooper <ira at wakeful.net>
Date:   Mon Aug 22 12:46:41 2011 -0700

    Fix bug #8395 - optimize serverid_exists() for Solaris.
    
    jra asked:
    
        Do you have any idea on how many calls it saves,
        and what help the optimization gives ?
    
    As far as calls: Not 100% sure, dtrace pointed the issue out to me, and when I
    saw 10-50%(Or more), I looked for an easy fix.
    
    The real expense here is the fnctl locks on the database.  That's pretty
    painful.  1000ns per call, and probably 3-4 calls in that chain.  So it doesn't
    take much to come out ahead was my math.

-----------------------------------------------------------------------

Summary of changes:
 source3/lib/serverid.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/lib/serverid.c b/source3/lib/serverid.c
index b1f6a57..8cd7f5a 100644
--- a/source3/lib/serverid.c
+++ b/source3/lib/serverid.c
@@ -233,7 +233,11 @@ bool serverid_exists(const struct server_id *id)
 	struct serverid_key key;
 	TDB_DATA tdbkey;
 
-	if (lp_clustering() && !process_exists(*id)) {
+	if (procid_is_me(id)) {
+		return true;
+	}
+
+	if (!process_exists(*id)) {
 		return false;
 	}
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list