[prev in list] [next in list] [prev in thread] [next in thread] 

List:       monetdb-checkins
Subject:    MonetDB: default - Code deduplication.
From:       Sjoerd Mullender via checkin-list <checkin-list () monetdb ! org>
Date:       2024-01-24 13:38:54
Message-ID: hg.509848eaf33d.1706103534.-2906890311611917923 () dev ! monetdb ! org
[Download RAW message or body]

Changeset: 509848eaf33d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/509848eaf33d
Modified Files:
	clients/mapiclient/dump.c
	clients/mapiclient/msqldump.h
Branch: default
Log Message:

Code deduplication.


diffs (267 lines):

diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -1213,33 +1213,18 @@ bailout:
 	return 1;
 }
 
-int
+static int
 describe_table(Mapi mid, const char *schema, const char *tname,
 	       stream *toConsole, bool foreign, bool databaseDump)
 {
 	int cnt, table_id = 0;
 	MapiHdl hdl = NULL;
-	char *query = NULL, *view = NULL, *remark = NULL, *sname = NULL, *s = NULL, *t = \
NULL; +	char *query = NULL, *view = NULL, *remark = NULL, *s = NULL, *t = NULL;
 	int type = 0;
 	int ca = 0;
 	size_t maxquerylen;
 	bool hashge;
 
-	if (schema == NULL) {
-		if ((sname = strchr(tname, '.')) != NULL) {
-			size_t len = sname - tname + 1;
-
-			sname = malloc(len);
-			if (sname == NULL)
-				goto bailout;
-			strcpy_len(sname, tname, len);
-			tname += len;
-		} else if ((sname = get_schema(mid)) == NULL) {
-			return 1;
-		}
-		schema = sname;
-	}
-
 	hashge = has_hugeint(mid);
 
 	s = sescape(schema);
@@ -1537,8 +1522,6 @@ describe_table(Mapi mid, const char *sch
 		free(remark);
 	if (query != NULL)
 		free(query);
-	if (sname != NULL)
-		free(sname);
 	return 0;
 
 bailout:
@@ -1559,8 +1542,6 @@ bailout2:
 		free(view);
 	if (remark)
 		free(remark);
-	if (sname != NULL)
-		free(sname);
 	if (query != NULL)
 		free(query);
 	if (s != NULL)
@@ -1738,8 +1719,8 @@ describe_schema(Mapi mid, const char *sn
 }
 
 static int
-dump_table_data(Mapi mid, const char *schema, const char *tname, stream *toConsole,
-				bool useInserts, bool noescape)
+dump_table_data(Mapi mid, const char *schema, const char *tname,
+				stream *toConsole, bool useInserts, bool noescape)
 {
 	int cnt, i;
 	int64_t rows;
@@ -1747,24 +1728,8 @@ dump_table_data(Mapi mid, const char *sc
 	char *query = NULL;
 	size_t maxquerylen;
 	unsigned char *string = NULL;
-	char *sname = NULL;
 	char *s, *t;
 
-	if (schema == NULL) {
-		if ((sname = strchr(tname, '.')) != NULL) {
-			size_t len = sname - tname + 1;
-
-			sname = malloc(len);
-			if (sname == NULL)
-				goto bailout;
-			strcpy_len(sname, tname, len);
-			tname += len;
-		} else if ((sname = get_schema(mid)) == NULL) {
-			goto bailout;
-		}
-		schema = sname;
-	}
-
 	maxquerylen = 5120 + 2*strlen(tname) + 2*strlen(schema);
 	query = malloc(maxquerylen);
 	if (query == NULL)
@@ -1938,8 +1903,6 @@ dump_table_data(Mapi mid, const char *sc
 		mapi_close_handle(hdl);
 	if (query != NULL)
 		free(query);
-	if (sname != NULL)
-		free(sname);
 	return 0;
 
 bailout:
@@ -1955,8 +1918,6 @@ bailout:
 		mapi_explain(mid, stderr);
 	else if (mnstr_errnr(toConsole) == MNSTR_NO__ERROR)
 		fprintf(stderr, "malloc failure\n");
-	if (sname != NULL)
-		free(sname);
 	if (query != NULL)
 		free(query);
 	if (string != NULL)
@@ -1967,7 +1928,6 @@ bailout:
 static int
 dump_table_storage(Mapi mid, const char *schema, const char *tname, stream \
*toConsole)  {
-	char *sname = NULL;
 	char *query = NULL;
 	size_t maxquerylen;
 	MapiHdl hdl = NULL;
@@ -1975,21 +1935,6 @@ dump_table_storage(Mapi mid, const char 
 	char *t = NULL;
 	int rc = 1;
 
-	if (schema == NULL) {
-		if ((sname = strchr(tname, '.')) != NULL) {
-			size_t len = sname - tname + 1;
-
-			sname = malloc(len);
-			if (sname == NULL)
-				goto bailout;
-			strcpy_len(sname, tname, len);
-			tname += len;
-		} else if ((sname = get_schema(mid)) == NULL) {
-			goto bailout;
-		}
-		schema = sname;
-	}
-
 	maxquerylen = 5120 + 2*strlen(tname) + 2*strlen(schema);
 	query = malloc(maxquerylen);
 	s = sescape(schema);
@@ -2025,14 +1970,12 @@ dump_table_storage(Mapi mid, const char 
 	free(s);
 	free(t);
 	mapi_close_handle(hdl);		/* may be NULL */
-	free(sname);				/* may be NULL */
 	return rc;
 }
 
 static int
 dump_table_access(Mapi mid, const char *schema, const char *tname, stream \
*toConsole)  {
-	char *sname = NULL;
 	char *query = NULL;
 	size_t maxquerylen;
 	MapiHdl hdl = NULL;
@@ -2040,21 +1983,6 @@ dump_table_access(Mapi mid, const char *
 	char *t = NULL;
 	int rc = 1;
 
-	if (schema == NULL) {
-		if ((sname = strchr(tname, '.')) != NULL) {
-			size_t len = sname - tname + 1;
-
-			sname = malloc(len);
-			if (sname == NULL)
-				goto bailout;
-			strcpy_len(sname, tname, len);
-			tname += len;
-		} else if ((sname = get_schema(mid)) == NULL) {
-			goto bailout;
-		}
-		schema = sname;
-	}
-
 	maxquerylen = 5120 + 2*strlen(tname) + 2*strlen(schema);
 	query = malloc(maxquerylen);
 	s = sescape(schema);
@@ -2090,14 +2018,12 @@ dump_table_access(Mapi mid, const char *
 	free(s);
 	free(t);
 	mapi_close_handle(hdl);		/* may be NULL */
-	free(sname);				/* may be NULL */
 	return rc;
 }
 
 static int
 dump_table_defaults(Mapi mid, const char *schema, const char *tname, stream \
*toConsole)  {
-	char *sname = NULL;
 	char *query = NULL;
 	size_t maxquerylen;
 	MapiHdl hdl = NULL;
@@ -2105,21 +2031,6 @@ dump_table_defaults(Mapi mid, const char
 	char *t = NULL;
 	int rc = 1;
 
-	if (schema == NULL && tname != NULL) {
-		if ((sname = strchr(tname, '.')) != NULL) {
-			size_t len = sname - tname + 1;
-
-			sname = malloc(len);
-			if (sname == NULL)
-				goto bailout;
-			strcpy_len(sname, tname, len);
-			tname += len;
-		} else if ((sname = get_schema(mid)) == NULL) {
-			goto bailout;
-		}
-		schema = sname;
-	}
-
 	maxquerylen = 512;
 	if (schema != NULL && tname != NULL) {
 		maxquerylen += 2*strlen(tname) + 2*strlen(schema);
@@ -2169,7 +2080,6 @@ dump_table_defaults(Mapi mid, const char
 	free(s);
 	free(t);
 	mapi_close_handle(hdl);		/* may be NULL */
-	free(sname);				/* may be NULL */
 	return rc;
 }
 
@@ -2178,8 +2088,24 @@ dump_table(Mapi mid, const char *schema,
 		   bool describe, bool foreign, bool useInserts, bool databaseDump,
 		   bool noescape)
 {
+	char *sname = NULL;
 	int rc;
 
+	if (schema == NULL) {
+		if ((sname = strchr(tname, '.')) != NULL) {
+			size_t len = sname - tname + 1;
+
+			sname = malloc(len);
+			if (sname == NULL)
+				return 1;
+			strcpy_len(sname, tname, len);
+			tname += len;
+		} else if ((sname = get_schema(mid)) == NULL) {
+			return 1;
+		}
+		schema = sname;
+	}
+
 	rc = describe_table(mid, schema, tname, toConsole, foreign, databaseDump);
 	if (rc == 0)
 		rc = dump_table_storage(mid, schema, tname, toConsole);
@@ -2189,6 +2115,7 @@ dump_table(Mapi mid, const char *schema,
 		rc = dump_table_access(mid, schema, tname, toConsole);
 	if (rc == 0 && !databaseDump)
 		rc = dump_table_defaults(mid, schema, tname, toConsole);
+	free(sname);				/* may be NULL, but that's OK */
 	return rc;
 }
 
diff --git a/clients/mapiclient/msqldump.h b/clients/mapiclient/msqldump.h
--- a/clients/mapiclient/msqldump.h
+++ b/clients/mapiclient/msqldump.h
@@ -10,7 +10,6 @@
  * Copyright 1997 - July 2008 CWI.
  */
 
-extern int describe_table(Mapi mid, const char *schema, const char *tname, stream \
*toConsole, bool foreign, bool databaseDump);  extern int describe_sequence(Mapi mid, \
const char *schema, const char *sname, stream *toConsole);  extern int \
describe_schema(Mapi mid, const char *sname, stream *toConsole);  extern int \
dump_table(Mapi mid, const char *schema, const char *tname, stream *toConsole, bool \
describe, bool foreign, bool useInserts, bool databaseDump, bool noescape); \
_______________________________________________ checkin-list mailing list -- \
checkin-list@monetdb.org To unsubscribe send an email to \
checkin-list-leave@monetdb.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic