我正在运行一个非常旧的Zope应用程序,从2008年,我不得不重新安装在一个新的服务器崩溃后。我已经很难重新安装这些旧的Zope模块,最后它再次工作。但是,我经常会遇到以下错误,这似乎与模块ZMySQLDA有关:
Traceback (innermost last):
Module ZPublisher.Publish, line 249, in publish_module_standard
Module ZPublisher.Publish, line 194, in publish
Module Zope2.App.startup, line 304, in abort
Module transaction._manager, line 92, in abort
Module transaction._transaction, line 503, in abort
Module Shared.DC.ZRDB.TM, line 64, in abort
Module Products.ZMySQLDA.db, line 634, in _abort
Module Products.ZMySQLDA.db, line 520, in _query
OperationalError: (2006, 'MySQL server has gone away')
2019-02-24T11:01:20 WARNING ZMySQLDA query failed: ROLLBACK
2019-02-24T11:01:20 ERROR txn.139701499614976 Failed to abort resource
manager: <Products.ZMySQLDA.db.DB instance at 0x7f0ec950e440>
Traceback (most recent call last):
File
"/***/***/.pyenv/versions/2.7.12/envs/my_zope2/lib/python2.7/site-packages/transaction-1.1.1-py2.7.egg/transaction/_transaction.py", line 503, in abort
rm.abort(self)
File
"/***/***/.pyenv/versions/2.7.12/envs/my_zope2/lib/python2.7/site-packages/Products.ZSQLMethods-2.13.4-py2.7.egg/Shared/DC/ZRDB/TM.py", line 64, in abort
try: self._abort()
File "/***/**/.pyenv/versions/2.7.12/envs/my_zope2/lib/python2.7/site-packages/Products.ZMySQLDA-3.1.1-py2.7.egg/Products/ZMySQLDA/db.py", line 634, in _abort
self._query("ROLLBACK")
File
"/***/***/.pyenv/versions/2.7.12/envs/my_zope2/lib/python2.7/site-packages/Products.ZMySQLDA-3.1.1-py2.7.egg/Products/ZMySQLDA/db.py", line 520, in _query
self.db.query(query)
OperationalError: (2006, 'MySQL server has gone away')
2019-02-24T11:01:21 ERROR ZMySQLDA exception during _begin
Traceback (most recent call last):
File
"/***/***/.pyenv/versions/2.7.12/envs/my_zope2/lib/python2.7/site-packages/Products.ZMySQLDA-3.1.1-py2.7.egg/Products/ZMySQLDA/db.py", line 601, in _begin
self.db.ping()
OperationalError: (2006, 'MySQL server has gone away')
我已经检查了MySQL中的max_包和timeout变量并增加了它们。MySQL日志中没有错误。因此,这个错误一开始似乎与MySQL无关。其他关于stackoverflow的文章中提出的解决方案并不能解决这个问题。