[MDEV-7771] missing client plugins when mariadb-shared is not installed Created: 2015-03-13 Updated: 2015-06-15 Resolved: 2015-06-15 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Packaging, Platform RedHat |
| Affects Version/s: | 10.0.17 |
| Fix Version/s: | 10.0.20 |
| Type: | Bug | Priority: | Major |
| Reporter: | Honza Horak | Assignee: | Sergei Golubchik |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Linux, Fedora |
||
| Issue Links: |
|
||||||||
| Sprint: | 10.0.20 | ||||||||
| Description |
|
I've installed only the following packages: and tried to use auth_pam.so plugin. I got the following error:
...simply because the dialog.so is packaged in MariaDB-shared RPM. |
| Comments |
| Comment by Sergei Golubchik [ 2015-03-13 ] |
|
In a sense, it's correct. Because dialog.so plugin is loaded by libmysqlclient.so, so they're packaged together. But client tools from MariaDB-client are linked with libmysqlclient.a statically. That's why they work and don't require MariaDB-shared. I see two possible fixes for this:
I'd generally prefer the second solution, many fine-grained packages are, in my opinion, confusing for users, and linking dynamically is just The Right Thing. |
| Comment by Honza Horak [ 2015-03-13 ] |
|
Dynamic linking sounds fine to me. Just ad 1) that separate package could be MariaDB-common, right? |
| Comment by Sergei Golubchik [ 2015-03-13 ] |
|
MariaDB-common is for files that are used both by the client and the server. So far I believed that client-side plugins are only used by the client. But now I'm thinking that in replication a server just might need them too. I'll see if that's right, and if yes — sure, I'll move client plugins to MariaDB-common. |
| Comment by Sergei Golubchik [ 2015-05-02 ] |
|
hhorak, do I need to set obsoletes/conflicts somehow when moving files between packages? like new -common conflicts with the old -shared, or something like that? |
| Comment by Honza Horak [ 2015-06-12 ] |
|
Yey, so big delay.. I don't think any obsoletes/conflicts changes are necessary in this case, the only important thing here are the Requires from -server and other packages, so all the packages have all necessary pieces installed if needed. |
| Comment by Sergei Golubchik [ 2015-06-15 ] |
|
Ok, fixed. I've only fixed RPMs, because DEBs are much more fragile and I don't want to break them. We will do this fix in DEB packages later, after MDEV-3809 |