Commit 3c9f1a9a authored by monty@mashka.mysql.fi's avatar monty@mashka.mysql.fi
Browse files

Merge work:/my/mysql-3.23 into mashka.mysql.fi:/home/my/mysql-3.23

parents f753fdd3 f93cb632
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -46928,6 +46928,9 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.52
@itemize @bullet
@item
Fixed bug with creating an auto-increment value on second part of a
@code{UNIQUE()} key where first part could contain NULL values.
@item
Don't write slave-timeout reconnects to the error log.
@item
Fixed bug with slave net read timeouting
+1 −1
Original line number Diff line number Diff line
@@ -59,7 +59,7 @@ int find_ref_key(TABLE *table,Field *field, uint *key_length)
    {
      if (key_part->offset == fieldpos)
	return(i);			/* Use this key */
      *key_length+=key_part->length;
      *key_length+=key_part->store_length;
    }
  }
  return(-1);					/* No key is ok */
+14 −11
Original line number Diff line number Diff line
@@ -346,17 +346,7 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
      }
    }
    if (reg_field->unireg_check == Field::NEXT_NUMBER)
    {
      if ((int) (outparam->next_number_index= (uint)
		 find_ref_key(outparam,reg_field,
			      &outparam->next_number_key_offset)) < 0)
	reg_field->unireg_check=Field::NONE;	/* purecov: inspected */
      else
      {
      outparam->found_next_number_field= reg_field;
	reg_field->flags|=AUTO_INCREMENT_FLAG;
      }
    }
    if (outparam->timestamp_field == reg_field)
      outparam->timestamp_field_offset=i;
    if (use_hash)
@@ -507,6 +497,19 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
      bfill(outparam->null_flags+outparam->rec_buff_length*2,null_length,255);
  }

  if ((reg_field=outparam->found_next_number_field))
  {
    if ((int) (outparam->next_number_index= (uint)
	       find_ref_key(outparam,reg_field,
			    &outparam->next_number_key_offset)) < 0)
    {
      reg_field->unireg_check=Field::NONE;	/* purecov: inspected */
      outparam->found_next_number_field=0;
    }
    else
      reg_field->flags|=AUTO_INCREMENT_FLAG;
  }

  if (outparam->blob_fields)
  {
    Field **ptr;