vlog: Remove explicit calls to vlog_init().
[sliver-openvswitch.git] / ovsdb / ovsdb-tool.c
index b2e200c..b485e8b 100644 (file)
@@ -50,8 +50,6 @@ int
 main(int argc, char *argv[])
 {
     set_program_name(argv[0]);
-    time_init();
-    vlog_init();
     parse_options(argc, argv);
     signal(SIGPIPE, SIG_IGN);
     run_command(argc - optind, argv + optind, all_commands);
@@ -189,7 +187,7 @@ compact_or_convert(const char *src_name, const char *dst_name,
 
     /* Lock the source, if we will be replacing it. */
     if (in_place) {
-        retval = lockfile_lock(src_name, INT_MAX, &src_lock);
+        retval = lockfile_lock(src_name, 0, &src_lock);
         if (retval) {
             ovs_fatal(retval, "%s: failed to lock lockfile", src_name);
         }
@@ -199,7 +197,7 @@ compact_or_convert(const char *src_name, const char *dst_name,
     if (in_place) {
         dst_name = xasprintf("%s.tmp", src_name);
     }
-    retval = lockfile_lock(dst_name, INT_MAX, &dst_lock);
+    retval = lockfile_lock(dst_name, 0, &dst_lock);
     if (retval) {
         ovs_fatal(retval, "%s: failed to lock lockfile", dst_name);
     }
@@ -207,7 +205,7 @@ compact_or_convert(const char *src_name, const char *dst_name,
     /* Save a copy. */
     check_ovsdb_error(new_schema
                       ? ovsdb_file_open_as_schema(src_name, new_schema, &db)
-                      : ovsdb_file_open(src_name, true, &db));
+                      : ovsdb_file_open(src_name, true, &db, NULL));
     check_ovsdb_error(ovsdb_file_save_copy(dst_name, false, comment, db));
     ovsdb_destroy(db);
 
@@ -248,7 +246,7 @@ transact(bool read_only, const char *db_file_name, const char *transaction)
     struct json *request, *result;
     struct ovsdb *db;
 
-    check_ovsdb_error(ovsdb_file_open(db_file_name, read_only, &db));
+    check_ovsdb_error(ovsdb_file_open(db_file_name, read_only, &db, NULL));
 
     request = parse_json(transaction);
     result = ovsdb_execute(db, request, 0, NULL);
@@ -337,8 +335,13 @@ print_db_changes(struct shash *tables, struct shash *names)
                                                 : xmemdup0(row_uuid, 8)));
                 }
             } else if (columns->type == JSON_NULL) {
+                struct shash_node *node;
+
                 printf("\t\tdelete row\n");
-                shash_delete(names, shash_find(names, row_uuid));
+                node = shash_find(names, row_uuid);
+                if (node) {
+                    shash_delete(names, node);
+                }
                 free(old_name);
             }