MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry.
  • MariaDB\ 71.8%
  • C++ 16.4%
  • C 10.4%
  • Shell 0.5%
  • Perl 0.4%
  • Other 0.3%
Find a file
unknown 8a7bc05288 Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1"
(4.1 version, with post-review fixes)
  
  The fix for another Bug (6439) limited FROM_UNIXTIME() to
  TIMESTAMP_MAX_VALUE which is 2145916799 or 2037-12-01 23:59:59 GMT,
  however unix timestamp in general is not considered to be limited 
  by this value. All dates up to power(2,31)-1 are valid.
  
  This patch extends allowed TIMESTAMP range so, that max
  TIMESTAMP value is power(2,31)-1. It also corrects
  FROM_UNIXTIME() and UNIX_TIMESTAMP() functions, so that
  max allowed UNIX_TIMESTAMP() is power(2,31)-1. FROM_UNIXTIME()
  is fixed accordingly to allow conversion of dates up to
  2038-01-19 03:14:07 UTC. The patch also fixes CONVERT_TZ()
  function to allow extended range of dates.
  
  The main problem solved in the patch is possible overflows
  of variables, used in broken-time representation to time_t
  conversion (required for UNIX_TIMESTAMP).


acinclude.m4:
  Add new macro to check time_t range
configure.in:
  Call the macro to check time_t range
include/my_time.h:
  Move time-related defines to proper place.
  Add a function to perform a rough check if
  a TIMESTAMP value fits into the boundaries.
  Note: it is defined as "static inline", as
  otherwise libmysql won't compile (due to the
  way how gcc handles "inline" directive).
mysql-test/r/func_time.result:
  Update test result
mysql-test/r/timezone.result:
  Update test result
mysql-test/r/timezone2.result:
  Update test result
mysql-test/t/func_time.test:
  Add test for Bug#9191 and update test to be consistent
  with new TIMESTAMP boundaries
mysql-test/t/timezone.test:
  Update old tests to be consistent
  with new TIMESTAMP boundaries
mysql-test/t/timezone2.test:
  Update tests for convert_tz to be consistent with new
  TIMESTAMP boundaries
sql/item_timefunc.cc:
  Fix convert_tz to allow dates from the new (extended)
  TIMESTAMP range
sql/mysql_priv.h:
  Move time handling defaults to my_time.h
sql-common/my_time.c:
  Because of increased TIMESTAMP_MAX_VALUE overflows in my_system_gmt_sec()
  became possible. Here we make it safe against the overflows by stepping
  back from the boundary dates which are likely to trigger them.
sql/time.cc:
  Update TIME_to_timestamp to allow conversion of
  extended date range
sql/tztime.cc:
  Fix new (4.1) implementation of broken-down time representation
  to time_t conversion routine to avoid overflows during conversion
  of boundary dates
mysql-test/r/timezone4.result:
  New BitKeeper file ``mysql-test/r/timezone4.result''
mysql-test/t/timezone4-master.opt:
  New BitKeeper file ``mysql-test/t/timezone4-master.opt''
mysql-test/t/timezone4.test:
  New BitKeeper file ``mysql-test/t/timezone4.test''
2006-11-01 16:47:40 +03:00
bdb Fix calls to memset() with arguments out of order. (Bug #9323) 2005-03-22 16:00:02 -08:00
BitKeeper pekka - checkout:get (4.1) 2006-07-04 13:51:35 +02:00
BUILD Merge perch.ndb.mysql.com:/home/jonas/src/mysql-4.1 2006-09-05 15:05:52 +02:00
client Merge bk-internal:/home/bk/mysql-4.1-maint 2006-08-31 21:23:25 -07:00
cmd-line-utils Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
dbug Makefile.am: 2005-07-05 23:24:48 +02:00
Docs .del-changelog-4.1.xml~8aa496ebed09d868: 2006-05-04 16:16:18 -05:00
extra Merge mysql.com:/M40/push-4.0 into mysql.com:/M41/merge-4.1 2006-01-13 17:45:01 +01:00
heap Bug#9719: DELETE with WHERE on HEAP table just deletes first row of matched 2006-08-02 13:06:59 -04:00
include Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
innobase Applied innodb-4.1-ss32 snapshot. 2006-07-26 07:47:29 +04:00
isam Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.0 2005-12-04 15:34:47 +02:00
libmysql Merge bk@192.168.21.1:mysql-4.1 2006-07-13 22:32:18 +05:00
libmysql_r Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
libmysqld Merge bk@192.168.21.1:mysql-4.1 2006-07-20 16:03:21 +05:00
man Makefile.am, configure.in: 2006-07-28 23:12:40 +02:00
merge Makefile.am: 2005-07-05 23:24:48 +02:00
myisam Merge bk-internal:/home/bk/mysql-4.0 2006-09-19 10:17:25 +02:00
myisammrg Added more tests for new UPDATE ... ORDER BY ... LIMIT optimization 2005-10-25 02:27:40 +03:00
mysql-test Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
mysys Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug04053/my41-bug04053 2006-08-31 12:45:49 -04:00
ndb Merge perch.ndb.mysql.com:/home/jonas/src/41-work 2006-09-04 14:45:13 +02:00
netware Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0 2006-07-24 10:59:51 +02:00
os2 Many files: 2005-09-29 02:08:24 +02:00
pstack Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
regex Many files: 2005-09-29 02:08:24 +02:00
scripts mysql_config.sh: 2006-09-25 00:54:46 +02:00
sql Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
sql-bench Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
sql-common Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
SSL Added missing SSL library (Should be in source distribution) 2003-11-28 12:18:13 +02:00
strings Bug#19741 segfault with cp1250 charset + like + primary key + 64bit os 2006-07-25 17:27:53 +05:00
support-files Merge mysql.com:/Users/kent/mysql/bk/bug17194/my41-bug17194 2006-08-24 14:48:22 +02:00
tests Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my41-no-strange-literals 2006-08-31 11:30:14 -04:00
tools Makefile.am: 2005-07-05 23:24:48 +02:00
VC++Files Changes to make "sql/sql_locale.cc" compile + link on Windows: 2006-07-17 20:40:41 +02:00
vio BUG#9678: Client library hangs after network communication failure 2006-08-14 20:01:19 +04:00
zlib Makefile.am: 2005-12-15 02:11:21 -03:00
.bzrignore Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl 2006-09-23 05:58:48 +02:00
.cvsignore Import changeset 2000-07-31 21:29:14 +02:00
acinclude.m4 Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
config.guess updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
config.sub updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
configure.in Fix Bug #9191 "TIMESTAMP/from_unixtime() no longer accepts 2^31-1" 2006-11-01 16:47:40 +03:00
COPYING - manual.texi will be replaced with a manual written in DocBook/XML. This ChangeSet removes all 2005-04-13 11:51:38 +02:00
depcomp - Applied required modifications for automake 1.5 2002-10-01 21:57:10 +02:00
install-sh install-sh: copy not move like any reasonably modern install does 2004-07-30 18:53:54 +02:00
ltconfig libtool tweaks 2004-02-17 21:46:40 +01:00
ltmain.sh updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
Makefile.am Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1 2005-11-04 01:15:35 +01:00
missing - Applied required modifications for automake 1.5 2002-10-01 21:57:10 +02:00
mkinstalldirs Import changeset 2000-07-31 21:29:14 +02:00
README README: 2006-04-01 04:13:33 +02:00

This is a release of MySQL, a dual-license SQL database server.
MySQL is brought to you by the MySQL team at MySQL AB.

License information can be found in these files:
- For GPL (free) distributions, see the COPYING file.
- For commercial distributions, see the MySQLEULA.txt file.


For further information about MySQL or additional documentation, see:
- The latest information about MySQL: http://www.mysql.com
- The current MySQL documentation: http://dev.mysql.com/doc

Some manual sections of special interest:

- If you are migrating from an older version of MySQL, please read the
  "Upgrading from..." section first!
- To see what MySQL can do, take a look at the features section.
- For installation instructions, see the Installation chapter.
- For future plans, see the TODO appendix.
- For the new features/bugfix history, see the News appendix.
- For the currently known bugs/misfeatures (known errors) see the problems
  appendix.
- For a list of developers and other contributors, see the Credits
  appendix.

A local copy of the MySQL Reference Manual can be found in the Docs
directory in GNU Info format.  You can also browse the manual online or
download it in any of several formats at the URL given earlier in this
file.

************************************************************

IMPORTANT:

Bug or error reports should be sent to http://bugs.mysql.com.