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
09f36a69
Commit
09f36a69
authored
Jan 15, 2005
by
guilhem@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-clean
parents
8ee8543a
cd577f25
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
54 additions
and
20 deletions
+54
-20
Build-tools/Do-compile
Build-tools/Do-compile
+2
-1
configure.in
configure.in
+1
-1
heap/hp_create.c
heap/hp_create.c
+4
-3
heap/hp_write.c
heap/hp_write.c
+2
-1
include/heap.h
include/heap.h
+4
-3
mysql-test/r/func_gconcat.result
mysql-test/r/func_gconcat.result
+5
-0
mysql-test/t/func_gconcat.test
mysql-test/t/func_gconcat.test
+7
-0
ndb/src/common/util/version.c
ndb/src/common/util/version.c
+1
-0
scripts/mysql_install_db.sh
scripts/mysql_install_db.sh
+2
-2
sql/ha_heap.cc
sql/ha_heap.cc
+18
-6
sql/item_sum.h
sql/item_sum.h
+3
-2
support-files/mysql.spec.sh
support-files/mysql.spec.sh
+5
-1
No files found.
Build-tools/Do-compile
View file @
09f36a69
...
@@ -264,7 +264,8 @@ if ($opt_stage <= 1)
...
@@ -264,7 +264,8 @@ if ($opt_stage <= 1)
$opt_config_options
.=
"
--with-berkeley-db
"
if
(
$opt_bdb
);
$opt_config_options
.=
"
--with-berkeley-db
"
if
(
$opt_bdb
);
$opt_config_options
.=
"
--with-zlib-dir=bundled
"
if
(
$opt_bundled_zlib
);
$opt_config_options
.=
"
--with-zlib-dir=bundled
"
if
(
$opt_bundled_zlib
);
$opt_config_options
.=
"
--with-client-ldflags=-all-static
"
if
(
$opt_static_client
);
$opt_config_options
.=
"
--with-client-ldflags=-all-static
"
if
(
$opt_static_client
);
$opt_config_options
.=
"
--with-debug
"
if
(
$opt_with_debug
);
$opt_config_options
.=
"
--with-debug
"
if
(
$opt_with_debug
);
$opt_config_options
.=
"
--without-ndb-debug
"
if
(
$opt_with_debug
&&
$opt_with_cluster
);
$opt_config_options
.=
"
--with-libwrap
"
if
(
$opt_libwrap
);
$opt_config_options
.=
"
--with-libwrap
"
if
(
$opt_libwrap
);
$opt_config_options
.=
"
--with-low-memory
"
if
(
$opt_with_low_memory
);
$opt_config_options
.=
"
--with-low-memory
"
if
(
$opt_with_low_memory
);
$opt_config_options
.=
"
--with-mysqld-ldflags=-all-static
"
if
(
$opt_static_server
);
$opt_config_options
.=
"
--with-mysqld-ldflags=-all-static
"
if
(
$opt_static_server
);
...
...
configure.in
View file @
09f36a69
...
@@ -16,7 +16,7 @@ SHARED_LIB_VERSION=14:0:0
...
@@ -16,7 +16,7 @@ SHARED_LIB_VERSION=14:0:0
# ndb version
# ndb version
NDB_VERSION_MAJOR
=
4
NDB_VERSION_MAJOR
=
4
NDB_VERSION_MINOR
=
1
NDB_VERSION_MINOR
=
1
NDB_VERSION_BUILD
=
9
NDB_VERSION_BUILD
=
10
NDB_VERSION_STATUS
=
""
NDB_VERSION_STATUS
=
""
# Set all version vars based on $VERSION. How do we do this more elegant ?
# Set all version vars based on $VERSION. How do we do this more elegant ?
...
...
heap/hp_create.c
View file @
09f36a69
...
@@ -123,15 +123,15 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef,
...
@@ -123,15 +123,15 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef,
keyseg
->
flag
=
0
;
keyseg
->
flag
=
0
;
keyseg
->
null_bit
=
0
;
keyseg
->
null_bit
=
0
;
keyseg
++
;
keyseg
++
;
init_tree
(
&
keyinfo
->
rb_tree
,
0
,
0
,
sizeof
(
byte
*
),
init_tree
(
&
keyinfo
->
rb_tree
,
0
,
0
,
sizeof
(
byte
*
),
(
qsort_cmp2
)
keys_compare
,
1
,
NULL
,
NULL
);
(
qsort_cmp2
)
keys_compare
,
1
,
NULL
,
NULL
);
keyinfo
->
delete_key
=
hp_rb_delete_key
;
keyinfo
->
delete_key
=
hp_rb_delete_key
;
keyinfo
->
write_key
=
hp_rb_write_key
;
keyinfo
->
write_key
=
hp_rb_write_key
;
}
}
else
else
{
{
init_block
(
&
keyinfo
->
block
,
sizeof
(
HASH_INFO
),
min_records
,
init_block
(
&
keyinfo
->
block
,
sizeof
(
HASH_INFO
),
min_records
,
max_records
);
max_records
);
keyinfo
->
delete_key
=
hp_delete_key
;
keyinfo
->
delete_key
=
hp_delete_key
;
keyinfo
->
write_key
=
hp_write_key
;
keyinfo
->
write_key
=
hp_write_key
;
...
@@ -140,6 +140,7 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef,
...
@@ -140,6 +140,7 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef,
}
}
share
->
min_records
=
min_records
;
share
->
min_records
=
min_records
;
share
->
max_records
=
max_records
;
share
->
max_records
=
max_records
;
share
->
max_table_size
=
create_info
->
max_table_size
;
share
->
data_length
=
share
->
index_length
=
0
;
share
->
data_length
=
share
->
index_length
=
0
;
share
->
reclength
=
reclength
;
share
->
reclength
=
reclength
;
share
->
blength
=
1
;
share
->
blength
=
1
;
...
...
heap/hp_write.c
View file @
09f36a69
...
@@ -143,7 +143,8 @@ static byte *next_free_record_pos(HP_SHARE *info)
...
@@ -143,7 +143,8 @@ static byte *next_free_record_pos(HP_SHARE *info)
}
}
if
(
!
(
block_pos
=
(
info
->
records
%
info
->
block
.
records_in_block
)))
if
(
!
(
block_pos
=
(
info
->
records
%
info
->
block
.
records_in_block
)))
{
{
if
(
info
->
records
>
info
->
max_records
&&
info
->
max_records
)
if
((
info
->
records
>
info
->
max_records
&&
info
->
max_records
)
||
(
info
->
data_length
+
info
->
index_length
>=
info
->
max_table_size
))
{
{
my_errno
=
HA_ERR_RECORD_FILE_FULL
;
my_errno
=
HA_ERR_RECORD_FILE_FULL
;
DBUG_RETURN
(
NULL
);
DBUG_RETURN
(
NULL
);
...
...
include/heap.h
View file @
09f36a69
...
@@ -125,8 +125,8 @@ typedef struct st_hp_keydef /* Key definition with open */
...
@@ -125,8 +125,8 @@ typedef struct st_hp_keydef /* Key definition with open */
TREE
rb_tree
;
TREE
rb_tree
;
int
(
*
write_key
)(
struct
st_heap_info
*
info
,
struct
st_hp_keydef
*
keyinfo
,
int
(
*
write_key
)(
struct
st_heap_info
*
info
,
struct
st_hp_keydef
*
keyinfo
,
const
byte
*
record
,
byte
*
recpos
);
const
byte
*
record
,
byte
*
recpos
);
int
(
*
delete_key
)(
struct
st_heap_info
*
info
,
struct
st_hp_keydef
*
keyinfo
,
int
(
*
delete_key
)(
struct
st_heap_info
*
info
,
struct
st_hp_keydef
*
keyinfo
,
const
byte
*
record
,
byte
*
recpos
,
int
flag
);
const
byte
*
record
,
byte
*
recpos
,
int
flag
);
uint
(
*
get_key_length
)(
struct
st_hp_keydef
*
keydef
,
const
byte
*
key
);
uint
(
*
get_key_length
)(
struct
st_hp_keydef
*
keydef
,
const
byte
*
key
);
}
HP_KEYDEF
;
}
HP_KEYDEF
;
...
@@ -135,7 +135,7 @@ typedef struct st_heap_share
...
@@ -135,7 +135,7 @@ typedef struct st_heap_share
HP_BLOCK
block
;
HP_BLOCK
block
;
HP_KEYDEF
*
keydef
;
HP_KEYDEF
*
keydef
;
ulong
min_records
,
max_records
;
/* Params to open */
ulong
min_records
,
max_records
;
/* Params to open */
ulong
data_length
,
index_length
;
ulong
data_length
,
index_length
,
max_table_size
;
uint
records
;
/* records */
uint
records
;
/* records */
uint
blength
;
/* records rounded up to 2^n */
uint
blength
;
/* records rounded up to 2^n */
uint
deleted
;
/* Deleted records in database */
uint
deleted
;
/* Deleted records in database */
...
@@ -185,6 +185,7 @@ typedef struct st_heap_create_info
...
@@ -185,6 +185,7 @@ typedef struct st_heap_create_info
{
{
uint
auto_key
;
uint
auto_key
;
uint
auto_key_type
;
uint
auto_key_type
;
ulong
max_table_size
;
ulonglong
auto_increment
;
ulonglong
auto_increment
;
}
HP_CREATE_INFO
;
}
HP_CREATE_INFO
;
...
...
mysql-test/r/func_gconcat.result
View file @
09f36a69
...
@@ -457,3 +457,8 @@ group_concat(distinct b order by b)
...
@@ -457,3 +457,8 @@ group_concat(distinct b order by b)
Warnings:
Warnings:
Warning 1260 2 line(s) were cut by GROUP_CONCAT()
Warning 1260 2 line(s) were cut by GROUP_CONCAT()
drop table t1;
drop table t1;
CREATE TABLE t1 (id int);
SELECT GROUP_CONCAT(id) AS gc FROM t1 HAVING gc IS NULL;
gc
NULL
DROP TABLE t1;
mysql-test/t/func_gconcat.test
View file @
09f36a69
...
@@ -277,3 +277,10 @@ select group_concat(b order by b) from t1 group by a;
...
@@ -277,3 +277,10 @@ select group_concat(b order by b) from t1 group by a;
select
group_concat
(
distinct
b
order
by
b
)
from
t1
group
by
a
;
select
group_concat
(
distinct
b
order
by
b
)
from
t1
group
by
a
;
drop
table
t1
;
drop
table
t1
;
#
# bug #7769: group_concat returning null is checked in having
#
CREATE
TABLE
t1
(
id
int
);
SELECT
GROUP_CONCAT
(
id
)
AS
gc
FROM
t1
HAVING
gc
IS
NULL
;
DROP
TABLE
t1
;
ndb/src/common/util/version.c
View file @
09f36a69
...
@@ -90,6 +90,7 @@ void ndbSetOwnVersion() {}
...
@@ -90,6 +90,7 @@ void ndbSetOwnVersion() {}
#ifndef TEST_VERSION
#ifndef TEST_VERSION
struct
NdbUpGradeCompatible
ndbCompatibleTable_full
[]
=
{
struct
NdbUpGradeCompatible
ndbCompatibleTable_full
[]
=
{
{
MAKE_VERSION
(
4
,
1
,
10
),
MAKE_VERSION
(
4
,
1
,
9
),
UG_Exact
},
{
MAKE_VERSION
(
4
,
1
,
9
),
MAKE_VERSION
(
4
,
1
,
8
),
UG_Exact
},
{
MAKE_VERSION
(
4
,
1
,
9
),
MAKE_VERSION
(
4
,
1
,
8
),
UG_Exact
},
{
MAKE_VERSION
(
3
,
5
,
2
),
MAKE_VERSION
(
3
,
5
,
1
),
UG_Exact
},
{
MAKE_VERSION
(
3
,
5
,
2
),
MAKE_VERSION
(
3
,
5
,
1
),
UG_Exact
},
{
0
,
0
,
UG_Null
}
{
0
,
0
,
UG_Null
}
...
...
scripts/mysql_install_db.sh
View file @
09f36a69
...
@@ -98,9 +98,9 @@ else
...
@@ -98,9 +98,9 @@ else
if
test
-x
"
$basedir
/libexec/mysqld"
if
test
-x
"
$basedir
/libexec/mysqld"
then
then
execdir
=
"
$basedir
/libexec"
execdir
=
"
$basedir
/libexec"
elif
test
-x
"
@libexecdir@
/mysqld"
elif
test
-x
"
$basedir
/sbin
/mysqld"
then
then
execdir
=
"
@libexecdir@
"
execdir
=
"
$basedir
/sbin
"
else
else
execdir
=
"
$basedir
/bin"
execdir
=
"
$basedir
/bin"
fi
fi
...
...
sql/ha_heap.cc
View file @
09f36a69
...
@@ -460,12 +460,24 @@ int ha_heap::create(const char *name, TABLE *table_arg,
...
@@ -460,12 +460,24 @@ int ha_heap::create(const char *name, TABLE *table_arg,
KEY_PART_INFO
*
key_part
=
pos
->
key_part
;
KEY_PART_INFO
*
key_part
=
pos
->
key_part
;
KEY_PART_INFO
*
key_part_end
=
key_part
+
pos
->
key_parts
;
KEY_PART_INFO
*
key_part_end
=
key_part
+
pos
->
key_parts
;
mem_per_row
+=
(
pos
->
key_length
+
(
sizeof
(
char
*
)
*
2
));
keydef
[
key
].
keysegs
=
(
uint
)
pos
->
key_parts
;
keydef
[
key
].
keysegs
=
(
uint
)
pos
->
key_parts
;
keydef
[
key
].
flag
=
(
pos
->
flags
&
(
HA_NOSAME
|
HA_NULL_ARE_EQUAL
));
keydef
[
key
].
flag
=
(
pos
->
flags
&
(
HA_NOSAME
|
HA_NULL_ARE_EQUAL
));
keydef
[
key
].
seg
=
seg
;
keydef
[
key
].
seg
=
seg
;
keydef
[
key
].
algorithm
=
((
pos
->
algorithm
==
HA_KEY_ALG_UNDEF
)
?
switch
(
pos
->
algorithm
)
{
case
HA_KEY_ALG_UNDEF
:
case
HA_KEY_ALG_HASH
:
keydef
[
key
].
algorithm
=
HA_KEY_ALG_HASH
;
mem_per_row
+=
sizeof
(
char
*
)
*
2
;
// = sizeof(HASH_INFO)
break
;
case
HA_KEY_ALG_BTREE
:
keydef
[
key
].
algorithm
=
HA_KEY_ALG_BTREE
;
mem_per_row
+=
sizeof
(
TREE_ELEMENT
)
+
pos
->
key_length
+
sizeof
(
char
*
);
break
;
default:
DBUG_ASSERT
(
0
);
// cannot happen
}
keydef
[
key
].
algorithm
=
((
pos
->
algorithm
==
HA_KEY_ALG_UNDEF
)
?
HA_KEY_ALG_HASH
:
pos
->
algorithm
);
HA_KEY_ALG_HASH
:
pos
->
algorithm
);
for
(;
key_part
!=
key_part_end
;
key_part
++
,
seg
++
)
for
(;
key_part
!=
key_part_end
;
key_part
++
,
seg
++
)
...
@@ -501,17 +513,17 @@ int ha_heap::create(const char *name, TABLE *table_arg,
...
@@ -501,17 +513,17 @@ int ha_heap::create(const char *name, TABLE *table_arg,
}
}
}
}
mem_per_row
+=
MY_ALIGN
(
table_arg
->
reclength
+
1
,
sizeof
(
char
*
));
mem_per_row
+=
MY_ALIGN
(
table_arg
->
reclength
+
1
,
sizeof
(
char
*
));
max_rows
=
(
ha_rows
)
(
current_thd
->
variables
.
max_heap_table_size
/
mem_per_row
);
HP_CREATE_INFO
hp_create_info
;
HP_CREATE_INFO
hp_create_info
;
hp_create_info
.
auto_key
=
auto_key
;
hp_create_info
.
auto_key
=
auto_key
;
hp_create_info
.
auto_key_type
=
auto_key_type
;
hp_create_info
.
auto_key_type
=
auto_key_type
;
hp_create_info
.
auto_increment
=
(
create_info
->
auto_increment_value
?
hp_create_info
.
auto_increment
=
(
create_info
->
auto_increment_value
?
create_info
->
auto_increment_value
-
1
:
0
);
create_info
->
auto_increment_value
-
1
:
0
);
hp_create_info
.
max_table_size
=
current_thd
->
variables
.
max_heap_table_size
;
max_rows
=
(
ha_rows
)
(
hp_create_info
.
max_table_size
/
mem_per_row
);
error
=
heap_create
(
fn_format
(
buff
,
name
,
""
,
""
,
4
+
2
),
error
=
heap_create
(
fn_format
(
buff
,
name
,
""
,
""
,
4
+
2
),
table_arg
->
keys
,
keydef
,
table_arg
->
reclength
,
table_arg
->
keys
,
keydef
,
table_arg
->
reclength
,
(
ulong
)
((
table_arg
->
max_rows
<
max_rows
&&
(
ulong
)
((
table_arg
->
max_rows
<
max_rows
&&
table_arg
->
max_rows
)
?
table_arg
->
max_rows
)
?
table_arg
->
max_rows
:
max_rows
),
table_arg
->
max_rows
:
max_rows
),
(
ulong
)
table_arg
->
min_rows
,
&
hp_create_info
);
(
ulong
)
table_arg
->
min_rows
,
&
hp_create_info
);
my_free
((
gptr
)
keydef
,
MYF
(
0
));
my_free
((
gptr
)
keydef
,
MYF
(
0
));
...
...
sql/item_sum.h
View file @
09f36a69
...
@@ -739,9 +739,10 @@ class Item_func_group_concat : public Item_sum
...
@@ -739,9 +739,10 @@ class Item_func_group_concat : public Item_sum
String
*
res
;
String
*
res
;
char
*
end_ptr
;
char
*
end_ptr
;
int
error
;
int
error
;
res
=
val_str
(
&
str_value
);
if
(
!
(
res
=
val_str
(
&
str_value
)))
return
(
longlong
)
0
;
end_ptr
=
(
char
*
)
res
->
ptr
()
+
res
->
length
();
end_ptr
=
(
char
*
)
res
->
ptr
()
+
res
->
length
();
return
res
?
my_strtoll10
(
res
->
ptr
(),
&
end_ptr
,
&
error
)
:
(
longlong
)
0
;
return
my_strtoll10
(
res
->
ptr
(),
&
end_ptr
,
&
error
)
;
}
}
String
*
val_str
(
String
*
str
);
String
*
val_str
(
String
*
str
);
Item
*
copy_or_same
(
THD
*
thd
);
Item
*
copy_or_same
(
THD
*
thd
);
...
...
support-files/mysql.spec.sh
View file @
09f36a69
...
@@ -27,7 +27,7 @@ Packager: Lenz Grimmer <build@mysql.com>
...
@@ -27,7 +27,7 @@ Packager: Lenz Grimmer <build@mysql.com>
Vendor: MySQL AB
Vendor: MySQL AB
Requires: fileutils sh-utils
Requires: fileutils sh-utils
Provides: msqlormysql MySQL-server mysql
Provides: msqlormysql MySQL-server mysql
Build
Prereq
: ncurses-devel
Build
Requires
: ncurses-devel
Obsoletes: mysql
Obsoletes: mysql
# Think about what you use here since the first step is to
# Think about what you use here since the first step is to
...
@@ -607,6 +607,10 @@ fi
...
@@ -607,6 +607,10 @@ fi
# itself - note that they must be ordered by date (important when
# itself - note that they must be ordered by date (important when
# merging BK trees)
# merging BK trees)
%changelog
%changelog
*
Fri Jan 14 2005 Lenz Grimmer <lenz@mysql.com>
- replaced obsoleted
"BuildPrereq"
with
"BuildRequires"
instead
*
Thu Dec 31 2004 Lenz Grimmer <lenz@mysql.com>
*
Thu Dec 31 2004 Lenz Grimmer <lenz@mysql.com>
- enabled the
"Archive"
storage engine
for
the max binary
- enabled the
"Archive"
storage engine
for
the max binary
...
...
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