ehForwarderBot / efb-telegram-master

EFB Telegram Master Channel, a channel for EH Forwarder Bot.
GNU Affero General Public License v3.0
223 stars 78 forks source link

[BUG] peewee.OperationalError: database is locked #121

Closed FlechazoPh closed 2 years ago

FlechazoPh commented 2 years ago

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. 启动服务,扫码后有报错 Expected behavior
    A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Version information (please complete the following information):

报错日志如下:

2022-05-07 23:59:29,782 [ERROR]: efb_telegram_master.slave_message (slave_message.send_message; slave_message.py:122) Error occurred while processing message from slave channel. Message: <Message, <ETMChatMember: 大米-app开发-跨境电商 (一袋大米) (1aaf2c6e) @ <ETMGroupChat: 成都自由职业交流群 (431783c4) @ 💬WeChat Slave (blueset.wechat)>>@<ETMGroupChat: 成都自由职业交流群 (431783c4) @ 💬WeChat Slave (blueset.wechat)> [Text]: 都可以伪造; Attributes: None; Delivering to: <efb_telegram_master.TelegramChannel object at 0x7fa661894198>; Edited: False; System message: False; Substitutions: None; Target messages: None; UID: [["7513813110356485025"]]; Reactions: {}; File: None (None @ None), None; Vendor: {}> OperationalError('database is locked',) Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/peewee.py", line 3177, in execute_sql cursor.execute(sql, params or ()) sqlite3.OperationalError: database is locked

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/efb_telegram_master/slave_message.py", line 119, in send_message self.dispatch_message(msg, msg_template, old_msg_id, tg_dest, silent) File "/usr/local/lib/python3.6/site-packages/efb_telegram_master/slave_message.py", line 224, in dispatch_message self.db.add_or_update_message_log(etm_msg, tg_msg, old_msg_id) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 412, in inner return fn(args, kwargs) File "/usr/local/lib/python3.6/site-packages/efb_telegram_master/db.py", line 448, in add_or_update_message_log result = save() File "/usr/local/lib/python3.6/site-packages/peewee.py", line 6640, in save pk = self.insert(field_dict).execute() File "/usr/local/lib/python3.6/site-packages/peewee.py", line 1918, in inner return method(self, database, args, *kwargs) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 1989, in execute return self._execute(database) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 2778, in _execute return super(Insert, self)._execute(database) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 2496, in _execute cursor = database.execute(self) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 3190, in execute return self.execute_sql(sql, params, commit=commit) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 3184, in execute_sql self.commit() File "/usr/local/lib/python3.6/site-packages/peewee.py", line 2950, in exit reraise(new_type, new_type(exc_value, exc_args), traceback) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 191, in reraise raise value.with_traceback(tb) File "/usr/local/lib/python3.6/site-packages/peewee.py", line 3177, in execute_sql cursor.execute(sql, params or ()) peewee.OperationalError: database is locked

blueset commented 2 years ago

Please indicate the specific version used.

FlechazoPh commented 2 years ago

Please indicate the specific version used.

It's the newest version I installed

blueset commented 2 years ago

Please indicate the specific version used.

FlechazoPh commented 2 years ago

[root@oracle-centos-2 ~]# /usr/local/bin/ehforwarderbot -V EH Forwarder Bot Version: 2.1.1 Python version: 3.6.8 (default, Nov 16 2020, 16:55:22) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] Running on profile "default".

Master channel: Telegram Master (blueset.telegram) 2.2.4 # Default instance

Slave channel: WeChat Slave (blueset.wechat) 2.0.7 # Default instance

Middlewares: No middleware is enabled.

mgcyung commented 2 years ago

The same problem with ehforwarderbot-2.1.1, efb-telegram-master-2.2.4, and efb-wechat-slave-2.0.7

blueset commented 2 years ago

Please try upgrade to EFB Telegram Master Channel 2.3.0.