As these versions are never used without the compiled server version beside it, lets just drop the client version as the updating pattern for these at best is sparadic.
I think it's a really bad idea to remove the independent version number from clients:
It is useful for a users and dba:s that moves between different servers to be able to check the client version when things doesn't work as expected in the client. For example, more commands, different options between CLIENT VERSIONS, not related to server versions at all!
A lot of your clients has come as contributions from different users. The authors are the one that should decide on the client version as they may change things independent of the server server version. We don't want to start changing version numbers to projects that we over time add to MariaDB (as forks), just like we don't do this with storage engines.
There are tools that we get as part of storage engine or plugins. I don't think it's a good idea to a version change of these. To change some things and not other things is more likely to lead to more confusion, not less.
Client tools can be backported to earlier versions, which adds new functionality to the tool. It is much easier to check the capability and functionality of a tool based on a single tool specific version number than have to div trough logs to see what was changed with a tool in a specific server version. Documenting client tools changes also becomes more complex if we have to list all server versions where a tool was changed.
OS, like Ubuntu and tools collections, like KDE, doesn't change the version number of their included tools. Why should we?
Just because a few users are confused about MariaDB client version is not any indication that there is any problem.
We have got very (any?) few reports about people being confused about our version numbers, which means that they are happy with the current state (or don't care). In either case, there is no reason to change versions.
There are some packages that has changed all tools to just print the package version, like net-tools, gzip, coreutils. However this is not a good reason alone to change things.
I don't think we (MariaDB developers) have any information of what users things about client/tool specific version numbers. Instead of doing a change based on one single users post, we should at least do some studying of the issue. Why not do some information gathering among our users to really understand what they think?
We could do a questionnaire on the MariaDB foundation pages for example.
Michael Widenius
added a comment - - edited I think it's a really bad idea to remove the independent version number from clients:
It is useful for a users and dba:s that moves between different servers to be able to check the client version when things doesn't work as expected in the client. For example, more commands, different options between CLIENT VERSIONS, not related to server versions at all!
A lot of your clients has come as contributions from different users. The authors are the one that should decide on the client version as they may change things independent of the server server version. We don't want to start changing version numbers to projects that we over time add to MariaDB (as forks), just like we don't do this with storage engines.
There are tools that we get as part of storage engine or plugins. I don't think it's a good idea to a version change of these. To change some things and not other things is more likely to lead to more confusion, not less.
Client tools can be backported to earlier versions, which adds new functionality to the tool. It is much easier to check the capability and functionality of a tool based on a single tool specific version number than have to div trough logs to see what was changed with a tool in a specific server version. Documenting client tools changes also becomes more complex if we have to list all server versions where a tool was changed.
OS, like Ubuntu and tools collections, like KDE, doesn't change the version number of their included tools. Why should we?
Just because a few users are confused about MariaDB client version is not any indication that there is any problem.
We have got very (any?) few reports about people being confused about our version numbers, which means that they are happy with the current state (or don't care). In either case, there is no reason to change versions.
There are some packages that has changed all tools to just print the package version, like net-tools, gzip, coreutils. However this is not a good reason alone to change things.
I don't think we (MariaDB developers) have any information of what users things about client/tool specific version numbers. Instead of doing a change based on one single users post, we should at least do some studying of the issue. Why not do some information gathering among our users to really understand what they think?
We could do a questionnaire on the MariaDB foundation pages for example.
monty I think these are potentially arguments towards putting the client tools into a separately maintained repo as well.
Andrew Hutchings (Inactive)
added a comment - monty I think these are potentially arguments towards putting the client tools into a separately maintained repo as well.
An alternative to removing the version would be making it less likely to cause a confusion.
Currently clients print
mariadb Ver 15.1 Distrib 10.11.2-MariaDB for Linux (x86_64)
we could change it to one of
mariadb Ver 15.1-10.11.2-MariaDB for Linux (x86_64)
mariadb Ver 15.1:10.11.2-MariaDB for Linux (x86_64)
mariadb from 10.11.2-MariaDB (client: 15.1) for Linux (x86_64)
or something along those lines
Sergei Golubchik
added a comment - An alternative to removing the version would be making it less likely to cause a confusion.
Currently clients print
mariadb Ver 15.1 Distrib 10.11.2-MariaDB for Linux (x86_64)
we could change it to one of
mariadb Ver 15.1-10.11.2-MariaDB for Linux (x86_64)
mariadb Ver 15.1:10.11.2-MariaDB for Linux (x86_64)
mariadb from 10.11.2-MariaDB (client: 15.1) for Linux (x86_64)
or something along those lines
As a new user of MariaDB (and an on and off user of MySQL and *nix/Linux), I did find that "mariadb Ver 15.1" jumped out at me and confused me a bit. But "Distrib 10.11.2-MariaDB" was sufficient to assure me that I wasn't daydreaming..
I feel that most users (even DBAs) of MariaDB have no direct need to think of mariadbd. They are not expected to interact with mariadbd directly, but rather systemctl mariadb start, service mariadb start, etc, so when they see mariadb, they would naturally associate it with the server.
In a way, one could argue that it's "unfortunate" that the name of the client is the same as the database. e.g., sqlplus (oracle), sqlcmd (sqlserver), psql (postgresql), etc don't have this "issue." But it's neither here nor there..
Anyway, adding the verbiage "client" is a very good idea to clarify that this is a client tool. It should definitely help decreasing confusion amongst inexperienced users.
Ray Sleepy
added a comment - As a new user of MariaDB (and an on and off user of MySQL and *nix/Linux), I did find that "mariadb Ver 15.1" jumped out at me and confused me a bit. But "Distrib 10.11.2-MariaDB" was sufficient to assure me that I wasn't daydreaming..
I feel that most users (even DBAs) of MariaDB have no direct need to think of mariadbd. They are not expected to interact with mariadbd directly, but rather systemctl mariadb start, service mariadb start, etc, so when they see mariadb, they would naturally associate it with the server.
In a way, one could argue that it's "unfortunate" that the name of the client is the same as the database. e.g., sqlplus (oracle), sqlcmd (sqlserver), psql (postgresql), etc don't have this "issue." But it's neither here nor there..
Anyway, adding the verbiage "client" is a very good idea to clarify that this is a client tool. It should definitely help decreasing confusion amongst inexperienced users.
People
Sergei Golubchik
Daniel Black
Votes:
0Vote for this issue
Watchers:
8Start watching this issue
Dates
Created:
Updated:
Resolved:
Git Integration
Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.
{"report":{"fcp":718.8000000715256,"ttfb":188.70000004768372,"pageVisibility":"visible","entityId":117418,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"a0b4b3aa-0805-4173-a09f-d16ba7d46aa8","navigationType":0,"readyForUser":777.8000000715256,"redirectCount":0,"resourceLoadedEnd":935.3999999761581,"resourceLoadedStart":194.30000007152557,"resourceTiming":[{"duration":9.899999976158142,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":194.30000007152557,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":194.30000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":204.20000004768372,"responseStart":0,"secureConnectionStart":0},{"duration":11.100000023841858,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":194.39999997615814,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":194.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":205.5,"responseStart":0,"secureConnectionStart":0},{"duration":67.79999995231628,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":194.60000002384186,"connectEnd":194.60000002384186,"connectStart":194.60000002384186,"domainLookupEnd":194.60000002384186,"domainLookupStart":194.60000002384186,"fetchStart":194.60000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":194.60000002384186,"responseEnd":262.39999997615814,"responseStart":262.39999997615814,"secureConnectionStart":194.60000002384186},{"duration":152.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":194.89999997615814,"connectEnd":194.89999997615814,"connectStart":194.89999997615814,"domainLookupEnd":194.89999997615814,"domainLookupStart":194.89999997615814,"fetchStart":194.89999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":194.89999997615814,"responseEnd":347.8000000715256,"responseStart":347.8000000715256,"secureConnectionStart":194.89999997615814},{"duration":156.70000004768372,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":195.10000002384186,"connectEnd":195.10000002384186,"connectStart":195.10000002384186,"domainLookupEnd":195.10000002384186,"domainLookupStart":195.10000002384186,"fetchStart":195.10000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":195.10000002384186,"responseEnd":351.8000000715256,"responseStart":351.8000000715256,"secureConnectionStart":195.10000002384186},{"duration":157.10000002384186,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":195.20000004768372,"connectEnd":195.20000004768372,"connectStart":195.20000004768372,"domainLookupEnd":195.20000004768372,"domainLookupStart":195.20000004768372,"fetchStart":195.20000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":195.20000004768372,"responseEnd":352.3000000715256,"responseStart":352.3000000715256,"secureConnectionStart":195.20000004768372},{"duration":157.30000007152557,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":195.39999997615814,"connectEnd":195.39999997615814,"connectStart":195.39999997615814,"domainLookupEnd":195.39999997615814,"domainLookupStart":195.39999997615814,"fetchStart":195.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":195.39999997615814,"responseEnd":352.7000000476837,"responseStart":352.7000000476837,"secureConnectionStart":195.39999997615814},{"duration":205.79999995231628,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":195.60000002384186,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":195.60000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":401.39999997615814,"responseStart":0,"secureConnectionStart":0},{"duration":157.39999997615814,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":195.70000004768372,"connectEnd":195.70000004768372,"connectStart":195.70000004768372,"domainLookupEnd":195.70000004768372,"domainLookupStart":195.70000004768372,"fetchStart":195.70000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":195.70000004768372,"responseEnd":353.10000002384186,"responseStart":353.10000002384186,"secureConnectionStart":195.70000004768372},{"duration":205.69999992847443,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":195.80000007152557,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":195.80000007152557,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":401.5,"responseStart":0,"secureConnectionStart":0},{"duration":157.60000002384186,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":196.10000002384186,"connectEnd":196.10000002384186,"connectStart":196.10000002384186,"domainLookupEnd":196.10000002384186,"domainLookupStart":196.10000002384186,"fetchStart":196.10000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":196.10000002384186,"responseEnd":353.7000000476837,"responseStart":353.7000000476837,"secureConnectionStart":196.10000002384186},{"duration":710.6000000238419,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":196.89999997615814,"connectEnd":196.89999997615814,"connectStart":196.89999997615814,"domainLookupEnd":196.89999997615814,"domainLookupStart":196.89999997615814,"fetchStart":196.89999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":196.89999997615814,"responseEnd":907.5,"responseStart":907.5,"secureConnectionStart":196.89999997615814},{"duration":711.3999999761581,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":197,"connectEnd":197,"connectStart":197,"domainLookupEnd":197,"domainLookupStart":197,"fetchStart":197,"redirectEnd":0,"redirectStart":0,"requestStart":197,"responseEnd":908.3999999761581,"responseStart":908.3999999761581,"secureConnectionStart":197},{"duration":104.60000002384186,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":412.60000002384186,"connectEnd":412.60000002384186,"connectStart":412.60000002384186,"domainLookupEnd":412.60000002384186,"domainLookupStart":412.60000002384186,"fetchStart":412.60000002384186,"redirectEnd":0,"redirectStart":0,"requestStart":412.60000002384186,"responseEnd":517.2000000476837,"responseStart":517.2000000476837,"secureConnectionStart":412.60000002384186},{"duration":258.5,"initiatorType":"link","name":"https://jira.mariadb.org/s/d5715adaadd168a9002b108b2b039b50-CDN/lu2bu7/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/css/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":676.8999999761581,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":676.8999999761581,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":935.3999999761581,"responseStart":0,"secureConnectionStart":0},{"duration":246.19999992847443,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/e65b778d185daf5aee24936755b43da6/_/download/contextbatch/js/browser-metrics-plugin.contrib,-_super,-project.issue.navigator,-jira.view.issue,-atl.general/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":677.7000000476837,"connectEnd":677.7000000476837,"connectStart":677.7000000476837,"domainLookupEnd":677.7000000476837,"domainLookupStart":677.7000000476837,"fetchStart":677.7000000476837,"redirectEnd":0,"redirectStart":0,"requestStart":677.7000000476837,"responseEnd":923.8999999761581,"responseStart":923.8999999761581,"secureConnectionStart":677.7000000476837},{"duration":283.89999997615814,"initiatorType":"script","name":"https://jira.mariadb.org/s/f51ef5507eea4c158f257c66c93b2a3f-CDN/lu2bu7/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/js/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":678.1000000238419,"connectEnd":678.1000000238419,"connectStart":678.1000000238419,"domainLookupEnd":678.1000000238419,"domainLookupStart":678.1000000238419,"fetchStart":678.1000000238419,"redirectEnd":0,"redirectStart":0,"requestStart":678.1000000238419,"responseEnd":962,"responseStart":962,"secureConnectionStart":678.1000000238419}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":30,"responseStart":188,"responseEnd":192,"domLoading":192,"domInteractive":944,"domContentLoadedEventStart":944,"domContentLoadedEventEnd":981,"domComplete":1202,"loadEventStart":1203,"loadEventEnd":1203,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":919.1000000238419},{"name":"bigPipe.sidebar-id.end","time":919.8000000715256},{"name":"bigPipe.activity-panel-pipe-id.start","time":919.8999999761581},{"name":"bigPipe.activity-panel-pipe-id.end","time":921.8999999761581},{"name":"activityTabFullyLoaded","time":996}],"measures":[],"correlationId":"fb82bbfaf5b5a0","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":96,"dbReadsTimeInMs":9,"dbConnsTimeInMs":17,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
I think it's a really bad idea to remove the independent version number from clients:
There are some packages that has changed all tools to just print the package version, like net-tools, gzip, coreutils. However this is not a good reason alone to change things.
I don't think we (MariaDB developers) have any information of what users things about client/tool specific version numbers. Instead of doing a change based on one single users post, we should at least do some studying of the issue. Why not do some information gathering among our users to really understand what they think?
We could do a questionnaire on the MariaDB foundation pages for example.