<br><br><div class="gmail_quote">On Tue, Jun 25, 2013 at 2:16 PM, Ben Pfaff <span dir="ltr">&lt;<a href="mailto:blp@nicira.com" target="_blank">blp@nicira.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Tue, Jun 25, 2013 at 01:02:30AM -0700, Gurucharan Shetty wrote:<br>
&gt; An upcoming commit provides the ability to add and remove databases.<br>
&gt; Having the databases in a shash instead of an array makes it easier<br>
&gt; to add and remove databases.<br>
&gt;<br>
&gt; Feature #14595.<br>
&gt; Signed-off-by: Gurucharan Shetty &lt;<a href="mailto:gshetty@nicira.com">gshetty@nicira.com</a>&gt;<br>
<br>
</div>ovsdb_server_compact() checks for db-&gt;filename == NULL.  When does<br>
this happen?<br>
<br></blockquote><div>I will get rid of it. I don&#39;t see it happening. </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I&#39;d prefer to declare the various &#39;db&#39; variables in innermost blocks<br>
where we can.  If you agree, I&#39;ve appended an incremental you can fold<br>
in, that shows what I mean.<br>
<br>
Acked-by: Ben Pfaff &lt;<a href="mailto:blp@nicira.com">blp@nicira.com</a>&gt;<br>
<br></blockquote><div>Thanks, I will fold in the incremental.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
diff --git a/ovsdb/ovsdb-server.c b/ovsdb/ovsdb-server.c<br>
index 4eab6b5..949ff94 100644<br>
--- a/ovsdb/ovsdb-server.c<br>
+++ b/ovsdb/ovsdb-server.c<br>
@@ -126,7 +126,6 @@ main(int argc, char *argv[])<br>
<div class="im">     struct remove_remote_aux remove_remote_aux;<br>
     FILE *config_tmpfile;<br>
<br>
</div>-    struct db *db;<br>
     struct shash all_dbs;<br>
<div class="im">     struct shash_node *node;<br>
     int i;<br>
</div>@@ -160,12 +159,12 @@ main(int argc, char *argv[])<br>
<div class="im"><br>
     if (argc &gt; 0) {<br>
         for (i = 0; i &lt; argc; i++) {<br>
</div><div class="im">-            db = xzalloc(sizeof *db);<br>
</div>+            struct db *db = xzalloc(sizeof *db);<br>
<div class="im">             db-&gt;filename = argv[i];<br>
</div>             open_db(jsonrpc, db, &amp;all_dbs);<br>
          }<br>
     } else {<br>
<div class="im">-        db = xzalloc(sizeof *db);<br>
</div>+        struct db *db = xzalloc(sizeof *db);<br>
<div class="im">         db-&gt;filename = xasprintf(&quot;%s/conf.db&quot;, ovs_dbdir());<br>
</div>         open_db(jsonrpc, db, &amp;all_dbs);<br>
     }<br>
@@ -231,7 +230,7 @@ main(int argc, char *argv[])<br>
             simap_init(&amp;usage);<br>
             ovsdb_jsonrpc_server_get_memory_usage(jsonrpc, &amp;usage);<br>
<div class="im">             SHASH_FOR_EACH(node, &amp;all_dbs) {<br>
-                db = node-&gt;data;<br>
</div>+                struct db *db = node-&gt;data;<br>
                 ovsdb_get_memory_usage(db-&gt;db, &amp;usage);<br>
             }<br>
             memory_report(&amp;usage);<br>
@@ -247,7 +246,7 @@ main(int argc, char *argv[])<br>
         ovsdb_jsonrpc_server_run(jsonrpc);<br>
<div class="im"><br>
         SHASH_FOR_EACH(node, &amp;all_dbs) {<br>
-            db = node-&gt;data;<br>
</div>+            struct db *db = node-&gt;data;<br>
<div class="im">             ovsdb_trigger_run(db-&gt;db, time_msec());<br>
         }<br>
         if (run_process) {<br>
</div>@@ -267,7 +266,7 @@ main(int argc, char *argv[])<br>
         ovsdb_jsonrpc_server_wait(jsonrpc);<br>
         unixctl_server_wait(unixctl);<br>
<div class="im">         SHASH_FOR_EACH(node, &amp;all_dbs) {<br>
-            db = node-&gt;data;<br>
</div>+            struct db *db = node-&gt;data;<br>
<div class="im">             ovsdb_trigger_wait(db-&gt;db, time_msec());<br>
         }<br>
         if (run_process) {<br>
</div>@@ -281,7 +280,7 @@ main(int argc, char *argv[])<br>
     }<br>
     ovsdb_jsonrpc_server_destroy(jsonrpc);<br>
<div class="im">     SHASH_FOR_EACH(node, &amp;all_dbs) {<br>
-        db = node-&gt;data;<br>
</div>+        struct db *db = node-&gt;data;<br>
         ovsdb_destroy(db-&gt;db);<br>
     }<br>
     sset_destroy(&amp;remotes);<br>
@@ -322,10 +321,9 @@ static const struct db *<br>
<div class="im"> find_db(const struct shash *all_dbs, const char *db_name)<br>
 {<br>
</div>     struct shash_node *node;<br>
-    struct db *db;<br>
<br>
     SHASH_FOR_EACH(node, all_dbs) {<br>
<div class="im">-        db = node-&gt;data;<br>
</div>+        struct db *db = node-&gt;data;<br>
<div class="im">         if (!strcmp(db-&gt;db-&gt;schema-&gt;name, db_name)) {<br>
</div>             return db;<br>
         }<br>
<br>
Thanks,<br>
<br>
Ben.<br>
</blockquote></div><br>