From 5a3b017ff216cc4f916746928ba8eda7e156aba9 Mon Sep 17 00:00:00 2001
From: Ilya Verbin <iverbin@tarantool.org>
Date: Mon, 13 Mar 2023 14:51:09 +0300
Subject: [PATCH] sql: rename field_def::default_value to
 field_def::sql_default_value

In order to avoid collision with the upcoming core default_value.

Also rename tuple_field::default_value_expr to
tuple_field::sql_default_value_expr.

Part of #8157

NO_DOC=refactoring
NO_TEST=refactoring
NO_CHANGELOG=refactoring
---
 src/box/field_def.c    | 16 +++++++++-------
 src/box/field_def.h    |  4 ++--
 src/box/sql.c          |  8 ++++----
 src/box/sql/build.c    |  4 ++--
 src/box/sql/insert.c   | 10 ++++++----
 src/box/sql/pragma.c   |  3 ++-
 src/box/tuple_format.c | 10 +++++-----
 src/box/tuple_format.h |  4 ++--
 8 files changed, 32 insertions(+), 27 deletions(-)

diff --git a/src/box/field_def.c b/src/box/field_def.c
index 368c783dd3..2a82ec9b73 100644
--- a/src/box/field_def.c
+++ b/src/box/field_def.c
@@ -192,7 +192,7 @@ static const struct opt_def field_def_reg[] = {
 	OPT_DEF_ENUM("nullable_action", on_conflict_action, struct field_def,
 		     nullable_action, NULL),
 	OPT_DEF("collation", OPT_UINT32, struct field_def, coll_id),
-	OPT_DEF("default", OPT_STRPTR, struct field_def, default_value),
+	OPT_DEF("sql_default", OPT_STRPTR, struct field_def, sql_default_value),
 	OPT_DEF_ENUM("compression", compression_type, struct field_def,
 		     compression_type, NULL),
 	OPT_DEF_CUSTOM("constraint", field_def_parse_constraint),
@@ -206,7 +206,7 @@ const struct field_def field_def_default = {
 	.is_nullable = false,
 	.nullable_action = ON_CONFLICT_ACTION_DEFAULT,
 	.coll_id = COLL_NONE,
-	.default_value = NULL,
+	.sql_default_value = NULL,
 	.constraint_count = 0,
 	.constraint_def = NULL,
 };
@@ -395,8 +395,10 @@ field_def_array_dup(const struct field_def *fields, uint32_t field_count)
 	grp_alloc_reserve_data(&all, sizeof(*fields) * field_count);
 	for (uint32_t i = 0; i < field_count; i++) {
 		grp_alloc_reserve_str0(&all, fields[i].name);
-		if (fields[i].default_value != NULL)
-			grp_alloc_reserve_str0(&all, fields[i].default_value);
+		if (fields[i].sql_default_value != NULL) {
+			grp_alloc_reserve_str0(&all,
+					       fields[i].sql_default_value);
+		}
 	}
 	grp_alloc_use(&all, xmalloc(grp_alloc_size(&all)));
 	struct field_def *copy = grp_alloc_create_data(
@@ -404,9 +406,9 @@ field_def_array_dup(const struct field_def *fields, uint32_t field_count)
 	for (uint32_t i = 0; i < field_count; ++i) {
 		copy[i] = fields[i];
 		copy[i].name = grp_alloc_create_str0(&all, fields[i].name);
-		if (fields[i].default_value != NULL) {
-			copy[i].default_value = grp_alloc_create_str0(
-				&all, fields[i].default_value);
+		if (fields[i].sql_default_value != NULL) {
+			copy[i].sql_default_value = grp_alloc_create_str0(
+				&all, fields[i].sql_default_value);
 		}
 		copy[i].constraint_def = tuple_constraint_def_array_dup(
 			fields[i].constraint_def, fields[i].constraint_count);
diff --git a/src/box/field_def.h b/src/box/field_def.h
index 70c5722240..6b0fe66773 100644
--- a/src/box/field_def.h
+++ b/src/box/field_def.h
@@ -147,8 +147,8 @@ struct field_def {
 	/** Collation ID for string comparison. */
 	uint32_t coll_id;
 	/** 0-terminated SQL expression for DEFAULT value. */
-	char *default_value;
-	/** Type of comression to this field */
+	char *sql_default_value;
+	/** Compression type for this field. */
 	enum compression_type compression_type;
 	/** Array of constraints. Can be NULL if constraints_count == 0. */
 	struct tuple_constraint_def *constraint_def;
diff --git a/src/box/sql.c b/src/box/sql.c
index 67e6c5e789..a5248a30fc 100644
--- a/src/box/sql.c
+++ b/src/box/sql.c
@@ -377,7 +377,7 @@ sql_ephemeral_space_new(const struct sql_space_info *info)
 		names += strlen(fields[i].name) + 1;
 		fields[i].is_nullable = true;
 		fields[i].nullable_action = ON_CONFLICT_ACTION_NONE;
-		fields[i].default_value = NULL;
+		fields[i].sql_default_value = NULL;
 		fields[i].type = info->types[i];
 		fields[i].coll_id = info->coll_ids[i];
 		fields[i].compression_type = COMPRESSION_TYPE_NONE;
@@ -1021,7 +1021,7 @@ sql_encode_table(struct region *region, struct space_def *def, uint32_t *size)
 	for (uint32_t i = 0; i < field_count && !is_error; i++) {
 		uint32_t cid = def->fields[i].coll_id;
 		struct field_def *field = &def->fields[i];
-		const char *default_str = field->default_value;
+		const char *default_str = field->sql_default_value;
 		int base_len = 4;
 		if (cid != COLL_NONE)
 			base_len += 1;
@@ -1062,7 +1062,7 @@ sql_encode_table(struct region *region, struct space_def *def, uint32_t *size)
 			mpstream_encode_uint(&stream, cid);
 		}
 		if (default_str != NULL) {
-			mpstream_encode_str(&stream, "default");
+			mpstream_encode_str(&stream, "sql_default");
 			mpstream_encode_str(&stream, default_str);
 		}
 		sql_mpstream_encode_constraints(&stream, cdefs, ck_count,
@@ -1244,7 +1244,7 @@ space_column_default_expr(uint32_t space_id, uint32_t fieldno)
 		return NULL;
 	assert(space->def->field_count > fieldno);
 	struct tuple_field *field = tuple_format_field(space->format, fieldno);
-	return field->default_value_expr;
+	return field->sql_default_value_expr;
 }
 
 /**
diff --git a/src/box/sql/build.c b/src/box/sql/build.c
index bf36531b5e..f3b48bbfa1 100644
--- a/src/box/sql/build.c
+++ b/src/box/sql/build.c
@@ -482,8 +482,8 @@ sqlAddDefaultValue(Parse * pParse, ExprSpan * pSpan)
 				&def->fields[def->field_count - 1];
 			struct region *region = &pParse->region;
 			size_t len = pSpan->zEnd - pSpan->zStart + 1;
-			field->default_value = xregion_alloc(region, len);
-			strlcpy(field->default_value, pSpan->zStart, len);
+			field->sql_default_value = xregion_alloc(region, len);
+			strlcpy(field->sql_default_value, pSpan->zStart, len);
 		}
 	}
 	sql_expr_delete(pSpan->pExpr);
diff --git a/src/box/sql/insert.c b/src/box/sql/insert.c
index 03d44d517b..298ae2753f 100644
--- a/src/box/sql/insert.c
+++ b/src/box/sql/insert.c
@@ -579,7 +579,7 @@ sqlInsert(Parse * pParse,	/* Parser context */
 						tuple_format_field(
 							space->format, i);
 					struct Expr *dflt =
-						field->default_value_expr;
+						field->sql_default_value_expr;
 					sqlExprCode(pParse,
 							dflt,
 							regCols + i + 1);
@@ -641,7 +641,8 @@ sqlInsert(Parse * pParse,	/* Parser context */
 				}
 				struct tuple_field *field =
 					tuple_format_field(space->format, i);
-				struct Expr *dflt = field->default_value_expr;
+				struct Expr *dflt =
+					field->sql_default_value_expr;
 				sqlExprCodeFactorable(pParse,
 							  dflt,
 							  iRegStore);
@@ -1108,9 +1109,10 @@ xferOptimization(Parse * pParse,	/* Parser context */
 			return 0;
 		/* Default values for second and subsequent columns need to match. */
 		if (i > 0) {
-			char *src_expr_str = src->def->fields[i].default_value;
+			char *src_expr_str =
+				src->def->fields[i].sql_default_value;
 			char *dest_expr_str =
-				dest->def->fields[i].default_value;
+				dest->def->fields[i].sql_default_value;
 			if ((dest_expr_str == NULL) != (src_expr_str == NULL) ||
 			    (dest_expr_str &&
 			     strcmp(src_expr_str, dest_expr_str) != 0)
diff --git a/src/box/sql/pragma.c b/src/box/sql/pragma.c
index 47662d0f32..aab0f0d700 100644
--- a/src/box/sql/pragma.c
+++ b/src/box/sql/pragma.c
@@ -120,7 +120,8 @@ sql_pragma_table_info(struct Parse *parse, const char *tbl_name)
 		}
 		sqlVdbeMultiLoad(v, 1, "issisi", i, field->name,
 				     field_type_strs[field->type],
-				     !field->is_nullable, field->default_value,
+				     !field->is_nullable,
+				     field->sql_default_value,
 				     k);
 		sqlVdbeAddOp2(v, OP_ResultRow, 1, 6);
 	}
diff --git a/src/box/tuple_format.c b/src/box/tuple_format.c
index 71c97b9117..acf6938d14 100644
--- a/src/box/tuple_format.c
+++ b/src/box/tuple_format.c
@@ -191,8 +191,8 @@ tuple_field_delete(struct tuple_field *field)
 	for (uint32_t i = 0; i < field->constraint_count; i++)
 		field->constraint[i].destroy(&field->constraint[i]);
 	free(field->constraint);
-	if (field->default_value_expr != NULL)
-		tuple_format_expr_delete(field->default_value_expr);
+	if (field->sql_default_value_expr != NULL)
+		tuple_format_expr_delete(field->sql_default_value_expr);
 	free(field);
 }
 
@@ -503,11 +503,11 @@ tuple_format_create(struct tuple_format *format, struct key_def *const *keys,
 			tuple_constraint_array_new(fields[i].constraint_def,
 						   fields[i].constraint_count);
 		field->constraint_count = fields[i].constraint_count;
-		const char *expr = fields[i].default_value;
+		const char *expr = fields[i].sql_default_value;
 		if (expr != NULL) {
-			field->default_value_expr =
+			field->sql_default_value_expr =
 				tuple_format_expr_compile(expr, strlen(expr));
-			if (field->default_value_expr == NULL)
+			if (field->sql_default_value_expr == NULL)
 				return -1;
 		}
 	}
diff --git a/src/box/tuple_format.h b/src/box/tuple_format.h
index e81983d94d..eb4a1eb067 100644
--- a/src/box/tuple_format.h
+++ b/src/box/tuple_format.h
@@ -161,8 +161,8 @@ struct tuple_field {
 	struct tuple_constraint *constraint;
 	/** Number of constraints. */
 	uint32_t constraint_count;
-	/** AST for parsed default value. */
-	struct Expr *default_value_expr;
+	/** AST for parsed SQL default value. */
+	struct Expr *sql_default_value_expr;
 };
 
 /**
-- 
GitLab