Summary: | QMYSQL driver not loaded | ||||||
---|---|---|---|---|---|---|---|
Product: | Branch p10 | Reporter: | Alexander Makeenkov <amakeenk> | ||||
Component: | libmysqlclient21 | Assignee: | Николай Костригин <nickel> | ||||
Status: | CLOSED FIXED | QA Contact: | qa-p10 <qa-p10> | ||||
Severity: | critical | ||||||
Priority: | P5 | CC: | VadimZelenin, cas, ermaksochi, klark, osmolovskayaaa, rider, shevchenkodyu, zerg | ||||
Version: | не указана | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Attachments: |
|
Description
Alexander Makeenkov
2023-03-06 11:37:20 MSK
Попробуйте с build#316279 (Ответ для Sergey V Turchin на комментарий #1) > Попробуйте с build#316279 $ python2 test.py QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: Не помогло и "available drivers: " стало пустым. (Ответ для Alexander Makeenkov на комментарий #2) > Не помогло и "available drivers: " стало пустым. На чистом Qt4 и до обновления из build#316279 и после список драйверов не изменился. Возможно, дело в PyQt4. (Ответ для Sergey V Turchin на комментарий #3) > На чистом Qt4 и до обновления из build#316279 и после список драйверов не > изменился. Т.е. QMYSQL загружается корректно. Если попытаться использовать несуществующий драйвер, ругается: QSqlDatabase: UNKNOWNSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL3 QMYSQL Есть идеи, как чинить регрессию? Пока приходится откатывать libmysqlclient21. добавил в build#316279 пересборку python-module-PyQt4, авось поможет. (Ответ для Sergey V Turchin на комментарий #6) > добавил в build#316279 пересборку python-module-PyQt4, авось поможет. Не, не помогло. Может, посмотреть, какие изменения были в libmysqlclient21 и откатить что-то из этого? Вдруг там что-то тривиальное? Актуально для libmysqlclient21-8.0.35-alt1.1 Столкнулся с этой проблемой, нашёл в ltrace сообщение "cannot allocate memory in static TLS block" далее нашёл https://bugs.mysql.com/bug.php?id=113029 совет оттуда $ LD_PRELOAD=/usr/lib64/libstdc++.so.6 python2 test.py помогает, программа ругачих сообщений не пишет, db создаёт, «print db.isValid()» печатает «True». Товарищи из ubuntu вроде как решали подобную головоломку в 2020 году - https://bugs.launchpad.net/ubuntu/+source/opencv/+bug/1890170 https://bugs.launchpad.net/ubuntu/+source/mysql-8.0/+bug/1889851 Видимо, mysql надо собирать с -ftls-model=initial-exec Created attachment 15555 [details]
Отменяю Faster TLS model
(Ответ для Sergey V Turchin на комментарий #11) > Видимо, mysql надо собирать с -ftls-model=initial-exec Наоборот, для этой задачи нехорошо собирать mysql с tls-model=initial-exec. патч приложил, у меня test.py заработал. Здравствуйте товарищи, прошу пояснения по этой задаче. Два месяца назад я предложил патч, который, как мне кажется, решает задачу. Отсутствие реакции на этот патч несколько обескураживает. Подскажите, пожалуйста, что пошло не так: - я неправильно подал патч, - этот патч не применим, - этот патч не решает задачу, - этот патч решает задачу, но создаёт новые, - эту задачу правильнее решать изменениями в загрузчике (компиляторе, etc), поэтому решение из этого патча негодно, - все кто способен проверить и как-то высказаться сильно заняты стратегическими задачами, - эта задача совсем не важна, и необходимость даунгрейда libmysqlclient21 заботит только редких дятлов типа меня? (Ответ для Vadim Zelenin на комментарий #14) > Здравствуйте товарищи, > прошу пояснения по этой задаче. > Два месяца назад я предложил патч, который, как мне кажется, решает задачу. > Отсутствие реакции на этот патч несколько обескураживает. > Подскажите, пожалуйста, что пошло не так: > - я неправильно подал патч, > - этот патч не применим, > - этот патч не решает задачу, > - этот патч решает задачу, но создаёт новые, > - эту задачу правильнее решать изменениями в загрузчике (компиляторе, etc), > поэтому решение из этого патча негодно, > - все кто способен проверить и как-то высказаться сильно заняты > стратегическими задачами, > - эта задача совсем не важна, и необходимость даунгрейда libmysqlclient21 > заботит только редких дятлов типа меня? Добрый день, были собраны таски: p10: https://packages.altlinux.org/ru/tasks/344380/ c10f1: https://packages.altlinux.org/ru/tasks/344393/ Сможете у себя проверить? (Ответ для Шевченко Денис на комментарий #15) > Сможете у себя проверить? для p10 - проверил, на первый взгляд всё работает. с c10f1 проверить не могу - не располагаю. Если бы подобый патч и до p9 дошёл, то тоже было бы хорошо - здесь тоже приходится даунгрейдить libmysqlclient21 :( (Ответ для Vadim Zelenin на комментарий #16) > (Ответ для Шевченко Денис на комментарий #15) > > Сможете у себя проверить? > > для p10 - проверил, на первый взгляд всё работает. > с c10f1 проверить не могу - не располагаю. > > Если бы подобый патч и до p9 дошёл, то тоже было бы хорошо - здесь тоже > приходится даунгрейдить libmysqlclient21 :( p9: https://packages.altlinux.org/ru/tasks/345206/ (Ответ для Шевченко Денис на комментарий #17) > p9: https://packages.altlinux.org/ru/tasks/345206/ Работает :) Простите за навязчивость, просто прошёл ещё месяц. Итого - три месяца назад я заслал патч решающий проблему, месяц назад подтвердил что если этот патч применяет товарищ из alt , то он точно так же работает как если бы этот патч применял я сам. Между прочим, эта проблема проявляется не только в python2+PyQt4, но и python3+PyQt5 и python3+PySide2. Версия пакета: libmysqlclient21-8.0.39-alt1 Ошибка актуальна. 359829 EPERM #2 sisyphus MySQL.git=8.0.39-alt1.1 MySQL-8.0.39-alt1.1 -> sisyphus: Tue Oct 15 2024 Andrey Cherepanov <cas@altlinux> 8.0.39-alt1.1 - disable use Faster TLS model (ALT #45499). |