The branch, 1.0.82 has been updated
       via  40a6cc53b65fce41b20f133c11769d4a48a773c4 (commit)
       via  12a1a56b741ac455c981db261c26a2209825689f (commit)
      from  1ff8a594e5fea4010a0aef699578fba7b838ff9e (commit)

http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=1.0.82


- Log -----------------------------------------------------------------
commit 40a6cc53b65fce41b20f133c11769d4a48a773c4
Author: Ronnie Sahlberg <[email protected]>
Date:   Tue Jun 9 12:33:06 2009 +1000

    new version 1.0.82-4

commit 12a1a56b741ac455c981db261c26a2209825689f
Author: Ronnie Sahlberg <[email protected]>
Date:   Tue Jun 9 12:31:36 2009 +1000

    dont remove the socket when the dameon stops. This can race if the
    service is immediately restarted
    
    Conflicts:
    
        server/ctdb_daemon.c

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

Summary of changes:
 packaging/RPM/ctdb.spec |    4 +++-
 server/ctdb_daemon.c    |   14 ++++----------
 2 files changed, 7 insertions(+), 11 deletions(-)


Changeset truncated at 500 lines:

diff --git a/packaging/RPM/ctdb.spec b/packaging/RPM/ctdb.spec
index 00e7096..186bdab 100644
--- a/packaging/RPM/ctdb.spec
+++ b/packaging/RPM/ctdb.spec
@@ -5,7 +5,7 @@ Vendor: Samba Team
 Packager: Samba Team <[email protected]>
 Name: ctdb
 Version: 1.0.82
-Release: 3
+Release: 4
 Epoch: 0
 License: GNU GPL version 3
 Group: System Environment/Daemons
@@ -132,6 +132,8 @@ fi
 %{_libdir}/pkgconfig/ctdb.pc
 
 %changelog
+* Tue Jun 9 2009 : Version 1.0.83-4
+ - dont delete the socket when exiting ctdb
 * Tue Jun 2 2009 : Version 1.0.82-3
  - Make ctdb statistics support machinereadable output
 * Tue Jun 2 2009 : Version 1.0.82-2
diff --git a/server/ctdb_daemon.c b/server/ctdb_daemon.c
index 8a3f564..861c90c 100644
--- a/server/ctdb_daemon.c
+++ b/server/ctdb_daemon.c
@@ -617,15 +617,6 @@ failed:
        return -1;      
 }
 
-/*
-  delete the socket on exit - called on destruction of autofree context
- */
-static int unlink_destructor(const char *name)
-{
-       unlink(name);
-       return 0;
-}
-
 static void sig_child_handler(struct event_context *ev,
        struct signal_event *se, int signum, int count,
        void *dont_care, 
@@ -690,7 +681,10 @@ int ctdb_start_daemon(struct ctdb_context *ctdb, bool 
do_fork)
 
        /* ensure the socket is deleted on exit of the daemon */
        domain_socket_name = talloc_strdup(talloc_autofree_context(), 
ctdb->daemon.name);
-       talloc_set_destructor(domain_socket_name, unlink_destructor);   
+       if (domain_socket_name == NULL) {
+               DEBUG(DEBUG_ALERT,(__location__ " talloc_strdup failed.\n"));
+               exit(12);
+       }
 
        ctdb->ev = event_context_init(NULL);
 


-- 
CTDB repository

Reply via email to