WebMonitor icon indicating copy to clipboard operation
WebMonitor copied to clipboard

database is locked

Open imhut opened this issue 3 years ago • 3 comments

OperationalError at /task/task/import/ database is locked Request Method: POST Request URL: http://***********/task/task/import/ Django Version: 2.2.13 Exception Type: OperationalError Exception Value: database is locked Exception Location: /usr/local/python3/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py in execute, line 384 Python Executable: /usr/local/bin/python3 Python Version: 3.7.0 Python Path: ['/opt/WebMonitor', '/usr/local/python3/lib/python37.zip', '/usr/local/python3/lib/python3.7', '/usr/local/python3/lib/python3.7/lib-dynload', '/usr/local/python3/lib/python3.7/site-packages', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf', '/usr/local/python3/lib/python3.7/site-packages/odf'] Server time: 星期五, 21 五月 2021 19:47:54 +0800

经常锁死。。。。导入点数据就锁死了,哈哈。。。

imhut avatar May 21 '21 11:05 imhut

File "/usr/local/python3/lib/python3.7/concurrent/futures/thread.py", line 151, in submit raise RuntimeError('cannot schedule new futures after shutdown') RuntimeError: cannot schedule new futures after shutdown Error submitting job "monitor (trigger: interval[0:05:00], next run at: 2021-05-21 21:46:07 CST)" to executor "default" Traceback (most recent call last): File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/schedulers/base.py", line 979, in _process_jobs executor.submit_job(job, run_times) File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/executors/base.py", line 71, in submit_job self._do_submit_job(job, run_times) File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/executors/pool.py", line 28, in _do_submit_job f = self._pool.submit(run_job, job, job._jobstore_alias, run_times, self._logger.name) File "/usr/local/python3/lib/python3.7/concurrent/futures/thread.py", line 151, in submit raise RuntimeError('cannot schedule new futures after shutdown') RuntimeError: cannot schedule new futures after shutdown Error submitting job "monitor (trigger: interval[0:05:00], next run at: 2021-05-21 21:46:07 CST)" to executor "default" Traceback (most recent call last): File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/schedulers/base.py", line 979, in _process_jobs executor.submit_job(job, run_times) File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/executors/base.py", line 71, in submit_job self._do_submit_job(job, run_times) File "/usr/local/python3/lib/python3.7/site-packages/apscheduler/executors/pool.py", line 28, in _do_submit_job f = self._pool.submit(run_job, job, job._jobstore_alias, run_times, self._logger.name) File "/usr/local/python3/lib/python3.7/concurrent/futures/thread.py", line 151, in submit raise RuntimeError('cannot schedule new futures after shutdown') RuntimeError: cannot schedule new futures after shutdown

imhut avatar May 21 '21 13:05 imhut

WAL的优点与缺点       优点:       1.读和写可以完全地并发执行,不会互相阻塞(但是写之间仍然不能并发)。       2.WAL在大多数情况下,拥有更好的性能(因为无需每次写入时都要写两个文件)。       3.磁盘I/O行为更容易被预测。       缺点:       1.访问数据库的所有程序必须在同一主机上,且支持共享内存技术。       2.每个数据库现在对应3个文件:.db,-wal,-shm。       3.当写入数据达到GB级的时候,数据库性能将下降。       4.3.7.0之前的SQLite无法识别启用了WAL机制的数据库文件。

https://blog.csdn.net/dyllove98/article/details/8841973

引入-wal机制搞定。。。。。

imhut avatar May 23 '21 00:05 imhut

@imhut 非常有用的信息

LogicJake avatar May 23 '21 01:05 LogicJake