diff --git a/jeepyb/cmd/manage_projects.py b/jeepyb/cmd/manage_projects.py
index 3ee4cd2..2dece22 100644
--- a/jeepyb/cmd/manage_projects.py
+++ b/jeepyb/cmd/manage_projects.py
@@ -78,8 +78,8 @@
     p = subprocess.Popen(cmd_list, stdout=subprocess.PIPE,
                          stderr=subprocess.STDOUT, env=newenv)
     (out, nothing) = p.communicate()
-    log.debug("Return code: %s" % p.returncode)
-    log.debug("Command said: %s" % out.strip())
+    log.info("Return code: %s" % p.returncode)
+    log.info("Command said: %s" % out.strip())
     if status:
         return (p.returncode, out.strip())
     return out.strip()
@@ -130,8 +130,19 @@
 
 
 def fetch_config(project, remote_url, repo_path, env={}):
-    status = git_command(repo_path, "fetch %s +refs/meta/config:"
-                         "refs/remotes/gerrit-meta/config" % remote_url, env)
+    # Poll for refs/meta/config as gerrit may not have written it out for
+    # us yet.
+    for x in range(10):
+        status = git_command(repo_path, "fetch %s +refs/meta/config:"
+                             "refs/remotes/gerrit-meta/config" %
+                             remote_url, env)
+        if status == 0:
+            break
+        else:
+            log.debug("Failed to fetch refs/meta/config for project: %s" %
+                      project)
+            time.sleep(2)
+
     if status != 0:
         log.error("Failed to fetch refs/meta/config for project: %s" % project)
         return False
diff --git a/jeepyb/cmd/welcome_message.py b/jeepyb/cmd/welcome_message.py
index b791088..3536769 100644
--- a/jeepyb/cmd/welcome_message.py
+++ b/jeepyb/cmd/welcome_message.py
@@ -58,7 +58,7 @@
     cursor.execute(query, searchkey)
     data = cursor.fetchone()
     if data:
-        if data[0] == "1":
+        if data[0] == 1:
             logger.info('We found a newbie: %s', uploader)
             return True
         else:
