Commit 3c29c489 authored by heikki@hundin.mysql.fi's avatar heikki@hundin.mysql.fi
Browse files

dict0dict.c:

  Revert the test changes to wait for a full push of new auto-inc algorithm
parent 51c80fae
Loading
Loading
Loading
Loading
+8 −31
Original line number Diff line number Diff line
@@ -270,7 +270,7 @@ void
dict_table_autoinc_initialize(
/*==========================*/
	dict_table_t*	table,	/* in: table */
	ib_longlong	value)	/* in: next value to assign to a row */
	ib_longlong	value)	/* in: value which was assigned to a row */
{
	mutex_enter(&(table->autoinc_mutex));

@@ -281,8 +281,8 @@ dict_table_autoinc_initialize(
}

/************************************************************************
Gets the next autoinc value (== autoinc counter value), 0 if not yet
initialized. If initialized, increments the counter by 1. */
Gets the next autoinc value, 0 if not yet initialized. If initialized,
increments the counter by 1. */

ib_longlong
dict_table_autoinc_get(
@@ -298,8 +298,8 @@ dict_table_autoinc_get(

		value = 0;
	} else {
		value = table->autoinc;
		table->autoinc = table->autoinc + 1;
		value = table->autoinc;
	}
	
	mutex_exit(&(table->autoinc_mutex));
@@ -334,43 +334,20 @@ dict_table_autoinc_read(
}

/************************************************************************
Peeks the autoinc counter value, 0 if not yet initialized. Does not
increment the counter. The read not protected by any mutex! */

ib_longlong
dict_table_autoinc_peek(
/*====================*/
				/* out: value of the counter */
	dict_table_t*	table)	/* in: table */
{
	ib_longlong	value;

	if (!table->autoinc_inited) {

		value = 0;
	} else {
		value = table->autoinc;
	}

	return(value);
}

/************************************************************************
Updates the autoinc counter if the value supplied is equal or bigger than the
Updates the autoinc counter if the value supplied is bigger than the
current value. If not inited, does nothing. */

void
dict_table_autoinc_update(
/*======================*/

	dict_table_t*	table,	/* in: table */
	ib_longlong	value)	/* in: value which was assigned to a row */
{
	mutex_enter(&(table->autoinc_mutex));

	if (table->autoinc_inited) {
		if (value >= table->autoinc) {
			table->autoinc = value + 1;
		if (value > table->autoinc) {
			table->autoinc = value;
		}
	}