2020年、ライトブーストの今

OSSポエムである。

2日前に、dm-writeboostのDebianでのメンテナであるドミトリスミルノフから、 「5.7でコンパイル通らなくなった」と言われるとともに、 彼のリポジトリに対するパッチが送られてきたので、さきほどそれをマージして あとは定型的なリリース作業をしてバージョン2.2.11をリリースした。 実に2年ぶりのリリースとなる。

v2.2.11

自明かつ簡単ではあるが、わざわざパッチまで作ってくれたのは パオロピサーティ という人だと思う。ありがたいことだ。 故郷がコロナで大ダメージを受けていて、絶望的な心境だろうに。

ライトブーストの開発が本当に熱かったのは 2017年の頭くらいまでで、 最後の仕事はリードキャッシングの実装や、 アーキテクチャの改善だった。 支笏湖を眺めて「おれの人生は終わりだ」と絶望しながら、設計を考えていた。 リードキャッシングは実用性について懐疑的だったのだが、 結果として作って良かったと思う。 作る過程で設計がクリーンになったというのもあるし、 リードキャッシングだけ使ってくれるという人もいるくらいだから。 リードキャッシュは特別なことをせず、リードしたデータをライトのように扱って、 ライトのパスに流してログ構造化するという仕組みで実装した。

おれとしてはもうやることはないという気分なので、 それからはコンパイルが通らなくなったという各所からの尻叩きによって 大体半年に一度起き上がるということを繰り返していた。 前回のリリースからは何度かユーザからのフィードバックや 議論らしきものを繰り返してはいたものの、 修正依頼は飛んできていなかったので、 もう完全に見限られてしまったのだろうと思っていたが、 なんと前回の4.19から今の5.7に至るまで、ビルドが壊れていなかったということである。

これには驚いた。 ブロックやデバイスマッパーは、基本的な部分はかなり安定したサブシステムで、 わけわからんドラスティックな変更はもうなくなってるから、比較的安心して寝られる。 もし変更されるなら、新しい引数が追加されてビルドが壊れたり、 そういう何かしらの信号が上がるだろう、と楽観的に考えている。

何にせよ、ビルドが壊れたということで起こしてくれる人がいることはありがたいことだ。 ビルドが壊れるとすぐに起こしてくれる人がいるから、すぐに修正出来る。 これが一年経ってから報告されても、正しい修正は出来ないと思うし、 ディストリから落ちてしまっていたら修正する気力もわかないと思う。

おれ個人では、自ら新しいカーネルを落としてビルドを試すことすらしないし、 なんなら去年の秋にゲーミングPCの電源が壊れてしまい、開発マシンの電源がわりと良いやつだったから ゲーミングPCに移植した結果、開発マシンは完全に置物になっていた。 一切通電していないのできっと、SSDに入ってるOSもデータが壊れているんじゃないかと思うが、 もはやそれを確かめるまでもなく、昨日、復活を諦めた。 なぜ諦めたかというと、 もうわざわざ開発マシンを持ちたいと思うほどやることはないと思うからだ。 ユーザランドのプログラムであれば、Dockerを使うのがふつうだ。 それに、時間があるなら開発するよりむしろ競プロをした方が、オポに繋がると思う。 ということで、 ライトブーストのメンテについてはもう、VM上で出来るだけをやり、 それ以上のことはしないことにした。 電源も1万円くらいはするし、東京の家賃は決して安くないから、 こんなものでも処分出来れば、月に千円くらいは得になる。 そんな金があるならおれはネットフリックスを見たい。

とりあえず5.8でもまたビルドが壊れることになったから 次の2.2.12のリリースは決定しているのだが、 その次はいつになるだろう。

当時のおれは、そのうちSSDが超大容量化して、 SSDキャッシュなんて技術はすぐにオワコンになると思っていたのだが、 実際は全くそうはならず、むしろHDDは技術的に枯れているためプライマリとして有力で、 SSDはそのキャッシュとして使うのが良いくらいなんやという人すらいる。 リードキャッシュの必要性も技術的な潮流もすべて読み間違えたのに続いている 謎のソフトウェア。それがライトブーストだ。

次はRustでストレージを作りたいなぁ。


このエントリーをはてなブックマークに追加

See also