mariadb/cmake/os
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
..
AIX.cmake Updated/added copyright headers 2011-06-30 17:46:53 +02:00
Cygwin.cmake Updated/added copyright headers 2011-06-30 17:46:53 +02:00
Darwin.cmake Bug#17633291: SET PROPER COMPILE OPTIONS FOR CLANG 2014-10-13 09:52:28 +02:00
FreeBSD.cmake MDEV-5076 : Build on FreeBSD - when looking for execinfo library, and execinfo.h header, 2013-09-26 23:48:38 +02:00
HP-UX.cmake Updated/added copyright headers 2011-06-30 17:46:53 +02:00
Linux.cmake MySQL-5.5.35 merge 2014-01-22 15:29:36 +01:00
OS400.cmake Updated/added copyright headers 2011-06-30 17:46:53 +02:00
SunOS.cmake Various fixes for Solaris compiler. 2012-02-03 11:46:40 +01:00
Windows.cmake MDEV-11520 after-merge fix for 10.1: Use sparse files. 2017-02-22 22:29:56 +02:00
WindowsCache.cmake MDEV-9024 Build fails with VS2015 2016-02-06 22:41:58 +01:00