Commit graph

167663 commits

Author SHA1 Message Date
Shishir Jaiswal
68b88afb0c Bug#24449090 - BUFFER OVERFLOW IN FUNCTION DUPL
Post-push fix for memory leak in the code inside
DBUG_EXECUTE_IF("bug24449090_simulate_oom",...);
2016-12-04 18:44:51 +05:30
Sergei Golubchik
4a3acbcfd0 MDEV-11241 Certain combining marks cause MariaDB to crash when doing Full-Text searches
Don't assume that a word of n bytes can match a word of
at most n * charset->mbmaxlen bytes, always go for the worst.
2016-12-03 22:03:38 +01:00
Sergei Golubchik
0a4b508173 MDEV-11242 MariaDB Server releases contains promotion of MariaDB Corporation 2016-12-03 22:02:00 +01:00
Sergei Golubchik
f640527e65 typo fixed: s/MSYQL/MYSQL/ 2016-12-03 22:02:00 +01:00
Shishir Jaiswal
52b0c8146b Bug#24449076 - INTEGER OVERFLOW IN FUNCTION DOINSERT
DESCRIPTION
===========
Performing a pattern match of a Regex resulting into a very
large string, leads to crash due to integer wraparound.

ANALYSIS
========
doinsert() - The length calculated here (to copy the
number of bytes) comes out to be too large to be stored in
the "int" variable 'length'. We need to ensure that the
variable can accommodate large lengths.

FIX
===
'length' in doinsert() is now defined as of type "size_t"
instead of "int"
2016-11-29 11:26:25 +05:30
Shishir Jaiswal
8f29705851 Bug#24449090 - BUFFER OVERFLOW IN FUNCTION DUPL
DESCRIPTION
===========
Performing a pattern match of a Regex resulting into a very
large string, leads to crash due to failed realloc().

ANALYSIS
========
dupl() calls enlarge(). It in turn calls realloc() for
pointer p->strip. This eventually fails due to OOM.
However we are still using the same pointer in memcpy()
causing a SEGFAULT!

FIX
===
1) In dupl(), checking for error code (which would be set
if realloc fails) immediately after call to enlarge().
Returning now with this error code.

2) Handling the same in the caller functions.
2016-11-29 11:19:30 +05:30
Alexander Barkov
9976223c00 MDEV-11171 Assertion `m_cpp_buf <= ptr && ptr <= m_cpp_buf + m_buf_length' failed in Lex_input_stream::body_utf8_append(const char*, const char*) 2016-11-28 17:28:37 +04:00
Balasubramanian Kandasamy
c8f0eeb9c8 Bug#25159791 BASEDIR: COMMAND NOT FOUND ERROR WHILE STARTING SERVER WITH INIT SCRIPTS
(cherry picked from commit 7a39efab8a59ebdcd562fb788bc004ff338796ea)
2016-11-28 17:26:28 +05:30
Balasubramanian Kandasamy
ab5932f851 Bug#25159791 BASEDIR: COMMAND NOT FOUND ERROR WHILE STARTING SERVER WITH INIT SCRIPTS 2016-11-28 16:38:03 +05:30
mysql-builder@oracle.com
251e82c2b5 2016-11-28 09:20:06 +01:00
Arun Kuruvila
3a37745ca0 2016-11-28 11:55:36 +05:30
Balasubramanian Kandasamy
64cc76bbf8 Followup fix for Bug#25088048 - ADDITIONAL ISSUES IN MYSQLD_SAFE
- Removed mysql.conf, mysqld.service and mysql-systemd-start from sles spec file

(cherry picked from commit 35c1adc17c1a99b2c256d374500437a6ce21339e)
2016-11-26 22:26:40 +05:30
Balasubramanian Kandasamy
07fb5cffb0 Followup fix for Bug#25088048 - ADDITIONAL ISSUES IN MYSQLD_SAFE
- Removed mysql.conf, mysqld.service and mysql-systemd-start from sles spec file
2016-11-26 20:41:48 +05:30
mysql-builder@oracle.com
202355104f 2016-11-25 14:55:15 +05:30
Dyre Tjeldvoll
42732cc195 Bug#25092566: CREATE TABLE WITH DATA DIRECTORY CLAUSE DOES NOT REQUIRE SPECIAL
PRIVILEGES

Require FILE privilege when creating tables using external data directory or
index directory.
2016-11-25 14:55:01 +05:30
Terje Rosten
53230ba274 Bug#25088048 ADDITIONAL ISSUES IN MYSQLD_SAFE
Don't read --ledir option from config file.
Ignore current working for finding location of mysqld
Remove use of chown/chmod in scripts.
Be helpful only when basedir is /var/log or /var/lib.
Removed unused systemd files for SLES.
Set explicit basedir in scripts.
2016-11-25 14:54:08 +05:30
mysql-builder@oracle.com
04cdb9905a 2016-11-24 21:53:55 +01:00
Dyre Tjeldvoll
e541c41481 Bug#25092566: CREATE TABLE WITH DATA DIRECTORY CLAUSE DOES NOT REQUIRE SPECIAL
PRIVILEGES

Require FILE privilege when creating tables using external data directory or
index directory.
2016-11-24 09:57:54 +01:00
Terje Rosten
cdd57aa719 Bug#25088048 ADDITIONAL ISSUES IN MYSQLD_SAFE
Don't read --ledir option from config file.
Ignore current working for finding location of mysqld
Remove use of chown/chmod in scripts.
Be helpful only when basedir is /var/log or /var/lib.
Removed unused systemd files for SLES.
Set explicit basedir in scripts.
2016-11-16 14:01:12 +01:00
Vladislav Vaintroub
adc38ed811 Restore MY_WME flag for my_pread in read_ddl_log_entry, fix errors in buildbot 2016-11-14 08:02:35 +01:00
Igor Babaev
96b62b5514 Fixed bug mdev-11161.
The flag TABLE_LIST::fill_me must be reset to false at the prepare
phase for any materialized derived table used in the executed query.
Otherwise if the optimizer decides to generate a key for such a table
it is generated only for the first execution of the query.
2016-11-11 20:55:25 -08:00
Vladislav Vaintroub
10aee66896 MDEV-11248 Fix passing offset parameter to my_file_pread in read_ddl_log_file_entry 2016-11-10 23:47:42 +00:00
Karthik Kamath
a63185e863 BUG#24437124: POSSIBLE BUFFER OVERFLOW ON CREATE TABLE
ANALYSIS:
=========
'CREATE TABLE' query with a large value for 'CONNECTION'
string reports an incorrect error.

The length of connection string is stored in .frm in two
bytes (max value= 65535). When the string length exceeds
the max value, the length is truncated to fit the two
bytes limit. Further processing leads to reading only a
part of the string as the length stored is incorrect. The
remaining part of the string is treated as engine type and
hence results in an error.

FIX:
====
We are now restricting the connection string length to 1024.
An appropriate error is reported if the length crosses this
limit.

NOTE:
=====
The 'PASSWORD' table option is documented as unused and
processed within a dead code. Hence it will not cause
similar issue with large strings.
2016-11-10 15:11:57 +05:30
Shipra Jain
2f2103d540 Bug#22874167 : fix for MAIN.LOG_TABLES-BIG UNSTABLE ON LOADED HOSTS 2016-11-09 19:27:35 +01:00
Shipra Jain
b8ec8196c3 Bug#24918325: backport bug11756699 in this patch 2016-11-05 16:52:05 +01:00
Vladislav Vaintroub
e0f48e5ce9 MDEV-11214 Windows : MSI installation fails, if run by a service user (e.g LocalSystem)
Skip  permission for data directory for LogonUser, if installation
runs by one of the service accounts (determined from their well-known SID).
There is no real LogonUser in this case.
2016-11-03 16:21:48 +00:00
Bjorn Munch
aa8b8e3ab1 Raise version number after cloning 5.5.54 2016-10-31 15:01:19 +01:00
Thayumanavar S
c3cf7f47f0 BUG#24487120 - SLAVE'S SLAVE_SQL_RUNNING IS STOPPED DURING
LOAD DATA AT MASTER.

Revert "BUG#23080148 - BACKPORT BUG 14653594 AND BUG 20683959 TO"

This reverts commit 1d31f5b3090d129382b50b95512f2f79305715a1.
The commit causes replication incompatibility between minor revisions
and based on discussion with Srinivasarao, the patch is reverted.
2016-10-28 14:45:03 +02:00
Vladislav Vaintroub
2a2e79b702 MDEV-11157 Windows - Upgrade installer to use HeidiSQL 9.4 2016-10-27 19:45:44 +00:00
Vladislav Vaintroub
d8cb6822bc VS2015 build fixes
- new location of signtool
- silence a nonsensical warning from stl  header
(complain about noexcept() function attribute, if /EHsc is not set)
2016-10-27 19:45:44 +00:00
Vladislav Vaintroub
aec43216c8 MDEV-9409 Windows - workaround VS2015 CRT bug that makes
mysqldump/mysql_install_db.exe fail

The bug is described in
https://connect.microsoft.com/VisualStudio/Feedback/Details/1902345

When reading from a pipe in text mode, using CRT function such as fread(),
some newlines may be lost. Workaround is to use binary mode on reading side
and if necessary, replace \r\n with \n.
2016-10-27 19:45:44 +00:00
Terje Rosten
63b2c97650 Bug#24925181 INCORRECT ISA DETECTION CODE IN OEL RPM SPEC
Wrapper for mysql_config used in multilib installs modified to work as
intended, added more archs (aarch64, ppc64le, s390x, s390, sparc and
sparc64) to lists in fallback mode and use same script for EL and
Fedora.

Thanks to Alexey Kopytov for report and fix.
2016-10-24 13:11:34 +02:00
Daniel Bartholomew
6e257274d9 bump the VERSION 2016-10-17 11:43:47 -04:00
Elena Stepanova
df87be5eda MDEV-11069 main.information_schema test fails if hostname includes 'user'
Patch provided by Honza Horak
2016-10-17 14:04:45 +03:00
Sergei Golubchik
eac8d95ffc compilation warning after xtradb merge 2016-10-14 12:51:53 +02:00
Sergei Golubchik
5a43a31ee8 mysqldump: comments and identifiers with new lines
don't let identifiers with new lines to break a comment
2016-10-14 01:12:04 +02:00
Sergei Golubchik
01b39b7b07 mysqltest: don't eat new lines in --exec
pass them through as is
2016-10-14 01:12:04 +02:00
Sergei Golubchik
383007c75d mysql cli: fix USE command quoting
* use proper sql quoting rules for USE, while preserving
  as much of historical behavior as possible
* short commands (\u) behave as before
2016-10-13 21:38:32 +02:00
Sergei Golubchik
e4957de4fd Merge branch 'merge-xtradb-5.5' into 5.5 2016-10-13 12:40:24 +02:00
Sergei Golubchik
6010a27c87 5.5.52-38.3 2016-10-13 12:23:16 +02:00
Karthik Kamath
1492127728 BUG#23499695: MYSQL SERVER NORMAL SHUTDOWN WITH TIME STAMP
700101

ANALYSIS:
=========
To set the time 'start_time' of query in THD, current time
is obtained by calling 'gettimeofday()'. On Solaris
platform, due to some system level issues, time obtained is
invalid i.e. its either greater than 2038 (max signed value
to hold microseconds since 1970) or 1970 (0 microseconds
since 1970). In these cases, validation checks infer that
the 'start_time' is invalid and mysql server initiates the
shutdown process. But the reason for shutdown is not logged.

FIX:
====
We are now logging appropriate message when shutdown is
triggered in the above mentioned scenarios. Now, even if
the initial validation checks infer that the 'start_time'
is invalid, server shutdown is not initiated immediately.
Before initiating the server shutdown, the process of
setting 'start_time' and validating it is reiterated (for
max 5 times). If correct time is obtained in these 5
iterations then server continues to run.
2016-10-13 14:48:45 +05:30
Sergei Golubchik
02be50a58f Merge branch 'mysql/5.5' into 5.5 2016-10-13 11:18:30 +02:00
Nawaz Nazeer Ahamed
bf8eab91ec Merge branch 'mysql-5.5.53-release' into mysql-5.5 2016-10-12 21:10:29 +05:30
Terje Rosten
1f93f4381b Bug#24483092 UNSAFE USE OF VARIOUS SHELL UTILITIES
- Remove use of touch and chmod.
 - Restrict usage of chown to cases where target directory is /var/log.
 - Due to limited feature set in /bin/sh on Solaris, /bin/bash will be
   used on this platform.
 - Give error if directory for UNIX socket file is missing.
 - Privileged user should not log to files owned by different user
   (mysqld will log as before).
2016-10-06 13:26:16 +02:00
Vasil Dimov
65febcce97 Fix Bug#24707869 GCC 5 AND 6 MISCOMPILE MACH_PARSE_COMPRESSED
Prevent GCC from moving a mach_read_from_4() before we have checked that
we have 4 bytes to read. The pointer may only point to a 1, 2 or 3
bytes in which case the code should not read 4 bytes. This is a
workaround to a GCC bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77673

Patch submitted by: Laurynas Biveinis <laurynas.biveinis@gmail.com>
RB: 14135
Reviewed by: Pawel Olchawa <pawel.olchawa@oracle.com>
2016-10-03 14:43:08 +03:00
Sergei Golubchik
7497ebf8a4 mysqld_safe: close stdout and stderr
when they're not needed anymore. Helps when
daemonizing it from mysql.init
2016-09-29 10:16:24 +02:00
mysql-builder@oracle.com
da97aa6885 2016-09-29 11:02:05 +05:30
Robert Golebiowski
5c6169fb30 Bug : YASSL UPDATE TO 2.4.2 2016-09-28 20:06:46 +05:30
Arun Kuruvila
7cb79a65ba Bug#24707666: DEFAULT SETTING FOR SECURE-FILE-PRIV SHOULD BE
RESTRICTED IN ALL GA RELEASES

Back port of WL#6782 to 5.5 and 5.6. This also includes
back port of Bug#20771331, Bug#20741572 and Bug#20770671.
Bug#24695274 and Bug#24679907 are also handled along with
this.
2016-09-28 20:06:19 +05:30
Vladislav Vaintroub
0e76054b7b Feedback plugin : add support for Windows 10 / Server 2016.
Also add fallback version string for unknown future versions.
2016-09-28 12:52:01 +00:00