Ipython: توفير معلومات حول كيفية معالجة "sqlite3.OperationalError: محاولة كتابة قاعدة بيانات للقراءة فقط" في رسالة الاستثناء

تم إنشاؤها على ١ يناير ٢٠١٤  ·  4تعليقات  ·  مصدر: ipython/ipython

أواجه خطأ sqlite3.OperationalError: محاولة كتابة قاعدة بيانات للقراءة فقط
(تتبع المكدس مرفق). نظرًا لأن هذا يبدو خطأً متعلقًا باتصال قاعدة البيانات ، فقد تكون رسالة الخطأ أكثر دقة (وهو طلب التحسين الخاص بي) ، مع تحديد معلمات الاتصال الفاشلة (على الأقل المضيف والمنفذ). ليس من الواضح ما يتوقعه البرنامج ما يعتقد أنه يمكن أن يكون.

تتبع المكدس

خطأ في sys.excepthook:
Traceback (آخر مكالمة أخيرة):
ملف "/mnt/DATA/sources/ipython/IPython/core/application.py" ، السطر 175 ، في excepthook
إرجاع self.crash_handler (etype ، EVALUE ، tb)
ملف "/mnt/DATA/sources/ipython/IPython/core/crashhandler.py" ، السطر 158 ، قيد الاستدعاء
traceback = TBhandler.text (etype ، Evalue ، etb ، السياق = 31)
ملف "/mnt/DATA/sources/ipython/IPython/core/ultratb.py" ، السطر 412 ، في النص
tb_offset ، سياق)
ملف "/mnt/DATA/sources/ipython/IPython/core/ultratb.py" ، السطر 963 ، في Structured_traceback
ipinst = ipapi.get ()
ملف "/mnt/DATA/sources/ipython/IPython/core/ipapi.py" ، السطر 28 ، في get
إرجاع InteractiveShell.instance ()
ملف "/mnt/DATA/sources/ipython/IPython/config/configurable.py" ، السطر 318 ، على سبيل المثال
inst = cls (_args، _kwargs)ملف "/mnt/DATA/sources/ipython/IPython/core/interactiveshell.py" ، السطر 436 ، في التهيئةself.init_history ()ملف "/mnt/DATA/sources/ipython/IPython/core/interactiveshell.py" ، السطر 1489 ، في init_historyself.history_manager = HistoryManager (shell = self ، config = self.config)ملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 409 ، في التهيئةالجلسة_الجديدة الذاتية ()ملف ""، السطر 2 ، في الجلسة الجديدةملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 60 ، في needs_sqliteالعودة f (_a، _ كيلوواط)
ملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 427 ، في new_session
NULL، "") "" "، (datetime.datetime.now ()،))
sqlite3.OperationalError: محاولة كتابة قاعدة بيانات للقراءة فقط

الاستثناء الأصلي كان:
Traceback (آخر مكالمة أخيرة):
ملف "/ usr / bin / ipython" ، السطر 7 ، بتنسيق
launch_new_instance ()
ملف "/mnt/DATA/sources/ipython/IPython/frontend/terminal/ipapp.py" ، السطر 388 ، في launch_new_instance
app.initialize ()
ملف ""، السطر 2 ، في التهيئة
ملف "/mnt/DATA/sources/ipython/IPython/config/application.py" ، السطر 84 ، في catch_config_error
طريقة الإرجاع (التطبيق ، _args ، _kwargs)ملف "/mnt/DATA/sources/ipython/IPython/frontend/terminal/ipapp.py" ، السطر 324 ، قيد التهيئةself.init_shell ()ملف "/mnt/DATA/sources/ipython/IPython/frontend/terminal/ipapp.py" ، السطر 340 ، في init_shellipython_dir = self.ipython_dir)ملف "/mnt/DATA/sources/ipython/IPython/config/configurable.py" ، السطر 318 ، على سبيل المثالinst = cls (_args، * _kwargs)ملف "/mnt/DATA/sources/ipython/IPython/frontend/terminal/interactiveshell.py" ، السطر 360 ، في التهيئةuser_module = user_module ، custom_exceptions = custom_exceptionsملف "/mnt/DATA/sources/ipython/IPython/core/interactiveshell.py" ، السطر 436 ، في التهيئةself.init_history ()ملف "/mnt/DATA/sources/ipython/IPython/core/interactiveshell.py" ، السطر 1489 ، في init_historyself.history_manager = HistoryManager (shell = self ، config = self.config)ملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 409 ، في التهيئةالجلسة_الجديدة الذاتية ()ملف ""، السطر 2 ، في الجلسة الجديدةملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 60 ، في needs_sqliteالعودة f (_a، _ كيلوواط)
ملف "/mnt/DATA/sources/ipython/IPython/core/history.py" ، السطر 427 ، في new_session
NULL، "") "" "، (datetime.datetime.now ()،))
sqlite3.OperationalError: محاولة كتابة قاعدة بيانات للقراءة فقط

إخراج python -c "استيراد IPython ؛ طباعة (IPython.sys_info ())":

{"الالتزام_الصفراء": "858d539" ،
"الالتزام_المصدر": "التثبيت" ،
"التشفير_الافتراضي": "UTF-8"،
'ipython_path': '/usr/local/lib/python2.7/dist-packages/IPython'،
"ipython_version": "0.13.2" ،
'os_name': 'posix'،
"النظام الأساسي": "Linux-3.11.0-14-generic-x86_64-with-Ubuntu-13.10-saucy" ،
'sys_executable': '/ usr / bin / python' ،
'sys_platform': 'linux2'،
'sys_version': '2.7.5+ (افتراضي ، 19 أيلول (سبتمبر) 2013 ، 13:48:49) n [GCC 4.8.1]'}

سيكون من الجيد أن يكون لديك إمكانية إرفاق ملفات بتقرير المشكلة وأن تكون قادرًا على البحث في المشكلات التي تم الالتزام بها بالفعل (!!).

التعليق الأكثر فائدة

حاولت ذلك وأنه يعمل. شكرا لك takluyver ،richtekp.

~/.ipython/profile_default/history.sqlite
/Users/ChessTastic/.ipython/profile_default/history.sqlite.
➜  profile_default  sudo chmod a+w history.sqlite
Password:

ال 4 كومينتر

يستخدم sqlite ملفًا وليس خادم قاعدة بيانات. بشكل افتراضي ، سيتم توفير ~/.ipython/profile_default/history.sqlite . هل هذا الملف موجود وهل هو قابل للكتابة؟

شكرا للتلميح! الملف يحتوي على أذونات خاطئة (غير قابلة للكتابة). أقترح تحسين رسالة الخطأ / الإخراج.

سيكون من الجيد أن يكون لديك إمكانية إرفاق ملفات بتقرير المشكلة

من الشائع استخدام الجوهر .

وأن تكون قادرًا على البحث في القضايا التي تم ارتكابها بالفعل (!!).

يقع حقل البحث في أعلى الصفحة.

حاولت ذلك وأنه يعمل. شكرا لك takluyver ،richtekp.

~/.ipython/profile_default/history.sqlite
/Users/ChessTastic/.ipython/profile_default/history.sqlite.
➜  profile_default  sudo chmod a+w history.sqlite
Password:
هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات