小编F.M*_*.M.的帖子

iruby 在 jupyter 笔记本中无法使用 bash 命令

我在我的 jupyter 笔记本中使用 iruby,内核按预期工作并接受所有类型的 ruby​​ 语法

不幸的是 %%bash 命令会导致错误。因此,在我的笔记本中没有可用的控制台命令。如果我切换回基本的 python 内核,%%bash 命令将按预期工作。

我怎样才能让 bash 命令在 iruby 内核中工作?是否有什么我忘记安装或设置的?

我在 Ubuntu 20.04 中使用以下设置:

我还使用 rvm 来管理我的 ruby​​ 版本。

基本设置

sudo apt install python3-pip python3-dev
sudo -H pip3 install --upgrade pip
sudo -H pip3 install virtualenv
pip install jupyter
Run Code Online (Sandbox Code Playgroud)

安装 iruby

gem install ffi-rzmq
gem install iruby --pre
iruby register --force
Run Code Online (Sandbox Code Playgroud)

设置并启动

rvm use ruby-2.7.2
mkdir ~/ruby_notebook

virtualenv ~/ruby_notebook/ruby_env
source ~/ruby_notebook/ruby_env/bin/activate

jupyter notebook --notebook-dir ~/ruby_notebook
Run Code Online (Sandbox Code Playgroud)

但出现以下错误: 在此输入图像描述

有什么想法可以解决这个问题以便我可以使用 bash 命令吗?

========更新和解决方案======

感谢 Engineersmnky 我找到了解决方案: …

ruby ruby-on-rails jupyter iruby jupyter-notebook

5
推荐指数
1
解决办法
273
查看次数

PostgREST / PostgreSQL 无法放大字符串缓冲区消息

我在运行的 postgREST API 上遇到了无法放大字符串缓冲区消息。我猜想有些表太大而无法成功使用 API。

\n\n

我正在使用来自https://hub.docker.com/r/postgrest/postgrest的 docker postgrest/postgrest 容器, 版本为 PostgREST 5.1.0。

\n\n

一切都按预期工作,但如果表大小变得太大,我会收到以下错误消息。

\n\n
hint    null\ndetails "Cannot enlarge string buffer containing 1073741822 bytes by 1 more bytes."\ncode    "54000"\nmessage "out of memory"\n
Run Code Online (Sandbox Code Playgroud)\n\n

我无法确定阈值何时工作或不工作。\n是否有可能扩大某些配置文件中的字符串缓冲区,或者这是硬编码的?

\n\n

使用 API 的表大小是否有任何限制?到目前为止我无法\xe2\x80\x99在文档中找到任何信息。

\n\n

===========更新

\n\n

postgres 日志给了我以下 SQL 查询:

\n\n
WITH pg_source AS (\n  SELECT "public"."n_osm_bawue_line".* \n  FROM "public"."n_osm_bawue_line"\n) \nSELECT null AS total_result_set, \n       pg_catalog.count(_postgrest_t) AS page_total, \n       array[]::text[] AS header, \n       coalesce(json_agg(_postgrest_t), \'[]\')::character varying AS body \nFROM ( \n  SELECT * …
Run Code Online (Sandbox Code Playgroud)

postgresql postgrest

3
推荐指数
1
解决办法
1万
查看次数