EC-CUBE / EC-CUBE/ec-cube

複数台構成で稼働時に、データ更新後のリダイレクトでデータが反映されない場合がある

Open
#4,985 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
PHP
Stars
788
Forks
719
Avg merge
4d 4h
Merged PRs (30d)
39

Description

## 概要(Overview)

Issue 検討会より

例えば編集画面で保存すると、最終的にリダイレクトが走る場合に発生する。
`index.php` の77行目でレスポンスが返り、78行目で DB に commit される前にアクセスがあるものと思われる。

https://github.com/EC-CUBE/ec-cube/blob/3e492f7975e8a34d6139746037e10b437edb978c/index.php#L75-L78

apache では発生しにくいが、 nginx だと発生する場合がある。

### terminate での commit

terminate で commit しているのは、プラグインなのでカスタマイズ時にも一番最後で commit したいから。
handle で commit した場合にはそちらの処理で正常にロールバックできない可能性あり。

## 期待する内容(Expect) or 要望 (Requirement)

### ロードバランサで解決できるかも?

L7のロードバランサでバランシングすると、同じクライアントの場合は同じサーバに割り当てられ、問題が解決できるかもしれない。

## 再現手順(Procedure)

サーバ複数台構成、L4のロードバランサで稼働している場合に発生。

### 環境 (environment)
+ EC-CUBE: 4.0.x

## 関連情報 (Ref)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.