Bug #98225 MySQL Connector/Python depends on dns.resolver module
Submitted: 14 Jan 2020 16:06 Modified: 31 Aug 2021 17:42
Reporter: Dusan Obradovic Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / Python Severity:S1 (Critical)
Version:8.0.19 OS:CentOS
Assigned to: CPU Architecture:Any

[14 Jan 2020 16:06] Dusan Obradovic
Description:
Hi,

Python module mysql.connector depends on dns.resolver module. However, mysql-connector-python-8.0.19-1.el7.x86_64 rpm package does not depend on dns.resolver module.

How to repeat:
Python 2.7.5 (default, Aug  7 2019, 00:51:29) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/mysql/connector/__init__.py", line 41, in <module>
    import dns.resolver
ImportError: No module named dns.resolver
[14 Jan 2020 18:30] Dusan Obradovic
MySQL Connector/Python CHANGELOG should mention dependecy on dns.resolver module.

MySQL RPM repository should require a package that provides dns.resolver module.
[15 Jan 2020 5:11] MySQL Verification Team
Hello Dusan Obradovic,

Thank you for the report and feedback.

regards,
Umesh
[10 Feb 2020 9:25] Nuno Mariz
Hi Lasse,
The dnspython package is used for DNS SRV, but will be removed as a required dependency. For now, as a workaround, please install the dnspython package manually and the error will go away.
[31 Aug 2021 17:42] Philip Olson
Posted by developer:
 
Fixed as of the upcoming MySQL Connector/Python 8.0.20 release, and here's the proposed changelog entry from the documentation team:

Removed the dnspython dependency, and now raise an exception if DNS SRV
functionality is used without it installed.

Thank you for the bug report.