新しいバージョンのPGroongaが非互換の変更を含んでいない場合はPGroongaのインデックスを再作成せずにアップグレードできます。新しいバージョンが1つでも非互換の変更を含んでいればPGroongaをアップグレードする際にすべてのPGroongaのインデックスを再作成する必要があります。
以下は互換性のリストです。「o」は「互換」、「x」は「非互換」という意味です。
3.2.3 -> 3.2.4: o
3.2.2 -> 3.2.3: o
3.2.1 -> 3.2.2: o
3.2.0 -> 3.2.1: o
3.1.9 -> 3.2.0: o
3.1.8 -> 3.1.9: o
3.1.7 -> 3.1.8: o
3.1.6 -> 3.1.7: o
3.1.5 -> 3.1.6: o
3.1.4 -> 3.1.5: o
3.1.3 -> 3.1.4: o
3.1.2 -> 3.1.3: o
3.1.1 -> 3.1.2: o
3.1.0 -> 3.1.1: o
3.0.9 -> 3.1.0: o
3.0.8 -> 3.0.9: o
3.0.7 -> 3.0.8: o
3.0.6 -> 3.0.7: o
3.0.5 -> 3.0.6: o
3.0.4 -> 3.0.5: o
3.0.3 -> 3.0.4: o
3.0.2 -> 3.0.3: o
3.0.1 -> 3.0.2: o
3.0.0 -> 3.0.1: o
2.4.7 -> 3.0.0: x
2.4.6 -> 2.4.7: o
2.4.5 -> 2.4.6: o
2.4.4 -> 2.4.5: o
2.4.3 -> 2.4.4: o
2.4.2 -> 2.4.3: o
2.4.1 -> 2.4.2: o
2.4.0 -> 2.4.1: o
2.3.9 -> 2.4.0: o
2.3.8 -> 2.3.9: o
2.3.7 -> 2.3.8: o
2.3.6 -> 2.3.7: o
2.3.5 -> 2.3.6: o
2.3.4 -> 2.3.5: o
2.3.3 -> 2.3.4: o
2.3.2 -> 2.3.3: o
2.3.1 -> 2.3.2: o
2.3.0 -> 2.3.1: o
2.2.9 -> 2.3.0: o
2.2.8 -> 2.2.9: o
2.2.7 -> 2.2.8: o
2.2.6 -> 2.2.7: o
2.2.5 -> 2.2.6: o
jsonb
を使ったPGroongaのインデックスがある場合は再作成する必要があります。2.2.4 -> 2.2.5: o
2.2.3 -> 2.2.4: o
2.2.2 -> 2.2.3: o
2.2.1 -> 2.2.2: o
2.2.0 -> 2.2.1: o
2.1.9 -> 2.2.0: o
2.1.8 -> 2.1.9: o
2.1.7 -> 2.1.8: o
2.1.6 -> 2.1.7: o
2.1.4 -> 2.1.6: o
2.1.3 -> 2.1.4: o
2.1.2 -> 2.1.3: o
2.1.1 -> 2.1.2: o
2.1.0 -> 2.1.1: o
2.0.9 -> 2.1.0: o
2.0.8 -> 2.0.9: o
2.0.7 -> 2.0.8: o
2.0.6 -> 2.0.7: o
2.0.5 -> 2.0.6: o
timestamp (without time zone)
を使ったPGroongaのインデックスがある場合は再作成する必要があります。2.0.4 -> 2.0.5: o
2.0.3 -> 2.0.4: o
2.0.2 -> 2.0.3: o
ただし、timestamp (without time zone)
を使ったPGroongaのインデックスがある場合は再作成する必要があります。
ただし、pgroonga_text_array_full_text_search_ops_v2
演算子クラスを使ったPGroongaのインデックスがある場合は再作成する必要があります。
2.0.1 -> 2.0.2: o
2.0.0 -> 2.0.1: o
1.2.3 -> 2.0.0: o
1.2.2 -> 1.2.3: o
1.2.1 -> 1.2.2: o
1.2.0 -> 1.2.1: o
1.1.9 -> 1.2.0: o
1.1.8 -> 1.1.9: o
1.1.7 -> 1.1.8: o
1.1.6 -> 1.1.7: o
1.1.5 -> 1.1.6: o
1.1.4 -> 1.1.5: o
1.1.3 -> 1.1.4: o
1.1.2 -> 1.1.3: o
1.1.1 -> 1.1.2: o
1.1.0 -> 1.1.1: o
1.0.9 -> 1.1.0: o
1.0.8 -> 1.0.9: o
1.0.7 -> 1.0.8: o
1.0.6 -> 1.0.7: o
1.0.5 -> 1.0.6: o
1.0.4 -> 1.0.5: o
1.0.3 -> 1.0.4: o
1.0.2 -> 1.0.3: o
1.0.1 -> 1.0.2: o
1.0 -> 1.0.1: o
0.9 -> 1.0: x
0.8 -> 0.9: o
0.7 -> 0.8: x
アップグレード手順は次の通りです。
すべてのPGroongaを使ったインデックスを削除します。
PGroonga拡張を削除します。
PGroongaのバイナリーをアップグレードします。
PGroonga拡張をインストールします。
すべてのPGroongaのインデックスを作り直します。
すべてのPGroongaのインデックスを削除して、PGroonga拡張も削除するSQLは次の通りです。
DROP EXTENSION pgroonga CASCADE;
PGroongaのバイナリーはパッケージでアップグレードできます。あるいは、新しいPGroongaをビルドして古いPGroongaに上書きすることでもアップグレードできます。
PGroonga拡張をインストールするSQLは次の通りです。
CREATE EXTENSION pgroonga;
PGroongaを使ってインデックスを作るにはCREATE INDEX USING pgroonga
を使ってください。
アップグレード手順は次の通りです。
PGroongaを使っているすべてのデータベースへの接続を切断します。
PGroongaのバイナリーをアップグレードします。
PGroongaを使っているデータベースに接続します。
PGroonga拡張をアップグレードします。
PGroongaのバイナリーはパッケージでアップグレードできます。あるいは、新しいPGroongaをビルドして古いPGroongaに上書きすることでもアップグレードできます。
PGroongaをアップグレードするSQLは次の通りです。
ALTER EXTENSION pgroonga UPDATE;
もしpgroonga_database
モジュールを使っているなら、次のSQLを実行してpgroonga_database
モジュールをアップグレードする必要があります。
ALTER EXTENSION pgroonga_database UPDATE;