Commit 2f6bb04f authored by unknown's avatar unknown
Browse files

4.1->5.0 merge


include/config-netware.h:
  Merged
innobase/row/row0ins.c:
  BUG#10511: Per alexi's instructions, the changes in innobase/row/row0ins.c are not 
  propagated to 5.x
mysql-test/r/create.result:
  Auto Merged
mysql-test/t/create.test:
  Auto Merged
sql/field.cc:
  Auto Merged
sql/field.h:
  Manual Merge
sql/sql_table.cc:
  Auto Merged
parents ed9a29f1 d5bb6606
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -118,15 +118,12 @@ extern "C" {
/* do not use the extended time in LibC sys\stat.h */
#define _POSIX_SOURCE

/* Kernel call on NetWare that will only yield if our time slice is up */
void kYieldIfTimeSliceUp(void);

/* Some macros for portability */

#define set_timespec(ABSTIME,SEC) { (ABSTIME).tv_sec=time(NULL)+(SEC); (ABSTIME).tv_nsec=0; }

/* extra protection against CPU Hogs on NetWare */
#define NETWARE_YIELD kYieldIfTimeSliceUp()
#define NETWARE_YIELD pthread_yield()
/* Screen mode for help texts */
#define NETWARE_SET_SCREEN_MODE(A) setscreenmode(A)

+11 −0
Original line number Diff line number Diff line
@@ -641,3 +641,14 @@ create table if not exists t1 (a int);
Warnings:
Note	1050	Table 't1' already exists
drop table t1;
create table t1 (
a varchar(112) charset utf8 collate utf8_bin not null,
primary key (a)
) select 'test' as a ;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` varchar(112) character set utf8 collate utf8_bin NOT NULL default '',
  PRIMARY KEY  (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
+8 −0
Original line number Diff line number Diff line
@@ -545,4 +545,12 @@ create table t1 (a int);
create table if not exists t1 (a int);
drop table t1;

# BUG#14139
create table t1 (
  a varchar(112) charset utf8 collate utf8_bin not null,
  primary key (a)
) select 'test' as a ;
show create table t1;
drop table t1;

# End of 4.1 tests
+12 −0
Original line number Diff line number Diff line
@@ -8186,8 +8186,20 @@ void Field_bit_as_char::sql_type(String &res) const
  Handling of field and create_field
*****************************************************************************/

/*
  Convert create_field::length from number of characters to number of bytes

  SYNOPSIS
    create_field::create_length_to_internal_length()
  
  DESCRIPTION
    Convert create_field::length from number of characters to number of bytes,
    save original value in chars_length.
*/

void create_field::create_length_to_internal_length(void)
{
  chars_length= length;
  switch (sql_type) {
  case MYSQL_TYPE_TINY_BLOB:
  case MYSQL_TYPE_MEDIUM_BLOB:
+5 −0
Original line number Diff line number Diff line
@@ -1368,6 +1368,11 @@ class create_field :public Sql_alloc
  LEX_STRING comment;			// Comment for field
  Item	*def;				// Default value
  enum	enum_field_types sql_type;
  /*
    At various stages in execution this can be length of field in bytes or
    max number of characters. 
  */
  ulong length;
  ulong length;
  uint  decimals, flags, pack_length, key_length;
  Field::utype unireg_check;
Loading