gpt4 book ai didi

python - "Session/line number was not unique in database."错误与Python代码的依赖关系

转载 作者:太空狗 更新时间:2023-10-30 00:12:48 25 4
gpt4 key购买 nike

有一段时间我收到以下错误(警告?):

ERROR! Session/line number was not unique in database. History logging moved to new session

使用 Jupyter notebook 时(<XXXX> 是一个数字,例如 9149)。由于 Spyder ( Spyder's Warning: "Session/line number not unique in database" ) 报告了同样的错误,我的猜测是 IPython 内核日志记录存在一些问题。

问题是:运行我的代码和错误之间可能有任何关系吗?

错误可能是由我的代码引起的吗?我触摸 IPython API 如下:

import IPython 

def beep():
Python.display.display(IPython.display.Audio(url="http://www.w3schools.com/html/horse.ogg", autoplay=True))

def play_sound(self, etype, value, tb, tb_offset=None):
self.showtraceback((etype, value, tb), tb_offset=tb_offset)
beep()

get_ipython().set_custom_exc((Exception,), play_sound)

我使用 beep()在我的代码中运行。我还处理导致 MemoryError 的大数据异常(exception)情况。

更重要的是,错误是否会影响我的代码行为(假设我不尝试访问日志)?

[编辑]看来这个问题不同于Spyder's Warning: "Session/line number not unique in database"因为我可以用 Jupyter Notebook 重现它,但不能用 Spyder。

最佳答案

这只是部分答案 - 赏金仍然符合条件。

错误确实取决于我的代码 - 至少在存在 SyntaxError 时。

我用以下三个单元复制了它。

In [31]: print(1)
1

In [31]: print 2
File "<ipython-input-32-9d8034018fb9>", line 1
print 2
^
SyntaxError: Missing parentheses in call to 'print'

In [32]: print(2)
2
ERROR! Session/line number was not unique in database. History logging moved to new session 7

如您所见,第二个单元格中的行计数器没有增加(存在语法问题)。

受@zwer评论的启发,查询了$HOME/.ipython/profile_default/history.sqlite数据库:

sqlite> select session, line, source from history where line > 30;
6|31|print(1)
6|32|print 2
7|32|print(2)

很明显,第二个单元格的行计数器在数据库中增加了,但在笔记本中没有增加。

因此,当第三个单元格成功执行时,notebook 试图用同一行存储其源代码,这违反了 PRIMARY KEY 约束:

sqlite> .schema history
CREATE TABLE history
(session integer, line integer, source text, source_raw text,
PRIMARY KEY (session, line));

因此,a failsafe已触发,发出警告并创建新 session 。

我想这个问题不会影响我的代码行为,但是我错过了此类声明的可靠来源。

关于python - "Session/line number was not unique in database."错误与Python代码的依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50369957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com