[MDEV-8378] Debian: the Lintian complains about many "shlib-calls-exit" in many of the plugins Created: 2015-06-25  Updated: 2018-03-20  Resolved: 2018-03-20

Status: Closed
Project: MariaDB Server
Component/s: Server
Affects Version/s: 10.0
Fix Version/s: 10.1.32

Type: Bug Priority: Minor
Reporter: Sergey Vojtovich Assignee: Sergey Vojtovich
Resolution: Fixed Votes: 0
Labels: foundation

Issue Links:
PartOf
includes MDEV-9277 Debian: the Lintian complains about "... Closed
includes MDEV-9278 Debian: the Lintian complains about "... Closed
includes MDEV-9279 Debian: the Lintian complains about "... Closed
includes MDEV-9280 Debian: the Lintian complains about "... Closed
includes MDEV-9281 Debian: the Lintian complains about "... Closed
includes MDEV-9282 Debian: the Lintian complains about "... Closed
includes MDEV-9283 Debian: the Lintian complains about "... Closed
includes MDEV-14265 RPMLint warning: shared-lib-calls-exit Closed
Sprint: 10.0.23, 10.0.25

 Description   

See http://labs.seravo.fi/~otto/mariadb-repo/mariadb-10.0-sid-amd64/lintian-0f7cb30.log and https://lintian.debian.org/tags/shlib-calls-exit.html.

The following shared libraries call exit:

  • libdaemon_example.so - there seem to be no reason for exit(), use DBUG_RETURN(1) instead. (fixed)
  • libmysqld.so.18 - to be analyzed
  • ha_oqgraph.so - there's no exit() in oqgraph sources, most probably called by boost (grep headers for exit()) (fixed)
  • ha_connect.so - either replace with abort() or keep exit(), or reassign to Oliver to handle this properly. (fixed)
  • ha_innodb.so - lots of exits, either replace with abort() or keep exit(), or reassign to Jan to handle this properly.
  • ha_mroonga.so - lots of exits, either replace with abort() or keep exit(), or reassign to Kentoku to handle this properly.
  • ha_spider.so - either replace with abort() or keep exit(), or reassign to Kentoku to handle this properly. (fixed)
  • handlersocket.so - report upstream? (fixed)

Lintian suggests:

In the case of an error, the library should instead return an appropriate error code to the calling program which can then determine how to handle the error, including performing any required clean-up.

Note: to find out if shared library has exit calls use something like nm|grep exit



 Comments   
Comment by Sergey Vojtovich [ 2015-06-29 ]

The most reasonable plan is probably:

  • report upstream bugs
  • fix libdaemon_example.so, libmysqld.so.18
  • assign ha_innodb.so to Jan for analysis
  • analyze how exactly ha_oqgraph.so calls exit() and either report upstream or keep it
Comment by Sergey Vojtovich [ 2015-12-14 ]

serg, please review fix prototype. It doesn't seem to be easily doable to fix this for the client library and embedded, please suggest what should we do about it.

Comment by Sergey Vojtovich [ 2018-03-20 ]

Everything but TokuDB and Mroonga should be fixed so far. TokuDB and Mroonga to be fixed within MDEV-9280 and MDEV-9277.

Generated at Thu Feb 08 07:26:42 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.