Changeset: 7d6f6753c8f3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/7d6f6753c8f3
Modified Files:
clients/mapiclient/mclient.c
clients/mapiclient/msqldump.c
clients/mapilib/connect.c
clients/mapilib/mapi.c
clients/mapilib/mapi.h
clients/mapilib/mapi_intern.h
tools/merovingian/daemon/snapshot.c
Branch: clientinfo
Log Message:
Add mapi_set_application_name and call it in mclient etc.
diffs (99 lines):
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -3682,6 +3682,7 @@ main(int argc, char **argv)
} else {
mid = mapi_mapi(host, port, user, passwd, language, dbname);
}
+ mapi_set_application_name("mclient");
free(user_allocated);
user_allocated = NULL;
free(passwd_allocated);
diff --git a/clients/mapiclient/msqldump.c b/clients/mapiclient/msqldump.c
--- a/clients/mapiclient/msqldump.c
+++ b/clients/mapiclient/msqldump.c
@@ -237,6 +237,7 @@ main(int argc, char **argv)
} else {
mid = mapi_mapi(host, port, user, passwd, "sql", dbname);
}
+ mapi_set_application_name("msqldump");
free(user_allocated);
user_allocated = NULL;
free(passwd_allocated);
diff --git a/clients/mapilib/connect.c b/clients/mapilib/connect.c
--- a/clients/mapilib/connect.c
+++ b/clients/mapilib/connect.c
@@ -398,6 +398,8 @@ send_all_clientinfo(Mapi mid)
hostname[sizeof(hostname) - 1] = '\0';
}
const char *application_name = msetting_string(mp,
MP_CLIENT_APPLICATION);
+ if (!application_name[0])
+ application_name = mapi_application_name;
const char *client_library = "libmapi " MONETDB_VERSION;
const char *client_remark = msetting_string(mp, MP_CLIENT_REMARK);
long pid = getpid();
diff --git a/clients/mapilib/mapi.c b/clients/mapilib/mapi.c
--- a/clients/mapilib/mapi.c
+++ b/clients/mapilib/mapi.c
@@ -793,6 +793,9 @@ static int mapi_slice_row(struct MapiRes
static void mapi_store_bind(struct MapiResultSet *result, int cr);
static ATOMIC_FLAG mapi_initialized = ATOMIC_FLAG_INIT;
+
+char mapi_application_name[256] = { 0 };
+
/*
* Blocking
* --------
@@ -2118,6 +2121,15 @@ mapi_disconnect(Mapi mid)
return MOK;
}
+void
+mapi_set_application_name(const char *name)
+{
+ if (name)
+ strncpy(mapi_application_name, name,
sizeof(mapi_application_name));
+ else
+ mapi_application_name[0] = '\0';
+}
+
/* Set callback function to retrieve or send file content for COPY
* INTO queries.
*
diff --git a/clients/mapilib/mapi.h b/clients/mapilib/mapi.h
--- a/clients/mapilib/mapi.h
+++ b/clients/mapilib/mapi.h
@@ -76,6 +76,9 @@ extern "C" {
# endif
#endif
+/* global state */
+mapi_export void mapi_set_application_name(const char *name);
+
/* connection-oriented functions */
mapi_export Mapi mapi_mapi(const char *host, int port, const char *username,
const char *password, const char *lang, const char *dbname);
mapi_export Mapi mapi_mapiuri(const char *url, const char *user, const char
*pass, const char *lang);
diff --git a/clients/mapilib/mapi_intern.h b/clients/mapilib/mapi_intern.h
--- a/clients/mapilib/mapi_intern.h
+++ b/clients/mapilib/mapi_intern.h
@@ -310,6 +310,8 @@ MapiMsg mapi_Xcommand(Mapi mid, const ch
extern const struct MapiStruct MapiStructDefaults;
+extern char mapi_application_name[];
+
// 'settings' will be newly allocated if NULL
Mapi mapi_new(msettings *settings);
diff --git a/tools/merovingian/daemon/snapshot.c
b/tools/merovingian/daemon/snapshot.c
--- a/tools/merovingian/daemon/snapshot.c
+++ b/tools/merovingian/daemon/snapshot.c
@@ -114,6 +114,7 @@ snapshot_database_stream(char *dbname, s
e = newErr("connection error: %s", mapi_error_str(conn));
goto bailout;
}
+ mapi_set_application_name("monetdbd");
mapi_reconnect(conn);
if (mapi_error(conn) != MOK) {
e = newErr("connection error: %s", mapi_error_str(conn));
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]