mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
Merge bk-internal.mysql.com:/home/bk/mysql-maria
into mysql.com:/home/my/mysql-maria BitKeeper/etc/ignore: auto-union BUILD/SETUP.sh: Auto merged mysql-test/lib/init_db.sql: Auto merged mysql-test/lib/mtr_cases.pl: Auto merged mysql-test/lib/mtr_diff.pl: Auto merged mysql-test/lib/mtr_gcov.pl: Auto merged mysql-test/lib/mtr_gprof.pl: Auto merged mysql-test/lib/mtr_im.pl: Auto merged mysql-test/lib/mtr_io.pl: Auto merged mysql-test/lib/mtr_match.pl: Auto merged mysql-test/lib/mtr_misc.pl: Auto merged mysql-test/lib/mtr_process.pl: Auto merged mysql-test/lib/mtr_report.pl: Auto merged mysql-test/lib/mtr_stress.pl: Auto merged mysql-test/lib/mtr_timer.pl: Auto merged mysql-test/lib/mtr_unique.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/t/disabled.def: Auto merged mysql-test/t/myisam.test: Auto merged mysql-test/t/query_cache_notembedded.test: Auto merged sql/filesort.cc: Auto merged sql/handler.cc: Auto merged sql/slave.cc: Auto merged sql/slave.h: Auto merged sql/sql_table.cc: Auto merged storage/maria/ha_maria.h: Auto merged storage/maria/ma_bitmap.c: Auto merged storage/maria/ma_blockrec.c: Auto merged storage/maria/ma_blockrec.h: Auto merged storage/maria/ma_check.c: Auto merged storage/maria/ma_checksum.c: Auto merged storage/maria/ma_create.c: Auto merged storage/maria/ma_delete.c: Auto merged storage/maria/ma_delete_all.c: Auto merged storage/maria/ma_extra.c: Auto merged storage/maria/ma_info.c: Auto merged storage/maria/ma_search.c: Auto merged storage/maria/ma_test2.c: Auto merged storage/maria/ma_write.c: Auto merged storage/maria/maria_def.h: Auto merged storage/myisam/mi_create.c: Auto merged storage/myisam/mi_test2.c: Auto merged sql/share/errmsg.txt: Use remote version mysql-test/include/varchar.inc: Manual merge (take changes from remote tree) storage/maria/ha_maria.cc: Manual merge
This commit is contained in:
@@ -45,7 +45,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
key_length,info_length,key_segs,options,min_key_length_skip,
|
||||
base_pos,long_varchar_count,varchar_length,
|
||||
max_key_block_length,unique_key_parts,fulltext_keys,offset;
|
||||
uint aligned_key_start, block_length;
|
||||
uint aligned_key_start, block_length, res;
|
||||
ulong reclength, real_reclength,min_pack_length;
|
||||
char filename[FN_REFLEN],linkname[FN_REFLEN], *linkname_ptr;
|
||||
ulong pack_reclength;
|
||||
@@ -270,7 +270,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
keyseg->type != HA_KEYTYPE_VARBINARY2)
|
||||
{
|
||||
my_errno=HA_WRONG_CREATE_OPTION;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
}
|
||||
}
|
||||
keydef->keysegs+=sp_segs;
|
||||
@@ -279,7 +279,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
min_key_length_skip+=SPLEN*2*SPDIMS;
|
||||
#else
|
||||
my_errno= HA_ERR_UNSUPPORTED;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
#endif /*HAVE_SPATIAL*/
|
||||
}
|
||||
else if (keydef->flag & HA_FULLTEXT)
|
||||
@@ -295,7 +295,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
keyseg->type != HA_KEYTYPE_VARTEXT2)
|
||||
{
|
||||
my_errno=HA_WRONG_CREATE_OPTION;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
}
|
||||
if (!(keyseg->flag & HA_BLOB_PART) &&
|
||||
(keyseg->type == HA_KEYTYPE_VARTEXT1 ||
|
||||
@@ -420,7 +420,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
if (keydef->keysegs > HA_MAX_KEY_SEG)
|
||||
{
|
||||
my_errno=HA_WRONG_CREATE_OPTION;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
}
|
||||
/*
|
||||
key_segs may be 0 in the case when we only want to be able to
|
||||
@@ -445,7 +445,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
length >= HA_MAX_KEY_BUFF)
|
||||
{
|
||||
my_errno=HA_WRONG_CREATE_OPTION;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
}
|
||||
set_if_bigger(max_key_block_length,keydef->block_length);
|
||||
keydef->keylength= (uint16) key_length;
|
||||
@@ -492,7 +492,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
"indexes and/or unique constraints.",
|
||||
MYF(0), name + dirname_length(name));
|
||||
my_errno= HA_WRONG_CREATE_OPTION;
|
||||
goto err;
|
||||
goto err_no_lock;
|
||||
}
|
||||
|
||||
bmove(share.state.header.file_version,(byte*) myisam_file_magic,4);
|
||||
@@ -814,13 +814,16 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
|
||||
}
|
||||
errpos=0;
|
||||
pthread_mutex_unlock(&THR_LOCK_myisam);
|
||||
res= 0;
|
||||
if (my_close(file,MYF(0)))
|
||||
goto err;
|
||||
res= my_errno;
|
||||
my_free((char*) rec_per_key_part,MYF(0));
|
||||
DBUG_RETURN(0);
|
||||
DBUG_RETURN(res);
|
||||
|
||||
err:
|
||||
pthread_mutex_unlock(&THR_LOCK_myisam);
|
||||
err_no_lock:
|
||||
|
||||
save_errno=my_errno;
|
||||
switch (errpos) {
|
||||
case 3:
|
||||
|
||||
Reference in New Issue
Block a user