Commit Graph

810 Commits

Author SHA1 Message Date
Michal Schorm
9ac0430b0f [2/2] Rebase to 10.11.6 - start using upstream logrotate file
Explanation for removed notes follow:

| * Enable creation of the log file by logrotate (needed since
|   /var/log/ isn't writable by mysql user); and set the same 640
|   permissions we normally use.

This is an ancient artefact.
It originates in this commit from 2012 in the 'mysql' package in Fedora:
  https://src.fedoraproject.org/rpms/mysql/c/d3bdaa4a?branch=rawhide
That was at the time, when the DB log resided directly in '/var/log/', rather than '/var/log/some-dir-specific-for-the-DB/'.
Since that is no longer the case, the 'create 600 mysql mysql' directive is no longer necessary.

| * Comment out the actual rotation commands, so that user must edit
|   the file to enable rotation.  This is unfortunate, but the fact
|   that the script will probably fail without manual configuration
|   (to set a root password) means that we can't really have it turned
|   on by default.  Fortunately, in most configurations the log file
|   is low-volume and so rotation is not critical functionality.

This is no longer true.
Since MariaDB 10.4, which introduced authentication via the UNIX socket,
the 'root' and 'mysql' users can authenticate without login and password.

So we can go back to using 'mysqladmin', or 'mariadb-admin' in this case, to flush logs

| See discussions at RH bugs 799735, 547007
| * Note they are from Fedora 15 / 16

I found no more useful information there. Only information already mentioned in other notes here.

| Update 3/2017
| * it would be big unexpected change for anyone upgrading, if we start shipping it now.
|  Maybe it is good candidate for shipping with MariaDB 10.2 ?

Introduction of MariaDB 10.11 is the perfect time.

| * the 'mysqladmin flush logs' doesn´t guarantee, no entries are lost
|   during flushing, the operation is not atomic.
|   We should not ship it in that state

True, however, no one likely cares about that, in reality, since those logs don't hold any journal-like entries.
Explained here:
  https://github.com/MariaDB/server/pull/1556#issuecomment-941886220

| Update 6/2018
| * the SIGHUP causes server to flush all logs. No password admin needed, the only constraint is
|   beeing able to send the SIGHUP to the process and read the mysqld pid file, which root can.
| * Submited as PR: https://github.com/MariaDB/server/pull/807

It has been dicussed on the upstream thoroughly and was found far from ideal.
Now, that we can use 'mysqladmin', or 'mariadb-admin' in this case, safely again,
there's no argument to keep using the PID file for flushing logs.

| Update 02/2021
| * Enhance the script as proposed in:
|   https://mariadb.com/kb/en/rotating-logs-on-unix-and-linux/

Enhanced again now. Significantly this time, however with a vision that the values will become an OS-independent defaults.

|  * Discussion continues in:
|   https://jira.mariadb.org/browse/MDEV-16621

Discussion finished.
Better start a new one, if needed.
2024-01-30 12:58:32 +01:00
Michal Schorm
bd6dffbdbc [1/2] Rebase to 10.11.6 - rebase 2024-01-30 12:58:32 +01:00
Michal Schorm
1098ece75f Rebase to 10.10.7 2024-01-30 12:58:32 +01:00
Michal Schorm
593047b070 Rebase to 10.9.8 2024-01-30 12:58:32 +01:00
Michal Schorm
628a935aea Rebase to 10.8.8 2024-01-30 12:58:32 +01:00
Michal Schorm
6f8e29f6c6 Rebase to 10.7.8 2024-01-30 12:58:32 +01:00
Michal Schorm
1bbc56a6d8 [3/3] Rebase to 10.6.16
update sources to the 10.6.16
2024-01-30 12:58:32 +01:00
Michal Schorm
1714af22b3 [2/3] Rebase to 10.6.16
Revert "Introduce the script for generating sources tarball without a code under a license which was not yet approved for Fedora or RHEL"
This reverts commit 7f8a0e15a6.

Note: MariaDB upstream removed TokuDB SE sources in 10.6.0
2024-01-30 12:58:32 +01:00
Michal Schorm
12aa851dee Rebase to 10.6.16
new sources are intentionally omitted from this commit

Remove manual pages already shipped by mariadb-connector-c package
2024-01-30 12:58:15 +01:00
Michal Schorm
4ebee0c23c Bump release to 100
to prepare for a production build after large set of changes in 'mariadb', 'community-mysql' and 'mysql' packages
2024-01-30 10:14:29 +01:00
Michal Schorm
01c183c3e5 F40 Change "MariaDB & MySQL repackaging" - Implement conflicts with 'mysql' and 'community-mysql' names 2024-01-30 10:12:28 +01:00
Michal Schorm
cabbe3794a Bump release for rebuild 2024-01-26 16:58:24 +01:00
Michal Schorm
c31ee2cc1a SPECfile enhancement - Make the 'mariadb-errmsg' and 'mariadb-common' sub-packages 'noarch'
The sub-package 'mariadb-common' contains XML files with character sets.
The sub-package 'mariadb-errmsg' contains 'errmsg.sys' files with error messages for various laguages

$ tree
.
├── mariadb-common-10.5.23-3.fc40.noarch
│   └── usr
│       └── share
│           ├── doc
│           │   └── mariadb
│           └── mariadb
│               └── charsets
│                   ├── armscii8.xml
│                   ├── ascii.xml
│                   ├── cp1250.xml
│                   ├── cp1251.xml
│                   ├── cp1256.xml
│                   ├── cp1257.xml
│                   ├── cp850.xml
│                   ├── cp852.xml
│                   ├── cp866.xml
│                   ├── dec8.xml
│                   ├── geostd8.xml
│                   ├── greek.xml
│                   ├── hebrew.xml
│                   ├── hp8.xml
│                   ├── Index.xml
│                   ├── keybcs2.xml
│                   ├── koi8r.xml
│                   ├── koi8u.xml
│                   ├── latin1.xml
│                   ├── latin2.xml
│                   ├── latin5.xml
│                   ├── latin7.xml
│                   ├── macce.xml
│                   ├── macroman.xml
│                   ├── README
│                   └── swe7.xml
├── mariadb-common-10.5.23-3.fc40.noarch.rpm
├── mariadb-errmsg-10.5.23-3.fc40.noarch
│   └── usr
│       └── share
│           └── mariadb
│               ├── bulgarian
│               │   └── errmsg.sys
│               ├── chinese
│               │   └── errmsg.sys
│               ├── czech
│               │   └── errmsg.sys
│               ├── danish
│               │   └── errmsg.sys
│               ├── dutch
│               │   └── errmsg.sys
│               ├── english
│               │   └── errmsg.sys
│               ├── errmsg-utf8.txt
│               ├── estonian
│               │   └── errmsg.sys
│               ├── french
│               │   └── errmsg.sys
│               ├── german
│               │   └── errmsg.sys
│               ├── greek
│               │   └── errmsg.sys
│               ├── hindi
│               │   └── errmsg.sys
│               ├── hungarian
│               │   └── errmsg.sys
│               ├── italian
│               │   └── errmsg.sys
│               ├── japanese
│               │   └── errmsg.sys
│               ├── korean
│               │   └── errmsg.sys
│               ├── norwegian
│               │   └── errmsg.sys
│               ├── norwegian-ny
│               │   └── errmsg.sys
│               ├── polish
│               │   └── errmsg.sys
│               ├── portuguese
│               │   └── errmsg.sys
│               ├── romanian
│               │   └── errmsg.sys
│               ├── russian
│               │   └── errmsg.sys
│               ├── serbian
│               │   └── errmsg.sys
│               ├── slovak
│               │   └── errmsg.sys
│               ├── spanish
│               │   └── errmsg.sys
│               ├── swedish
│               │   └── errmsg.sys
│               └── ukrainian
│                   └── errmsg.sys
└── mariadb-errmsg-10.5.23-3.fc40.noarch.rpm
2024-01-26 14:41:51 +01:00
Michal Schorm
752dc83d49 [21/21] SPECfile cleanup - fuser is no longer used
It has been removed from the script in 2018 in the commit:
  4024962c36
where it was replaced by mysqladmin call
2024-01-26 14:41:28 +01:00
Michal Schorm
dfc363eceb [20/20] SPECfile cleanup - Do not try to re-define the RPM %license Virtual File Attribute to a global macro
https://rpm-software-management.github.io/rpm/manual/spec.html

This code was likely meant to deal %license tag on systems without RPM 4.11,
which could happen when the maintainer wanted to keep close the content
of Fedora SPECfile and RHEL SPECfile at a time.

While in Fedora the RPM 4.11 was present for years before the commit that added this code,
it might not be the case in an old, but still active, RHEL at that time.
2024-01-26 14:41:20 +01:00
Michal Schorm
bfbe4efc59 [19/20] SPECfile cleanup - move general code blocks to a more logical place 2024-01-26 14:41:12 +01:00
Michal Schorm
e86906d050 [18/20] SPECfile cleanup - make sure the target directory exists
The 'mv' command failed after the last commit, beacuse the line
| install -p -m 644 -D selinux/%{pkg_name}-server-galera.pp %{buildroot}%{_datadir}/selinux/packages/targeted/%{pkg_name}-server-galera.pp
which was originally before the cracklib condition, created the target directory tree thanks to the
| install -D
functionality.
2024-01-26 14:41:04 +01:00
Michal Schorm
d8f486421c [17/20] SPECfile cleanup - reoder the 'install' phase
group up code blocks regarding same part of the software
2024-01-26 14:40:56 +01:00
Michal Schorm
f6b745b0a4 [16/20] SPECfile cleanup - explicit definition of Python shebang is not needed
The value we use is the upstream deafult:

| # grep -r -i -e "python_shebang" mariadb-10.5.23-downstream_modified
| mariadb-10.5.23-downstream_modified/storage/rocksdb/myrocks_hotbackup.py:#!@PYTHON_SHEBANG@
| mariadb-10.5.23-downstream_modified/cmake/cpack_deb.cmake:SET(PYTHON_SHEBANG "/usr/bin/python3" CACHE STRING "python shebang")
| mariadb-10.5.23-downstream_modified/cmake/cpack_rpm.cmake:SET(PYTHON_SHEBANG "/usr/bin/python3" CACHE STRING "python shebang")
| mariadb-10.5.23-downstream_modified/CMakeLists.txt:SET(PYTHON_SHEBANG "/usr/bin/env python3" CACHE STRING "python shebang")
| mariadb-10.5.23-downstream_modified/CMakeLists.txt:MARK_AS_ADVANCED(PYTHON_SHEBANG)
2024-01-26 14:40:47 +01:00
Michal Schorm
aeb2a7f20d [15/20] SPECfile cleanup - use the unversioned docdirs in a clean and straightforward way 2024-01-26 14:40:39 +01:00
Michal Schorm
dfed927a62 [14/20] SPECfile cleanup - patch configuration option has been upstreamed in 2016; #884755 2024-01-26 14:40:31 +01:00
Michal Schorm
5f1d5c3e1f [13/20] SPECfile cleanup - Remove single-purpose macro,
especially when it holds the same value as another macro
2024-01-26 14:40:24 +01:00
Michal Schorm
459b90c332 [12/20] SPECfile cleanup - Transform %require_mysql_selinux general macro to a control macro 2024-01-26 14:40:16 +01:00
Michal Schorm
9fa011378f [11/20] SPECfile cleanup - Reorder for readability
Order explanation:
- main parts of the package
- code enhancing the main parts of the package
- debug control
- other plugins and storage engines enabled by default
- other plugins and storage engines enabled only on Fedora
- other plugins and storage engines enabled only on Fedora only on specific architectures
2024-01-26 14:39:17 +01:00
Michal Schorm
b311ee784b [10/20] SPECfile cleanup - Reformat for readability,
add whitespace characters
2024-01-26 14:31:42 +01:00
Michal Schorm
f1fdad6a71 [9/20] SPECfile cleanup - Remove no-op code,
replace the only other use of the macro, and remove the macro entirely
2024-01-26 14:31:23 +01:00
Michal Schorm
0669aa0705 [8/20] SPECfile cleanup - Remove duplicit CMake argument 2024-01-26 14:31:02 +01:00
Michal Schorm
f15af802a8 [7/20] SPECfile cleanup - Optimize SPECfile for number of lines 2024-01-26 14:30:01 +01:00
Michal Schorm
087e8307bc [6/20] SPECfile cleanup - Remove old 'Obsoletes:' 2024-01-26 14:29:53 +01:00
Michal Schorm
5acadd8c19 [5/20] SPECfile cleanup - Remove duplicit occurence of 'BuildRequires:' 2024-01-26 14:29:45 +01:00
Michal Schorm
74e9f41eba [4/20] SPECfile cleanup - assuming we're on Fedora or RHEL>=8
The 'libs' and 'config' sub-packages are now superseded by 'mariadb-connector-c'.
No need for the control code around at the moment.
2024-01-26 14:29:37 +01:00
Michal Schorm
349a0add40 [3/20] SPECfile cleanup - assuming we're on Fedora or RHEL>=8 2024-01-26 14:29:20 +01:00
Michal Schorm
81a127d488 [2/20] SPECfile cleanup - assuming we're on Fedora or RHEL>=8
Python 3 is the default version of Python for quite some time now
2024-01-26 14:29:13 +01:00
Michal Schorm
4bcc53237f [1/20] SPECfile cleanup - Fix cherry-picked from RHEL 8
The PCRE2 version in RHEL 8 is actually 10.32:
https://gitlab.com/redhat/centos-stream/rpms/pcre2/-/blob/c8s/sources?ref_type=heads
so we need to bundle the PCRE2 10.34 there

The version of PCRE2 in RHEL 9 is 10.40:
https://gitlab.com/redhat/centos-stream/rpms/pcre2/-/blob/c9s/sources?ref_type=heads
so we're safe there
2024-01-26 14:29:04 +01:00
Fedora Release Engineering
25de99bdbd Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 05:47:16 +00:00
Fedora Release Engineering
429b3feaf7 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 06:54:41 +00:00
Yaakov Selkowitz
f6fef0c961 Fix flatpak build
The primary reason for building this in /app is for mariadb-embedded as
a dependency of the amarok flatpak. PAM modules are not useful in
flatpaks, and their installation directory would need to be changed. The
pcre2 and lz4 dependencies are part of the runtime, and therefore are in
/usr even for flatpaks.
2024-01-08 16:55:20 -05:00
Michal Schorm
9fe7f4029b Testsuite verified for 10.5.23 2023-11-17 02:05:11 +01:00
Michal Schorm
4cbd605121 Rebase to 10.5.23 2023-11-16 02:21:51 +01:00
Michal Schorm
839a3502f7 Packaging update - use the %{pkg_name} macro consistently across the SPECfile instead of %{name}
Removed %pkgnamepatch macro, as it equals the %{pkg_name} macro and there isn't really a reason to keep both

This commit should be no-op at this moment
2023-09-29 09:53:49 +02:00
Michal Schorm
33c8c26fc3 Testsuite verification for 10.5.22 version 2023-09-26 08:41:56 +02:00
Michal Schorm
10445d7e27 WORKAROUND: disable LTO on i686 arch to mitigate Internal Compiler Error
https://bugzilla.redhat.com/show_bug.cgi?id=2239498

TODO: Remove when the issue is resolved
2023-09-26 08:41:56 +02:00
Michal Schorm
635c377683 Explanation added for a conditional requirement of mysql-selinux 2023-09-26 08:41:56 +02:00
Michal Schorm
032692271d Update 'mariadb-server-galera' SELinux policy packaging
https://fedoraproject.org/wiki/SELinux/IndependentPolicy
2023-09-26 08:41:56 +02:00
Michal Schorm
607eb71d53 Regroup scriptlets
(should be no-op change)
2023-09-26 08:41:56 +02:00
Michal Schorm
466e9bfd68 [2/2] Rebase to version 10.5.22 - Pack aditional SELinux rules for the cracklib plugin
https://jira.mariadb.org/browse/MDEV-18374
https://github.com/MariaDB/server/pull/1131/files

https://fedoraproject.org/wiki/SELinux/IndependentPolicy
2023-09-26 08:41:56 +02:00
Michal Schorm
a0c21fd5cf [1/2] Rebase to version 10.5.22
Upstream Release notes:
https://mariadb.com/kb/en/mariadb-10-5-22-release-notes/
2023-09-16 18:33:54 +02:00
Michal Schorm
e04eb650af Rebase to 10.5.21
Extended testsuite results checked
2023-07-27 09:20:14 +02:00
Fedora Release Engineering
ada959fe7d Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 13:45:39 +00:00
Michal Schorm
a6a41d44d0 Testsuite verification for 10.5.20 version
- skipped test lists format fixed
- code for applying skipped tests list added to the SPIDER suites
2023-06-07 04:37:25 +02:00