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
cf7c0e43
Commit
cf7c0e43
authored
Apr 01, 2005
by
mskold@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix for bug#9435: TIMESTAMP columns don't update
parent
1b0370c6
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
79 additions
and
7 deletions
+79
-7
mysql-test/r/ndb_types.result
mysql-test/r/ndb_types.result
+39
-3
mysql-test/t/ndb_types.test
mysql-test/t/ndb_types.test
+36
-4
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+4
-0
No files found.
mysql-test/r/ndb_types.result
View file @
cf7c0e43
...
...
@@ -2,6 +2,9 @@ DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (
auto int(5) unsigned NOT NULL auto_increment,
string char(10) default "hello",
vstring varchar(10) default "hello",
bin binary(7),
vbin varbinary(7),
tiny tinyint(4) DEFAULT '0' NOT NULL ,
short smallint(6) DEFAULT '1' NOT NULL ,
medium mediumint(8) DEFAULT '0' NOT NULL,
...
...
@@ -14,12 +17,13 @@ ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL,
umedium mediumint(8) unsigned DEFAULT '0' NOT NULL,
ulong int(11) unsigned DEFAULT '0' NOT NULL,
ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL,
time_stamp timestamp,
options enum('one','two','tree') not null,
flags set('one','two','tree') not null,
date_field date,
year_field year,
time_field time,
date_time datetime,
options enum('one','two','tree') not null,
flags set('one','two','tree') not null,
time_stamp timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (auto),
KEY (utiny),
KEY (tiny),
...
...
@@ -33,4 +37,36 @@ KEY (ulong),
KEY (ulonglong,ulong),
KEY (options,flags)
);
set @now = now();
insert into t1
(string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
real_float,real_double, utiny, ushort, umedium,ulong,ulonglong,
options,flags,date_field,year_field,time_field,date_time)
values
("aaaa","aaaa",0xAAAA,0xAAAA,-1,-1,-1,-1,-1,1.1,1.1,1,1,1,1,1,
'one','one', '1901-01-01','1901','01:01:01','1901-01-01 01:01:01');
select auto,string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
real_float,real_double, utiny, ushort, umedium,ulong,ulonglong,
options,flags,date_field,year_field,time_field,date_time
from t1;
auto string vstring bin vbin tiny short medium long_int longlong real_float real_double utiny ushort umedium ulong ulonglong options flags date_field year_field time_field date_time
1 aaaa aaaa -1 -1 -1 -1 -1 1.1 1.1000 1 00001 1 1 1 one one 1901-01-01 1901 01:01:01 1901-01-01 01:01:01
select time_stamp>@now from t1;
time_stamp>@now
1
set @now = now();
update t1 set string="bbbb",vstring="bbbb",bin=0xBBBB,vbin=0xBBBB,
tiny=-2,short=-2,medium=-2,long_int=-2,longlong=-2,real_float=2.2,
real_double=2.2,utiny=2,ushort=2,umedium=2,ulong=2,ulonglong=2,
options='one',flags='one', date_field='1902-02-02',year_field='1902',
time_field='02:02:02',date_time='1902-02-02 02:02:02' where auto=1;
select auto,string,vstring,bin,vbin,tiny,short,medium,long_int,longlong,
real_float,real_double, utiny, ushort, umedium,ulong,ulonglong,
options,flags,date_field,year_field,time_field,date_time
from t1;
auto string vstring bin vbin tiny short medium long_int longlong real_float real_double utiny ushort umedium ulong ulonglong options flags date_field year_field time_field date_time
1 bbbb bbbb -2 -2 -2 -2 -2 2.2 2.2000 2 00002 2 2 2 one one 1902-02-02 1902 02:02:02 1902-02-02 02:02:02
select time_stamp>@now from t1;
time_stamp>@now
1
drop table t1;
mysql-test/t/ndb_types.test
View file @
cf7c0e43
...
...
@@ -7,10 +7,12 @@ DROP TABLE IF EXISTS t1;
#
# Test creation of different column types in NDB
#
CREATE
TABLE
t1
(
auto
int
(
5
)
unsigned
NOT
NULL
auto_increment
,
string
char
(
10
)
default
"hello"
,
vstring
varchar
(
10
)
default
"hello"
,
bin
binary
(
7
),
vbin
varbinary
(
7
),
tiny
tinyint
(
4
)
DEFAULT
'0'
NOT
NULL
,
short
smallint
(
6
)
DEFAULT
'1'
NOT
NULL
,
medium
mediumint
(
8
)
DEFAULT
'0'
NOT
NULL
,
...
...
@@ -23,12 +25,13 @@ CREATE TABLE t1 (
umedium
mediumint
(
8
)
unsigned
DEFAULT
'0'
NOT
NULL
,
ulong
int
(
11
)
unsigned
DEFAULT
'0'
NOT
NULL
,
ulonglong
bigint
(
13
)
unsigned
DEFAULT
'0'
NOT
NULL
,
time_stamp
timestamp
,
options
enum
(
'one'
,
'two'
,
'tree'
)
not
null
,
flags
set
(
'one'
,
'two'
,
'tree'
)
not
null
,
date_field
date
,
year_field
year
,
time_field
time
,
date_time
datetime
,
options
enum
(
'one'
,
'two'
,
'tree'
)
not
null
,
flags
set
(
'one'
,
'two'
,
'tree'
)
not
null
,
time_stamp
timestamp
not
null
default
CURRENT_TIMESTAMP
on
update
CURRENT_TIMESTAMP
,
PRIMARY
KEY
(
auto
),
KEY
(
utiny
),
KEY
(
tiny
),
...
...
@@ -43,5 +46,34 @@ CREATE TABLE t1 (
KEY
(
options
,
flags
)
);
set
@
now
=
now
();
sleep
1
;
insert
into
t1
(
string
,
vstring
,
bin
,
vbin
,
tiny
,
short
,
medium
,
long_int
,
longlong
,
real_float
,
real_double
,
utiny
,
ushort
,
umedium
,
ulong
,
ulonglong
,
options
,
flags
,
date_field
,
year_field
,
time_field
,
date_time
)
values
(
"aaaa"
,
"aaaa"
,
0xAAAA
,
0xAAAA
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
1.1
,
1.1
,
1
,
1
,
1
,
1
,
1
,
'one'
,
'one'
,
'1901-01-01'
,
'1901'
,
'01:01:01'
,
'1901-01-01 01:01:01'
);
select
auto
,
string
,
vstring
,
bin
,
vbin
,
tiny
,
short
,
medium
,
long_int
,
longlong
,
real_float
,
real_double
,
utiny
,
ushort
,
umedium
,
ulong
,
ulonglong
,
options
,
flags
,
date_field
,
year_field
,
time_field
,
date_time
from
t1
;
select
time_stamp
>@
now
from
t1
;
set
@
now
=
now
();
sleep
1
;
update
t1
set
string
=
"bbbb"
,
vstring
=
"bbbb"
,
bin
=
0xBBBB
,
vbin
=
0xBBBB
,
tiny
=-
2
,
short
=-
2
,
medium
=-
2
,
long_int
=-
2
,
longlong
=-
2
,
real_float
=
2.2
,
real_double
=
2.2
,
utiny
=
2
,
ushort
=
2
,
umedium
=
2
,
ulong
=
2
,
ulonglong
=
2
,
options
=
'one'
,
flags
=
'one'
,
date_field
=
'1902-02-02'
,
year_field
=
'1902'
,
time_field
=
'02:02:02'
,
date_time
=
'1902-02-02 02:02:02'
where
auto
=
1
;
select
auto
,
string
,
vstring
,
bin
,
vbin
,
tiny
,
short
,
medium
,
long_int
,
longlong
,
real_float
,
real_double
,
utiny
,
ushort
,
umedium
,
ulong
,
ulonglong
,
options
,
flags
,
date_field
,
year_field
,
time_field
,
date_time
from
t1
;
select
time_stamp
>@
now
from
t1
;
drop
table
t1
;
sql/ha_ndbcluster.cc
View file @
cf7c0e43
...
...
@@ -1953,7 +1953,11 @@ int ha_ndbcluster::update_row(const byte *old_data, byte *new_data)
statistic_increment
(
ha_update_count
,
&
LOCK_status
);
if
(
table
->
timestamp_field_type
&
TIMESTAMP_AUTO_SET_ON_UPDATE
)
{
table
->
timestamp_field
->
set_time
();
// Set query_id so that field is really updated
table
->
timestamp_field
->
query_id
=
thd
->
query_id
;
}
/* Check for update of primary key for special handling */
if
((
table
->
primary_key
!=
MAX_KEY
)
&&
...
...
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