[PATCH] Show banner in server and client startup to drive community engagement
authorOtto Kekäläinen <otto@debian.org>
Sun, 10 Mar 2024 16:56:13 +0000 (16:56 +0000)
committerOtto Kekäläinen <otto@debian.org>
Fri, 17 May 2024 05:02:04 +0000 (22:02 -0700)
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.

Client output:
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 34
    Server version: 10.11.7-MariaDB-3 Debian n/a

    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    Support MariaDB developers by giving a star at https://github.com/MariaDB/server

    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

    MariaDB [(none)]>

Server output:
    [Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server

Server output if build in git directory:
    [Note] Starting MariaDB 10.11.7-MariaDB-3 source revision 219efb0a6ab0ee8ce2ec831c715783586c4db2ef as process 5426

Gbp-Pq: Name startup-message.patch

client/mysql.cc
sql/mysqld.cc

index d9173cf67865d481481ca3953cda8d6d63d4e1c9..45cb1ac6a74d8e92117fa2467320a432e4a523a3 100644 (file)
@@ -1328,6 +1328,9 @@ int main(int argc,char *argv[])
             mysql_thread_id(&mysql), server_version_string(&mysql));
     put_info((char*) glob_buffer.ptr(),INFO_INFO);
     put_info(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000"), INFO_INFO);
+    put_info("Support MariaDB developers by giving a star at "
+             "https://github.com/MariaDB/server",
+             INFO_INFO);
   }
 
 #ifdef HAVE_READLINE
index d0619aa26c23da789e0ad6df0633874ed4d19515..a1744519fcecbbe77d11f8774d511c2f6c7c96ed 100644 (file)
@@ -4985,12 +4985,21 @@ static int init_server_components()
   my_sleep_for_space= mariadb_sleep_for_space;
 
   /*
-    Print source revision hash, as one of the first lines, if not the
-    first in error log, for troubleshooting and debugging purposes
+    Print source revision hash, if set, for troubleshooting and debugging
+    purposes. If not, suggest database adming to help project by giving a
+    star on GitHub.
   */
-  if (!opt_help)
-    sql_print_information("Starting MariaDB %s source revision %s as process %lu",
-                          server_version, SOURCE_REVISION, (ulong) getpid());
+  if (!opt_help) {
+    if (SOURCE_REVISION) {
+      sql_print_information("Starting MariaDB %s source revision %s as process %lu",
+                            server_version, SOURCE_REVISION, (ulong) getpid());
+    } else {
+      sql_print_information("Starting MariaDB %s as process %lu",
+                            server_version, (ulong) getpid());
+      sql_print_information("Support MariaDB developers by giving a star at "
+                            "https://github.com/MariaDB/server");
+    }
+  }
 
 #ifdef WITH_PERFSCHEMA_STORAGE_ENGINE
   /*