mirror of
https://github.com/MariaDB/server.git
synced 2025-01-27 09:14:17 +01:00
aea076dc21
replace the assert with an if(). asserts should not be used on the input (even without DESC indexes the table could've been corrupted)
76 lines
2.6 KiB
Text
76 lines
2.6 KiB
Text
#
|
|
# Test of SYSTEM time zone handling ( for my_system_gmt_sec()).
|
|
# This script must be run with TZ=MET
|
|
|
|
-- require include/have_met_timezone.require
|
|
disable_query_log;
|
|
select FROM_UNIXTIME(24*3600);
|
|
enable_query_log;
|
|
|
|
# The following is because of daylight saving time
|
|
--replace_result MEST MET
|
|
show variables like "system_time_zone";
|
|
|
|
--echo #
|
|
--echo # Test unix timestamp
|
|
--echo #
|
|
select @a:=FROM_UNIXTIME(1);
|
|
select unix_timestamp(@a);
|
|
|
|
--echo #
|
|
--echo # Test of some values, including some with daylight saving time
|
|
--echo #
|
|
|
|
CREATE TABLE t1 (ts int);
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 01:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 03:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 01:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 02:59:59'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 03:00:00'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 03:59:59'));
|
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 04:00:01'));
|
|
|
|
SELECT ts,from_unixtime(ts) FROM t1;
|
|
DROP TABLE t1;
|
|
|
|
|
|
--echo #
|
|
--echo # Test of warning for spring time-gap values for system time zone
|
|
--echo #
|
|
CREATE TABLE t1 (ts timestamp);
|
|
INSERT INTO t1 (ts) VALUES ('2003-03-30 01:59:59'),
|
|
('2003-03-30 02:59:59'),
|
|
('2003-03-30 03:00:00');
|
|
DROP TABLE t1;
|
|
|
|
--echo #
|
|
--echo # Test for fix for Bug#2523 Check that boundary dates are processed correctly.
|
|
--echo #
|
|
select unix_timestamp('1970-01-01 01:00:00'),
|
|
unix_timestamp('1970-01-01 01:00:01'),
|
|
unix_timestamp('2038-01-19 04:14:07'),
|
|
unix_timestamp('2038-01-19 04:14:08');
|
|
|
|
select unix_timestamp('1969-12-31 23:59:59'), unix_timestamp('1970-01-01 00:00:00'), unix_timestamp('1970-01-01 00:59:59');
|
|
|
|
--echo #
|
|
--echo # End of 4.1 tests
|
|
--echo #
|
|
|
|
--echo #
|
|
--echo # MDEV-27393 Timezone tables cannot have descending indexes
|
|
--echo #
|
|
call mtr.add_suppression('mysql.time_zone_transition_type table is incorrectly defined or corrupted');
|
|
alter table mysql.time_zone_transition_type drop primary key;
|
|
alter table mysql.time_zone_transition_type add primary key (time_zone_id,transition_type_id desc);
|
|
--error ER_UNKNOWN_TIME_ZONE
|
|
SET @@time_zone='Japan';
|
|
alter table mysql.time_zone_transition_type drop primary key;
|
|
alter table mysql.time_zone_transition_type add primary key (time_zone_id,transition_type_id);
|
|
|
|
--echo #
|
|
--echo # End of 10.8 tests
|
|
--echo #
|