Commit graph

1062 commits

Author SHA1 Message Date
kevg
53d9e614ae Scripts: reprint warnings fix 2017-05-05 20:36:19 +03:00
Aleksey Midenkov
a1c36f2e15 SQL: default NULL for sys fields + misc fixes
* sys fields are NULL by default (with exceptions, see comment about NOT_NULL_FLAG in #77);
* error codes renamed, messages cleared out;
* SHOW CREATE TABLE fixed;
* set_max() fix;
* redundant flag setters/getters removed;
* flags are set in sql_yacc.yy, redundant copy_info_about_generated_fields() eliminated.
2017-05-05 20:36:18 +03:00
kevg
b98f09fcbf Scripts: Three modes of warning printing.
WARN_MODE=early
print warnings at compilation stage

WARN_MODE=late
print warnings at build finish stage

WARN_MODE=both
print both at early and at later stages
2017-05-05 20:36:18 +03:00
kevg
52a6812595 Scripts: flag to disable warnings reprinting 2017-05-05 20:36:18 +03:00
Aleksey Midenkov
be0f586972 Scripts: print warnings fixes 2017-05-05 20:36:17 +03:00
Alexander Barkov
dadb76521d Using the -t command line to bison instead of %name-prefix
Needed to compile on machines with older bison versions.
Adding a new parameter "name_prefix" to RUN_BISON() cmake macro.
2017-04-06 20:58:12 +04:00
Alexander Barkov
9f6aca198c Adding an alternative grammar file sql_yacc_ora.yy for sql_mode=ORACLE
- Adding a new grammar file sql_yacc_ora.yy, which is currently
  almost a full copy of sql_yacc.yy.

  Note, it's now assumed that sql_yacc.yy and sql_yacc_ora.yy
  use the same set of %token directives and exactly the same
  %union directive.
  These declarations should eventually be moved into a shared
  included file, to make sure that sql_yacc.h and sql_yacc_ora.h
  are compatible.

- Removing the "-p MYSQL" flag from cmake/bison.cmake, using
  the %name-prefix directive inside sql_yacc.yy and sql_yacc_ora.yy instead

- Adding other CMake related changes to build sql_yacc_ora.o
  form sql_yacc_ora.yy

- Adding NUMBER(M,N) as a synonym to DECIMAL(M,N) as the first
  Oracle compatibility syntax understood in sql_mode=ORACLE.

- Adding prototypes to functions add_virtual_expression()
  and handle_sql2003_note184_exception(), so they can be used
  in both sql_yacc.yy and sql_yacc_ora.yy.

- Adding a new test suite compat/oracle, with the first test "type_number".
  Use this:
   ./mtr compat/oracle.type_number   # to run a single test
   ./mtr --suite=compat/oracle       # to run the entire new suite

- Adding compat/oracle into the list of default suites,
  so BuildBot can run it automatically on pushes.
2017-04-05 15:01:59 +04:00
Vladislav Vaintroub
15878ee41c Windows, compiling : Remove _DEBUG preprocessor constant, to fix
debug build with older cmake.

The constant is implicitely defined by VS when chosen C runtime is Debug
(/MTd, MDd).

CMake does not define it since https://public.kitware.com/Bug/view.php?id=15777
was fixed.

We remove it from compile flags, to be able to build Debug with /MT runtime
using older cmakes.
2017-04-04 18:55:18 +00:00
Vladislav Vaintroub
0cca5bdf0b Allow to specify C runtime library used for compilation.
Default to static release (previously static debug was used in debug
builds, but not is appears to be too slow)
2017-04-02 17:29:04 +00:00
Sergei Petrunia
5210c69e71 Merge 10.2 into bb-10.2-mariarocks 2017-03-31 01:14:00 +03:00
Sergei Golubchik
da4d71d10d Merge branch '10.1' into 10.2 2017-03-30 12:48:42 +02:00
Sergei Golubchik
3a3b3d8ba8 cleanup: innodb files in cmake/
moved to storage/innobase/

also removed duplicate checks from storage/innobase/CMakeLists.txt
(they're all in storage/innobase/innodb.cmake)
2017-03-29 00:40:22 +02:00
Sergei Golubchik
9ab9a28b5d disable innodb snappy for release builds 2017-03-29 00:39:37 +02:00
Vladislav Vaintroub
b56262f696 MDEV-12328, attempt to fix windows packaging 2017-03-26 23:03:25 +00:00
Vladislav Vaintroub
ec307de388 Merge pull request #342 from rasmushoj/10.2
MDEV-12328, added building of AWS for release builds
2017-03-24 16:04:39 +01:00
Rasmus Johansson
3c3bbbb704 MDEV-12328, added building of AWS for release builds 2017-03-24 16:54:59 +02:00
Sergei Golubchik
09a2107b1b Merge branch '10.0' into 10.1 2017-03-21 19:20:44 +01:00
Sergei Golubchik
0d622bed4f Merge branch '5.5' into 10.0 2017-03-21 11:35:50 +01:00
Marko Mäkelä
4e1116b2c6 MDEV-12271 Port MySQL 8.0 Bug#23150562 REMOVE UNIV_MUST_NOT_INLINE AND UNIV_NONINL
Also, remove empty .ic files that were not removed by my MySQL commit.

Problem:
InnoDB used to support a compilation mode that allowed to choose
whether the function definitions in .ic files are to be inlined or not.
This stopped making sense when InnoDB moved to C++ in MySQL 5.6
(and ha_innodb.cc started to #include .ic files), and more so in
MySQL 5.7 when inline methods and functions were introduced
in .h files.

Solution:
Remove all references to UNIV_NONINL and UNIV_MUST_NOT_INLINE from
all files, assuming that the symbols are never defined.
Remove the files fut0fut.cc and ut0byte.cc which only mattered when
UNIV_NONINL was defined.
2017-03-17 12:42:07 +02:00
Sergei Golubchik
c99d71a29c MDEV-12231 MariaDB fails to restart after 10.0.30-1.el7 update
force SELinux policies to be built in mysql_release RPM packages
2017-03-12 10:30:57 +01:00
Sergei Petrunia
5b30c7896e Merge branch '10.2' of github.com:MariaDB/server into bb-10.2-mariarocks 2017-03-11 20:12:15 +00:00
Sergei Golubchik
269ab56f8b small plugin API related fixes
* define MYSQL_DYNAMIC_PLUGIN only for server plugins
* don't typedef my_bool in mysql.h if plugin.h has already done it
* fix the include guard in plugin.h
2017-03-10 18:21:28 +01:00
Vladislav Vaintroub
e88f6f4761 MDEV-12125 Use FIND_PACKAGE(OpenSSL) to find openssl 2017-03-08 22:30:03 +00:00
Vladislav Vaintroub
65ef8ec8aa MDEV-12207 Include windows compatibility manifest into executable to make GetVersionEx work correctly 2017-03-08 11:20:03 +00:00
Marko Mäkelä
ec4cf111c0 MDEV-11520 after-merge fix for 10.1: Use sparse files.
If page_compression (introduced in MariaDB Server 10.1) is enabled,
the logical action is to not preallocate space to the data files,
but to only logically extend the files with zeroes.

fil_create_new_single_table_tablespace(): Create smaller files for
ROW_FORMAT=COMPRESSED tables, but adhere to the minimum file size of
4*innodb_page_size.

fil_space_extend_must_retry(), os_file_set_size(): On Windows,
use SetFileInformationByHandle() and FILE_END_OF_FILE_INFO,
which depends on bumping _WIN32_WINNT to 0x0600.
FIXME: The files are not yet set up as sparse, so
this will currently end up physically extending (preallocating)
the files, wasting storage for unused pages.

os_file_set_size(): Add the parameter "bool sparse=false" to declare
that the file is to be extended logically, instead of being preallocated.
The only caller with sparse=true is
fil_create_new_single_table_tablespace().
(The system tablespace cannot be created with page_compression.)

fil_space_extend_must_retry(), os_file_set_size(): Outside Windows,
use ftruncate() to extend files that are supposed to be sparse.
On systems where ftruncate() is limited to files less than 4GiB
(if there are any), fil_space_extend_must_retry() retains the
old logic of physically extending the file.
2017-02-22 22:29:56 +02:00
Sergey Vojtovich
ba4d0a1b35 There's no systemd socket activation support yet 2017-02-17 12:47:09 +04:00
Vladislav Vaintroub
8877f1c325 MDEV-12056 mysql_config outputs non-existing mysqlclient
Change output of mysql_config --libs to have -lmariadb instead of
-lmysqlclient

Static linking is not yet supported, because static library has different
base name ( libmariadbclient.a static vs libmariadb.so shared)
2017-02-14 18:07:42 +01:00
Vladislav Vaintroub
de49fd842a RocksDB : Add lookup / compiling with optional compression libraries.
This change add WITH_ROCKSDB_{LZ4,BZIP2,ZSTD,snappy} CMake variables
that can be set to ON/OFF/AUTO.

If variable has default value AUTO, rocksdb links with corresponding
compression library. OFF disables compiling/linking with specific compression
library, ON forces compiling with it (cmake would throw error if library
is not available)

Support for ZLIB is added unconditionally, as it is always there.
2017-02-09 16:55:02 +00:00
Jan Lindström
71495a1748 MDEV-11849: Fix storage/innobase/* compile warnings 2017-01-26 08:05:24 +02:00
Monty
7567cf5aef Fixes for using ssl with BUILD scripts.
Needed as GNUTLS can't be used by MariaDB on many systems,
like OpenSuse 13.2
2017-01-11 09:18:36 +02:00
Sergei Golubchik
4a5d25c338 Merge branch '10.1' into 10.2 2016-12-29 13:23:18 +01:00
Vladislav Vaintroub
c13b501162 Fix broken cmake -DBUILD_CONFIG=mysql_release on Windows.
mysql_release.cmake set WITH_JEMALLOC=static, which makes windows
builds fail since there is no jemalloc either static or shared there
2016-12-14 19:20:17 +00:00
Sergei Golubchik
855f0b9b16 update RPM metadata (vendor and contact) 2016-12-12 20:27:20 +01:00
Nirbhay Choubey
dbb06d2eab MDEV-10954: MariaDB Galera: wsrep_sst_common: line 120: which: command not found
Add 'which' to REQUIRES list.
2016-12-12 08:51:50 -05:00
Sergei Golubchik
2f20d297f8 Merge branch '10.0' into 10.1 2016-12-11 09:53:42 +01:00
Sergei Golubchik
3e8155c637 Merge branch '5.5' into 10.0 2016-12-09 16:33:48 +01:00
Sergei Golubchik
18cdff6765 MDEV-10293 'setupterm' was not declared in this scope
Check for readline before checking for curses headers, because
MYSQL_CHECK_READLINE fails when curses is not found, but
CHECK_INCLUDE_FILES simply remembers the fact and continues.  So if
there's no curses, MYSQL_CHECK_READLINE will abort, the user will then
installs curses and continue the build. Thus, CHECK_INCLUDE_HEADERS
will remember that there is no curses, but other checks from
MYSQL_CHECK_READLINE will remember that curses are there. It will
result in inconsistent HAVE_xxx defines.
2016-12-05 14:27:45 +01:00
Kristian Nielsen
022aeda4c0 Attempt to fix strange rpm dependency issue following prior patch 2016-11-21 08:24:10 +01:00
Vladislav Vaintroub
2d25d09a8b Merge pull request #253 from grooverdan/10.2-MDEV-11195-numa-build
MDEV-11195: Correct enablement of NUMA in innodb/xtradb
2016-11-04 17:19:02 +01:00
Sergei Golubchik
a98c85bb50 Merge branch '10.0-galera' into 10.1 2016-11-02 13:44:07 +01:00
Daniel Black
58ac8dd255 MDEV-11195: Simplify enablement of NUMA in innodb/xtradb
Move common parts of {innodb,xtradb}/CmakeLists.txt to the macro.
2016-11-02 14:37:43 +11:00
Daniel Black
ab0e5031e4 MDEV-11195: Correct enablement of NUMA in innodb/xtradb
No -DHAVE_LIBNUMA=1 was passed to the source compile (and the
global include/my_config.h wasn't used).

This also is Linux only so corrected the cmake macro.

Fixed indenting in cmake macro.

Removed NUMA defination from include/my_config.h as its only
in the storage engine.

Thanks Elena Stepanova and Vladislav Vaintroub for the detailed
list of bugs/questions.

Signed-off-by: Daniel Black <daniel.black@au.ibm.com>
2016-11-01 11:09:47 +11:00
Otto Kekäläinen
c912d05fab MDEV-6284: Install systemd files (almost) the Debian way
The control file contents must be correct from the start and cannot
be modified at build time by CMake. Also all static Debian package
analyzers will fail to see all manipulations by CMake later on.

It is best to do all manipulations like these in autobake-deb.sh.
2016-10-29 03:50:11 +03:00
Nirbhay Choubey
5db2195a35 Merge tag 'mariadb-10.0.28' into 10.0-galera 2016-10-28 15:50:13 -04: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
Jan Lindström
f35f61b5a9 Merge branch '10.2-numa' of https://github.com/grooverdan/mariadb-server into grooverdan-10.2-numa 2016-10-24 09:07:49 +03:00
Kristian Nielsen
39b7affcb1 Upstream MIPS 32bit-build-on-64bit patch from Debian Bug#838914
From https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838914

Fixes CMake so that when building a 32-bit mips binary on a 64-bit
mips machine, the target is not set as 32-bit, which apparently
confused some tests in mroonga.
2016-10-21 23:02:56 +02:00
Sergei Golubchik
66d9696596 Merge branch '10.0' into 10.1 2016-09-28 17:55:28 +02:00
Sergei Golubchik
78f58792ac more adequate rpm settings
new MariaDB-shared no longer provides or replaces mysql-libs or mariadb-libs
2016-09-23 22:34:03 +02:00
Sergei Golubchik
deafe7a7aa RPM fixes for CentOS7 and Fedora 2016-09-23 16:04:16 +02:00