]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
ctdb-vacuum: Use vacuum_handle local variables
authorMartin Schwenke <martin@meltin.net>
Thu, 2 Apr 2020 03:18:33 +0000 (14:18 +1100)
committerAmitay Isaacs <amitay@samba.org>
Tue, 7 Apr 2020 01:26:41 +0000 (01:26 +0000)
No behaviour change.  This just makes future changes clearer by
avoiding reformatting (or introducing local variables).

Clean up error handling while touching a relevant line.

Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
ctdb/server/ctdb_vacuum.c

index 5351a3c51756b8d83249fca007f9a6ee195464df..b159b7d6a34ca0e6bbd22172f56f3d1ae9577eb4 100644 (file)
@@ -1314,7 +1314,8 @@ static uint32_t get_vacuum_interval(struct ctdb_db_context *ctdb_db)
 static int vacuum_child_destructor(struct ctdb_vacuum_child_context *child_ctx)
 {
        double l = timeval_elapsed(&child_ctx->start_time);
-       struct ctdb_db_context *ctdb_db = child_ctx->vacuum_handle->ctdb_db;
+       struct ctdb_vacuum_handle *vacuum_handle = child_ctx->vacuum_handle;
+       struct ctdb_db_context *ctdb_db = vacuum_handle->ctdb_db;
        struct ctdb_context *ctdb = ctdb_db->ctdb;
 
        CTDB_UPDATE_DB_LATENCY(ctdb_db, "vacuum", vacuum.latency, l);
@@ -1324,7 +1325,7 @@ static int vacuum_child_destructor(struct ctdb_vacuum_child_context *child_ctx)
                ctdb_kill(ctdb, child_ctx->child_pid, SIGKILL);
        } else {
                /* Bump the number of successful fast-path runs. */
-               child_ctx->vacuum_handle->fast_path_count++;
+               vacuum_handle->fast_path_count++;
        }
 
        ctdb->vacuumer = NULL;
@@ -1332,10 +1333,10 @@ static int vacuum_child_destructor(struct ctdb_vacuum_child_context *child_ctx)
        if (child_ctx->scheduled) {
                tevent_add_timer(
                        ctdb->ev,
-                       child_ctx->vacuum_handle,
+                       vacuum_handle,
                        timeval_current_ofs(get_vacuum_interval(ctdb_db), 0),
                        ctdb_vacuum_event,
-                       child_ctx->vacuum_handle);
+                       vacuum_handle);
        }
 
        return 0;
@@ -1660,6 +1661,8 @@ void ctdb_stop_vacuuming(struct ctdb_context *ctdb)
  */
 int ctdb_vacuum_init(struct ctdb_db_context *ctdb_db)
 {
+       struct ctdb_vacuum_handle *vacuum_handle;
+
        if (! ctdb_db_volatile(ctdb_db)) {
                DEBUG(DEBUG_ERR,
                      ("Vacuuming is disabled for non-volatile database %s\n",
@@ -1667,15 +1670,22 @@ int ctdb_vacuum_init(struct ctdb_db_context *ctdb_db)
                return 0;
        }
 
-       ctdb_db->vacuum_handle = talloc(ctdb_db, struct ctdb_vacuum_handle);
-       CTDB_NO_MEMORY(ctdb_db->ctdb, ctdb_db->vacuum_handle);
+       vacuum_handle = talloc(ctdb_db, struct ctdb_vacuum_handle);
+       if (vacuum_handle == NULL) {
+               DBG_ERR("Memory allocation error\n");
+               return -1;
+       }
+
+       vacuum_handle->ctdb_db = ctdb_db;
+       vacuum_handle->fast_path_count = 0;
 
-       ctdb_db->vacuum_handle->ctdb_db         = ctdb_db;
-       ctdb_db->vacuum_handle->fast_path_count = 0;
+       ctdb_db->vacuum_handle = vacuum_handle;
 
-       tevent_add_timer(ctdb_db->ctdb->ev, ctdb_db->vacuum_handle,
+       tevent_add_timer(ctdb_db->ctdb->ev,
+                        vacuum_handle,
                         timeval_current_ofs(get_vacuum_interval(ctdb_db), 0),
-                        ctdb_vacuum_event, ctdb_db->vacuum_handle);
+                        ctdb_vacuum_event,
+                        vacuum_handle);
 
        return 0;
 }