Look into `WITHOUT ROWID` again
- 主要言語
- Rust
- スター
- 104
- フォーク
- 138
- 平均マージ
- 1日 13時間
- マージ済み PR(30日)
- 56
説明
Quite a few of our tables use `WITHOUT ROWID`. While this can be an improvement in many situations, it can also lead to bloat if not used with care.
As a short summary, for tables with non-integer PK, an integer rowid is automatically created. `WITHOUT ROWID` prevents this from being done.
This _can_ be expensive, especially if there is no covering index (an index which includes all columns). What occurs is that indices and FK now contain a copy of the PK -- which may or may not be large. If the table has a `rowid`, then the `rowid` is used instead -- which is an integer and therefore smaller and faster to compare and evaluate.
We should look into our `WITHOUT ROWID` usage again, and confirm that its being used appropriately.
This is probably not urgent.
コントリビューションガイド
評価
この issue はまだ評価されていません。