Using extension function in a VIEW causes exception to be printed
还没有人认领这个 Issue。
评估
调研方向
首先检查 litecli/completion_refresher.py 和 litecli/sqlexecute.py,尤其是后台刷新以及 traceback 中提到的 table_columns() 查询。使用一个调用连接不可用的扩展函数的 SQLite 视图进行复现,或者打开一个包含此类视图的数据库。完成标准是:CLI 在补全刷新期间不再打印异常,同时该视图仍可使用。
由索引模型根据 Issue 内容生成。
描述
With current git:
.load ./crypto -- included in popular sqlean extension for sqlite
CREATE TABLE products (
product_id INTEGER PRIMARY KEY,
product_name TEXT NOT NULL
);
INSERT INTO products (product_name) VALUES ('Wireless Mouse');
CREATE VIEW v_hashed_product_id AS
SELECT
hex(crypto_blake3(product_id))
FROM products;
Running this in the REPL prints out this exception:
File "site-packages/litecli/completion_refresher.py", line 85, in _bg_refresh
refresher(completer, executor)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "site-packages/litecli/completion_refresher.py", line 128, in refresh_tables
table_cols = list(executor.table_columns())
File "site-packages/litecli/sqlexecute.py", line 197, in table_columns
cur.execute(self.table_columns_query)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
sqlite3.OperationalError: no such function: crypto_blake3
but the view is created and works as expected.
Furthermore, existing and then opening the db in litecli also prints this exception:
$ litecli ./my.db
File "site-packages/litecli/completion_refresher.py", line 85, in _bg_refresh
refresher(completer, executor)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "site-packages/litecli/completion_refresher.py", line 128, in refresh_tables
table_cols = list(executor.table_columns())
File "site-packages/litecli/sqlexecute.py", line 197, in table_columns
cur.execute(self.table_columns_query)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
sqlite3.OperationalError: no such function: crypto_blake3
my.db>
Here's a link to sqlean binaries for testing.
- 主要语言
- Python
- 星标
- 3.3k
- 派生
- 95
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
dbcli/litecli 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 2/5 1-3 小时 新手友好度 84/100
-
难度 2/5 1-3 小时 新手友好度 45/100
-
难度 3/5 1-2 天 新手友好度 45/100
-
难度 4/5 3-5 天 新手友好度 35/100
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 75/100
anthropics/skills#1811 · 1 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
speaches-ai/speaches#678 ·
-
bug
难度 2/5 1-3 小时 新手友好度 75/100
datalayer/mcp-compose#42 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
conda-forge/spacy-feedstock#177 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
UKGovernmentBEIS/inspect_evals#2523 ·