Activerecord-Import で大量のデータをバルクインポートしようとすると PostgreSQL が落ちる

Activerecord-Import とは

github.com

結論(どうするか)

インポート時に batch_size オプションを指定してやる。

具体例

User.import!(users, batch_size: 10000)

PostgreSQL が落ちたときのエラーメッセージ

PQconsumeInput() SSL SYSCALL error: EOF detected (ActiveRecord::ConnectionFailed)

参考

https://webcache.googleusercontent.com/search?q=cache:jdX4uXcvCb4J:https://system.blog.uuum.jp/entry/2022/10/11/131234&hl=ja&gl=jpwebcache.googleusercontent.com

.dot ファイル (Graphviz) を PDF に変換する方法

結論

Graphviz (CLI) はインストール済みであるとします。

$ dot -Tpdf /path/to/hoge.dot -o /path/to/fuga.pdf

具体例

Rails ERD では dot で出力が可能なところ、その dot を PDF に変換するために有用です。

「Rails ERD で最初から PDF に出力すると Git で差分が分からない(毎回差分が出る)ので dot 運用したい」というようなケースで有効です*1

公式ドキュメント

*1:dot の差分が分かりやすいかと言われると決してそうではないのですが

GitHub Actions で ubuntu-22.04 で Cypress を Firefox で実行する際は deb 版を入れる

結論

標題のとおりです。

具体的方法

参考ページ

deb版の入れ方については以下のページが参考になります。

chatnoirlibre.com

99mozillateamppa の適用のさせ方

99mozillateamppa の適用のさせ方は、どこかに 99mozillateamppa という名前と内容のファイルを用意しておいて、ステップの中で、

sudo cp 99mozillateamppa /etc/apt/preferences.d

を実行してあげるといいです。

ステップ全体での 99mozillateamppa の適用のさせ方

ステップ全体としては以下のような流れで実行していきます*1

sudo snap remove --purge firefox
sudo apt remove --autoremove firefox
sudo add-apt-repository ppa:mozillateam/ppa
sudo cp path/to/99mozillateamppa /etc/apt/preferences.d

sudo apt update
sudo apt install -y firefox

*1:シェルスクリプトで用意してあげてもいいです

Powered by はてなブログ