Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
d8f7573f
Commit
d8f7573f
authored
Feb 09, 2005
by
tomas@poseidon.ndb.mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
parents
d22acbb7
dcc65b77
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
71 additions
and
19 deletions
+71
-19
client/mysqltest.c
client/mysqltest.c
+5
-0
extra/my_print_defaults.c
extra/my_print_defaults.c
+5
-0
extra/perror.c
extra/perror.c
+5
-0
extra/resolve_stack_dump.c
extra/resolve_stack_dump.c
+5
-0
include/help_end.h
include/help_end.h
+1
-0
include/help_start.h
include/help_start.h
+2
-0
isam/pack_isam.c
isam/pack_isam.c
+4
-0
myisam/myisamlog.c
myisam/myisamlog.c
+2
-0
mysql-test/r/heap_hash.result
mysql-test/r/heap_hash.result
+10
-0
mysql-test/t/heap_hash.test
mysql-test/t/heap_hash.test
+6
-0
mysys/my_rename.c
mysys/my_rename.c
+1
-1
netware/BUILD/nwbootstrap
netware/BUILD/nwbootstrap
+1
-7
netware/mysql_test_run.c
netware/mysql_test_run.c
+3
-2
scripts/make_binary_distribution.sh
scripts/make_binary_distribution.sh
+6
-2
sql/ha_heap.cc
sql/ha_heap.cc
+7
-6
sql/mysqld.cc
sql/mysqld.cc
+7
-1
sql/sql_select.cc
sql/sql_select.cc
+1
-0
No files found.
client/mysqltest.c
View file @
d8f7573f
...
@@ -2169,6 +2169,9 @@ static struct my_option my_long_options[] =
...
@@ -2169,6 +2169,9 @@ static struct my_option my_long_options[] =
{
0
,
0
,
0
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
}
{
0
,
0
,
0
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
}
};
};
#include <help_start.h>
static
void
print_version
(
void
)
static
void
print_version
(
void
)
{
{
printf
(
"%s Ver %s Distrib %s, for %s (%s)
\n
"
,
my_progname
,
MTEST_VERSION
,
printf
(
"%s Ver %s Distrib %s, for %s (%s)
\n
"
,
my_progname
,
MTEST_VERSION
,
...
@@ -2187,6 +2190,8 @@ void usage()
...
@@ -2187,6 +2190,8 @@ void usage()
my_print_variables
(
my_long_options
);
my_print_variables
(
my_long_options
);
}
}
#include <help_end.h>
static
my_bool
static
my_bool
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
...
...
extra/my_print_defaults.c
View file @
d8f7573f
...
@@ -55,6 +55,9 @@ static struct my_option my_long_options[] =
...
@@ -55,6 +55,9 @@ static struct my_option my_long_options[] =
{
0
,
0
,
0
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
}
{
0
,
0
,
0
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
}
};
};
#include <help_start.h>
static
void
usage
(
my_bool
version
)
static
void
usage
(
my_bool
version
)
{
{
printf
(
"%s Ver 1.6 for %s at %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
printf
(
"%s Ver 1.6 for %s at %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
...
@@ -69,6 +72,8 @@ static void usage(my_bool version)
...
@@ -69,6 +72,8 @@ static void usage(my_bool version)
printf
(
"
\n
Example usage:
\n
%s --config-file=my client mysql
\n
"
,
my_progname
);
printf
(
"
\n
Example usage:
\n
%s --config-file=my client mysql
\n
"
,
my_progname
);
}
}
#include <help_end.h>
static
my_bool
static
my_bool
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
...
...
extra/perror.c
View file @
d8f7573f
...
@@ -113,12 +113,15 @@ static HA_ERRORS ha_errlist[]=
...
@@ -113,12 +113,15 @@ static HA_ERRORS ha_errlist[]=
};
};
#include <help_start.h>
static
void
print_version
(
void
)
static
void
print_version
(
void
)
{
{
printf
(
"%s Ver %s, for %s (%s)
\n
"
,
my_progname
,
PERROR_VERSION
,
printf
(
"%s Ver %s, for %s (%s)
\n
"
,
my_progname
,
PERROR_VERSION
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
SYSTEM_TYPE
,
MACHINE_TYPE
);
}
}
static
void
usage
(
void
)
static
void
usage
(
void
)
{
{
print_version
();
print_version
();
...
@@ -130,6 +133,8 @@ static void usage(void)
...
@@ -130,6 +133,8 @@ static void usage(void)
my_print_variables
(
my_long_options
);
my_print_variables
(
my_long_options
);
}
}
#include <help_end.h>
static
my_bool
static
my_bool
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
...
...
extra/resolve_stack_dump.c
View file @
d8f7573f
...
@@ -65,12 +65,16 @@ static struct my_option my_long_options[] =
...
@@ -65,12 +65,16 @@ static struct my_option my_long_options[] =
static
void
verify_sort
();
static
void
verify_sort
();
#include <help_start.h>
static
void
print_version
(
void
)
static
void
print_version
(
void
)
{
{
printf
(
"%s Ver %s Distrib %s, for %s (%s)
\n
"
,
my_progname
,
DUMP_VERSION
,
printf
(
"%s Ver %s Distrib %s, for %s (%s)
\n
"
,
my_progname
,
DUMP_VERSION
,
MYSQL_SERVER_VERSION
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
MYSQL_SERVER_VERSION
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
}
}
static
void
usage
()
static
void
usage
()
{
{
print_version
();
print_version
();
...
@@ -87,6 +91,7 @@ The numeric-dump-file should contain a numeric stack trace from mysqld.\n\
...
@@ -87,6 +91,7 @@ The numeric-dump-file should contain a numeric stack trace from mysqld.\n\
If the numeric-dump-file is not given, the stack trace is read from stdin.
\n
"
);
If the numeric-dump-file is not given, the stack trace is read from stdin.
\n
"
);
}
}
#include <help_end.h>
static
void
die
(
const
char
*
fmt
,
...)
static
void
die
(
const
char
*
fmt
,
...)
...
...
include/help_end.h
View file @
d8f7573f
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
#undef printf
#undef printf
#undef puts
#undef puts
#undef fputs
#undef fputs
#undef fputc
#undef putchar
#undef putchar
#endif
#endif
include/help_start.h
View file @
d8f7573f
...
@@ -4,4 +4,6 @@
...
@@ -4,4 +4,6 @@
#define printf consoleprintf
#define printf consoleprintf
#define puts(s) consoleprintf("%s\n",s)
#define puts(s) consoleprintf("%s\n",s)
#define fputs(s,f) puts(s)
#define fputs(s,f) puts(s)
#define fputc(s,f) consoleprintf("%c", s)
#define putchar(s) consoleprintf("%c", s)
#endif
#endif
isam/pack_isam.c
View file @
d8f7573f
...
@@ -260,6 +260,8 @@ static struct my_option my_long_options[] =
...
@@ -260,6 +260,8 @@ static struct my_option my_long_options[] =
};
};
#include <help_start.h>
static
void
print_version
(
void
)
static
void
print_version
(
void
)
{
{
printf
(
"%s Ver 5.10 for %s on %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
printf
(
"%s Ver 5.10 for %s on %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
...
@@ -283,6 +285,8 @@ static void usage(void)
...
@@ -283,6 +285,8 @@ static void usage(void)
my_print_variables
(
my_long_options
);
my_print_variables
(
my_long_options
);
}
}
#include <help_end.h>
static
my_bool
static
my_bool
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
...
...
myisam/myisamlog.c
View file @
d8f7573f
...
@@ -247,6 +247,7 @@ static void get_options(register int *argc, register char ***argv)
...
@@ -247,6 +247,7 @@ static void get_options(register int *argc, register char ***argv)
/* Fall through */
/* Fall through */
case
'I'
:
case
'I'
:
case
'?'
:
case
'?'
:
#include <help_start.h>
printf
(
"%s Ver 1.4 for %s at %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
printf
(
"%s Ver 1.4 for %s at %s
\n
"
,
my_progname
,
SYSTEM_TYPE
,
MACHINE_TYPE
);
MACHINE_TYPE
);
puts
(
"By Monty, for your professional use
\n
"
);
puts
(
"By Monty, for your professional use
\n
"
);
...
@@ -268,6 +269,7 @@ static void get_options(register int *argc, register char ***argv)
...
@@ -268,6 +269,7 @@ static void get_options(register int *argc, register char ***argv)
puts
(
"If a recover is done all writes and all possibly updates and deletes is done
\n
and errors are only counted."
);
puts
(
"If a recover is done all writes and all possibly updates and deletes is done
\n
and errors are only counted."
);
puts
(
"If one gives table names as arguments only these tables will be updated
\n
"
);
puts
(
"If one gives table names as arguments only these tables will be updated
\n
"
);
help
=
1
;
help
=
1
;
#include <help_end.h>
break
;
break
;
default:
default:
printf
(
"illegal option:
\"
-%c
\"\n
"
,
*
pos
);
printf
(
"illegal option:
\"
-%c
\"\n
"
,
*
pos
);
...
...
mysql-test/r/heap_hash.result
View file @
d8f7573f
...
@@ -355,3 +355,13 @@ id select_type table type possible_keys key key_len ref rows Extra
...
@@ -355,3 +355,13 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref heap_idx heap_idx 20 const 7 Using where
1 SIMPLE t1 ref heap_idx heap_idx 20 const 7 Using where
1 SIMPLE t3 ref a a 40 func,const 6 Using where
1 SIMPLE t3 ref a a 40 func,const 6 Using where
drop table t1, t2, t3;
drop table t1, t2, t3;
create temporary table t1 ( a int, index (a) ) engine=memory;
insert into t1 values (1),(2),(3),(4),(5);
select a from t1 where a in (1,3);
a
1
3
explain select a from t1 where a in (1,3);
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 5 NULL 2 Using where
drop table t1;
mysql-test/t/heap_hash.test
View file @
d8f7573f
...
@@ -251,3 +251,9 @@ explain select * from t1 ignore key(btree_idx), t3 where t1.name='matt' and t3.a
...
@@ -251,3 +251,9 @@ explain select * from t1 ignore key(btree_idx), t3 where t1.name='matt' and t3.a
drop
table
t1
,
t2
,
t3
;
drop
table
t1
,
t2
,
t3
;
# Fix for BUG#8371: wrong rec_per_key value for hash index on temporary table
create
temporary
table
t1
(
a
int
,
index
(
a
)
)
engine
=
memory
;
insert
into
t1
values
(
1
),(
2
),(
3
),(
4
),(
5
);
select
a
from
t1
where
a
in
(
1
,
3
);
explain
select
a
from
t1
where
a
in
(
1
,
3
);
drop
table
t1
;
mysys/my_rename.c
View file @
d8f7573f
...
@@ -45,7 +45,7 @@ int my_rename(const char *from, const char *to, myf MyFlags)
...
@@ -45,7 +45,7 @@ int my_rename(const char *from, const char *to, myf MyFlags)
}
}
#endif
#endif
#if defined(HAVE_RENAME)
#if defined(HAVE_RENAME)
#if
def __WIN__
#if
defined(__WIN__) || defined(__NETWARE__)
/*
/*
On windows we can't rename over an existing file:
On windows we can't rename over an existing file:
Remove any conflicting files:
Remove any conflicting files:
...
...
netware/BUILD/nwbootstrap
View file @
d8f7573f
...
@@ -171,15 +171,9 @@ do
...
@@ -171,15 +171,9 @@ do
rm
$file
.org
rm
$file
.org
done
done
# create the libmysql.imp file in netware folder from libmysql/libmysql.def
# file
echo
"generating llibmysql.imp file..."
awk
'BEGIN{x=0;} x==1 {print $1;next} /EXPORTS/{x=1}'
libmysql/libmysql.def
>
netware/libmysql.imp
# create the libmysql.imp file in netware folder from libmysql/libmysql.def file
# create the libmysql.imp file in netware folder from libmysql/libmysql.def file
echo
"generating llibmysql.imp file..."
echo
"generating llibmysql.imp file..."
awk
'BEGIN{x=0;} x==1 {print $1;next} /EXPORTS/{x=1}'
libmysql/libmysql.def
>
netware/libmysql.imp
awk
'BEGIN{x=0;} END{printf("\n");} x==1 {printf(" %s",$1); x++; next} x>1 {printf(",\n %s", $1);next} /EXPORTS/{x=1}'
libmysql/libmysql.def
>
netware/libmysql.imp
# build linux tools
# build linux tools
echo
"compiling linux tools..."
echo
"compiling linux tools..."
...
...
netware/mysql_test_run.c
View file @
d8f7573f
...
@@ -192,7 +192,7 @@ void install_db(char *datadir)
...
@@ -192,7 +192,7 @@ void install_db(char *datadir)
char
error
[
PATH_MAX
];
char
error
[
PATH_MAX
];
// input file
// input file
snprintf
(
input
,
PATH_MAX
,
"%s/bin/
ini
t_db.sql"
,
base_dir
);
snprintf
(
input
,
PATH_MAX
,
"%s/bin/
tes
t_db.sql"
,
base_dir
);
snprintf
(
output
,
PATH_MAX
,
"%s/install.out"
,
datadir
);
snprintf
(
output
,
PATH_MAX
,
"%s/install.out"
,
datadir
);
snprintf
(
error
,
PATH_MAX
,
"%s/install.err"
,
datadir
);
snprintf
(
error
,
PATH_MAX
,
"%s/install.err"
,
datadir
);
...
@@ -1160,7 +1160,8 @@ void setup(char *file)
...
@@ -1160,7 +1160,8 @@ void setup(char *file)
setenv
(
"MASTER_MYPORT"
,
"9306"
,
1
);
setenv
(
"MASTER_MYPORT"
,
"9306"
,
1
);
setenv
(
"SLAVE_MYPORT"
,
"9307"
,
1
);
setenv
(
"SLAVE_MYPORT"
,
"9307"
,
1
);
setenv
(
"MYSQL_TCP_PORT"
,
"3306"
,
1
);
setenv
(
"MYSQL_TCP_PORT"
,
"3306"
,
1
);
snprintf
(
file_path
,
PATH_MAX
*
2
,
"%s/mysql_client_test --no-defaults --testcase--user=root --port=%u "
,
bin_dir
,
master_port
);
setenv
(
"MYSQL_CLIENT_TEST"
,
file_path
,
1
);
}
}
/******************************************************************************
/******************************************************************************
...
...
scripts/make_binary_distribution.sh
View file @
d8f7573f
...
@@ -242,8 +242,12 @@ rm -f $BASE/bin/Makefile* $BASE/bin/*.in $BASE/bin/*.sh $BASE/bin/mysql_install_
...
@@ -242,8 +242,12 @@ rm -f $BASE/bin/Makefile* $BASE/bin/*.in $BASE/bin/*.sh $BASE/bin/mysql_install_
# Copy system dependent files
# Copy system dependent files
#
#
if
[
$BASE_SYSTEM
=
"netware"
]
;
then
if
[
$BASE_SYSTEM
=
"netware"
]
;
then
cp
./netware/static_init_db.sql ./netware/init_db.sql
echo
"CREATE DATABASE mysql;"
>
$BASE
/bin/init_db.sql
./scripts/fill_help_tables < ./Docs/manual.texi
>>
./netware/init_db.sql
echo
"CREATE DATABASE test;"
>>
$BASE
/bin/init_db.sql
sh ./scripts/mysql_create_system_tables.sh real
""
"%"
0
>>
$BASE
/bin/init_db.sql
sh ./scripts/mysql_create_system_tables.sh
test
""
"%"
0
>
$BASE
/bin/test_db.sql
# cp ./netware/static_init_db.sql ./netware/init_db.sql
# ./scripts/fill_help_tables < ./Docs/manual.texi >> ./netware/init_db.sql
fi
fi
#
#
...
...
sql/ha_heap.cc
View file @
d8f7573f
...
@@ -60,8 +60,7 @@ int ha_heap::open(const char *name, int mode, uint test_if_locked)
...
@@ -60,8 +60,7 @@ int ha_heap::open(const char *name, int mode, uint test_if_locked)
{
{
/* Initialize variables for the opened table */
/* Initialize variables for the opened table */
set_keys_for_scanning
();
set_keys_for_scanning
();
if
(
table
->
tmp_table
==
NO_TMP_TABLE
)
update_key_stats
();
update_key_stats
();
}
}
return
(
file
?
0
:
1
);
return
(
file
?
0
:
1
);
}
}
...
@@ -103,6 +102,8 @@ void ha_heap::update_key_stats()
...
@@ -103,6 +102,8 @@ void ha_heap::update_key_stats()
for
(
uint
i
=
0
;
i
<
table
->
keys
;
i
++
)
for
(
uint
i
=
0
;
i
<
table
->
keys
;
i
++
)
{
{
KEY
*
key
=
table
->
key_info
+
i
;
KEY
*
key
=
table
->
key_info
+
i
;
if
(
!
key
->
rec_per_key
)
continue
;
if
(
key
->
algorithm
!=
HA_KEY_ALG_BTREE
)
if
(
key
->
algorithm
!=
HA_KEY_ALG_BTREE
)
{
{
ha_rows
hash_buckets
=
file
->
s
->
keydef
[
i
].
hash_buckets
;
ha_rows
hash_buckets
=
file
->
s
->
keydef
[
i
].
hash_buckets
;
...
@@ -122,8 +123,8 @@ int ha_heap::write_row(byte * buf)
...
@@ -122,8 +123,8 @@ int ha_heap::write_row(byte * buf)
if
(
table
->
next_number_field
&&
buf
==
table
->
record
[
0
])
if
(
table
->
next_number_field
&&
buf
==
table
->
record
[
0
])
update_auto_increment
();
update_auto_increment
();
res
=
heap_write
(
file
,
buf
);
res
=
heap_write
(
file
,
buf
);
if
(
!
res
&&
table
->
tmp_table
==
NO_TMP_TABLE
&&
if
(
!
res
&&
++
records_changed
*
HEAP_STATS_UPDATE_THRESHOLD
>
++
records_changed
*
HEAP_STATS_UPDATE_THRESHOLD
>
file
->
s
->
records
)
file
->
s
->
records
)
update_key_stats
();
update_key_stats
();
return
res
;
return
res
;
}
}
...
@@ -135,8 +136,8 @@ int ha_heap::update_row(const byte * old_data, byte * new_data)
...
@@ -135,8 +136,8 @@ int ha_heap::update_row(const byte * old_data, byte * new_data)
if
(
table
->
timestamp_field_type
&
TIMESTAMP_AUTO_SET_ON_UPDATE
)
if
(
table
->
timestamp_field_type
&
TIMESTAMP_AUTO_SET_ON_UPDATE
)
table
->
timestamp_field
->
set_time
();
table
->
timestamp_field
->
set_time
();
res
=
heap_update
(
file
,
old_data
,
new_data
);
res
=
heap_update
(
file
,
old_data
,
new_data
);
if
(
!
res
&&
table
->
tmp_table
==
NO_TMP_TABLE
&&
if
(
!
res
&&
++
records_changed
*
HEAP_STATS_UPDATE_THRESHOLD
>
++
records_changed
*
HEAP_STATS_UPDATE_THRESHOLD
>
file
->
s
->
records
)
file
->
s
->
records
)
update_key_stats
();
update_key_stats
();
return
res
;
return
res
;
}
}
...
...
sql/mysqld.cc
View file @
d8f7573f
...
@@ -147,6 +147,10 @@ int deny_severity = LOG_WARNING;
...
@@ -147,6 +147,10 @@ int deny_severity = LOG_WARNING;
#include <sys/mman.h>
#include <sys/mman.h>
#endif
#endif
#define zVOLSTATE_ACTIVE 6
#define zVOLSTATE_DEACTIVE 2
#define zVOLSTATE_MAINTENANCE 3
#ifdef __NETWARE__
#ifdef __NETWARE__
#include <nks/vm.h>
#include <nks/vm.h>
#include <library.h>
#include <library.h>
...
@@ -1667,7 +1671,9 @@ ulong neb_event_callback(struct EventBlock *eblock)
...
@@ -1667,7 +1671,9 @@ ulong neb_event_callback(struct EventBlock *eblock)
voldata
=
(
EventChangeVolStateEnter_s
*
)
eblock
->
EBEventData
;
voldata
=
(
EventChangeVolStateEnter_s
*
)
eblock
->
EBEventData
;
/* Deactivation of a volume */
/* Deactivation of a volume */
if
((
voldata
->
oldState
==
6
&&
voldata
->
newState
==
2
))
if
((
voldata
->
oldState
==
zVOLSTATE_ACTIVE
&&
voldata
->
newState
==
zVOLSTATE_DEACTIVE
||
voldata
->
newState
==
zVOLSTATE_MAINTENANCE
))
{
{
/*
/*
Ensure that we bring down MySQL server only for MySQL data
Ensure that we bring down MySQL server only for MySQL data
...
...
sql/sql_select.cc
View file @
d8f7573f
...
@@ -5289,6 +5289,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
...
@@ -5289,6 +5289,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
keyinfo
->
key_length
=
(
uint16
)
reclength
;
keyinfo
->
key_length
=
(
uint16
)
reclength
;
keyinfo
->
name
=
(
char
*
)
"tmp"
;
keyinfo
->
name
=
(
char
*
)
"tmp"
;
keyinfo
->
algorithm
=
HA_KEY_ALG_UNDEF
;
keyinfo
->
algorithm
=
HA_KEY_ALG_UNDEF
;
keyinfo
->
rec_per_key
=
0
;
if
(
null_pack_length
)
if
(
null_pack_length
)
{
{
key_part_info
->
null_bit
=
0
;
key_part_info
->
null_bit
=
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment