[MDEV-30585] Columnstore depends on client-compat and server-compat stronger than other packages Created: 2023-02-06  Updated: 2023-02-07  Resolved: 2023-02-07

Status: Closed
Project: MariaDB Server
Component/s: Packaging, Platform RedHat
Affects Version/s: N/A
Fix Version/s: N/A

Type: Bug Priority: Critical
Reporter: Elena Stepanova Assignee: Daniel Black
Resolution: Not a Bug Votes: 0
Labels: None

Issue Links:
Problem/Incident
is caused by MDEV-30203 Move mysql symlinks to different package Closed

 Description   

When MariaDB-client-compat and/or MariaDB-server-compat are uninstalled, it also causes removal of MariaDB-columnstore-engine package – only it, other MariaDB packages remain installed. It seems strange, but maybe it's intentional

$ sudo yum remove MariaDB-client-compat MariaDB-server-compat
Dependencies resolved.
===============================================================================================================================================================================================
 Package                                         Architecture                Version                                    Repository                                                        Size
===============================================================================================================================================================================================
Removing:
 MariaDB-client-compat                           noarch                      11.0.1-1.el8                               @test-mariadb-es                                                 890  
 MariaDB-server-compat                           noarch                      11.0.1-1.el8                               @test-mariadb-es                                                 327  
Removing dependent packages:
 MariaDB-columnstore-engine                      x86_64                      11.0.1_6.4.6-1.el8                         @test-mariadb-es                                                  33 M
Removing unused dependencies:
 binutils                                        x86_64                      2.30-117.el8                               @rhui-rhel-8-for-x86_64-baseos-rhui-rpms                          24 M
 boost-atomic                                    x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                      8.7 k
 boost-chrono                                    x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                       38 k
 boost-date-time                                 x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                       78 k
 boost-filesystem                                x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                      111 k
 boost-system                                    x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                       21 k
 boost-thread                                    x86_64                      1.66.0-13.el8                              @rhui-rhel-8-for-x86_64-appstream-rhui-rpms                      178 k
 
Transaction Summary
===============================================================================================================================================================================================
Remove  10 Packages

And indeed,

$ sudo rpm -q MariaDB-columnstore-engine --requires | grep compat
MariaDB-client-compat
MariaDB-server-compat

while for MariaDB-server, MariaDB-client and apparently other packages it is not the case.



 Comments   
Comment by Daniel Black [ 2023-02-07 ]

Yes this is because of:

commit 75b9aace3ad87ece5b07f615da105f7316189652
Author: Sergei Golubchik <serg@mariadb.org>
Date:   Sat Dec 24 00:21:02 2022 +0100
 
    ColumnStore still needs mysql* aliases
 
diff --git a/storage/columnstore/CMakeLists.txt b/storage/columnstore/CMakeLists.txt
index 399c59d57d7..ab29ffc566b 100644
--- a/storage/columnstore/CMakeLists.txt
+++ b/storage/columnstore/CMakeLists.txt
@@ -35,7 +35,7 @@ CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
         # Needed to bump the component changes up to the main scope
         APPEND_FOR_CPACK(CPACK_COMPONENTS_ALL)
         IF (RPM)
-            APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_REQUIRES " binutils net-tools python3")
+            APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_REQUIRES " binutils net-tools python3 MariaDB-client-compat MariaDB-server-compat")
             APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_RECOMMENDS " jemalloc")
             APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_USER_FILELIST ";%ignore /var/lib;%ignore /var")
             APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_CONFLICTS " thrift MariaDB-columnstore-platform MariaDB-columnstore-libs")

The columnstore is so tied to using the mysql names that the hard requires will remove the columnstore-engine package.

Easy to remove when columnstore updates.

Generated at Thu Feb 08 10:17:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.