0
postgresqlシーケンスを使用して、シーケンスからnextvalを取得しようとしました。私はキャッシュ1を使用し、開始値は1です。しかし、私は例外的にマシンの電源を切って再起動した後、select nextval( 'patient_seq')が30または33にジャンプしたことがわかりました。そのシーケンスにキャッシュ1を使用しました。 なぜ誰も知っていますか? postgresqでのシーケンスの仕組みは?postgresql sequence jump 30または33、キャッシュが1の場合の数字
ありがとう、Phill。私はこの問題の根本原因を発見しました。 postgresは設定されたcache_valueより32をあらかじめ割り当てていたので、そのソースにはハードコードされています。電源を切ると、あらかじめ割り当てられた数値が失われ、別の32 + cache_value数が再割り当てされます。 – liya