質問 > その他 > 1サーバーに複数環境を構築した場合に、他環境に影響が出る可能性について |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
asana |
投稿日時: 2020/12/3 13:27
対応状況: −−−
|
半人前 登録日: 2018/7/6 居住地: 投稿: 11 |
1サーバーに複数環境を構築した場合に、他環境に影響が出る可能性について ▼テンプレート
[EC-CUBE] EC-CUBE4.0.4 [レンタルサーバ] AWS 1つのサーバに、本番環境とテスト環境を構築しています。 各環境はVirtualHostで別ディレクトリに分けています。 この状態で、テスト環境にDB更新を伴うカスタマイズをリリースしたところ、 本番環境側で、以下のエラーが発生しました(パスなどはダミーで書き換えています)。 ※コード貼り付けだと1行になってしまうので、引用にしてます。 テスト環境には「new_property」を追加するカスタマイズを入れています。 引用: [2020-12-03 12:19:01] admin.ERROR [e681be2a] [94f871c] [1] [Eccube\Log\Logger:log:64] - システムエラーが発生しました。 ["Property \"new_property\" does not exist in class \"Customize\\Entity\\NewEntity\".","/var/www/vhosts/example.com/vendor/symfony/validator/Mapping/PropertyMetadata.php",84,"#0 /var/www/vhosts/example.com/vendor/symfony/validator/Mapping/MemberMetadata.php(168): Symfony\\Component\\Validator\\Mapping\\PropertyMetadata->newReflectionMember(false)\n#1 /var/www/vhosts/example.com/vendor/symfony/validator/Mapping/PropertyMetadata.php(51): Symfony\\Component\\Validator\\Mapping\\MemberMetadata->getReflectionMember(Object(Customize\\Entity\\NewEntity))\n#2 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(545): Symfony\\Component\\Validator\\Mapping\\PropertyMetadata->getPropertyValue(Object(Customize\\Entity\\NewEntity))\n#3 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(332): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validateClassNode(Object(Customize\\Entity\\NewEntity), '0000000051485b2...', Object(Symfony\\Component\\Validator\\Mapping\\ClassMetadata), 'data', Array, NULL, 1, Object(Symfony\\Component\\Validator\\Context\\ExecutionContext))\n#4 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(143): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validateObject(Object(Customize\\Entity\\NewEntity), 'data', Array, 1, Object(Symfony\\Component\\Validator\\Context\\ExecutionContext))\n#5 /var/www/vhosts/example.com/vendor/symfony/form/Extension/Validator/Constraints/FormValidator.php(104): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validate(Object(Customize\\Entity\\NewEntity), NULL, Array)\n#6 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(828): Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\FormValidator->validate(Object(Symfony\\Component\\Form\\Form), Object(Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\Form))\n#7 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(521): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validateInGroup(Object(Symfony\\Component\\Form\\Form), '0000000051485b9...', Object(Symfony\\Component\\Validator\\Mapping\\ClassMetadata), 'Default', Object(Symfony\\Component\\Validator\\Context\\ExecutionContext))\n#8 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(332): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validateClassNode(Object(Symfony\\Component\\Form\\Form), '0000000051485b9...', Object(Symfony\\Component\\Validator\\Mapping\\ClassMetadata), '', Array, NULL, 1, Object(Symfony\\Component\\Validator\\Context\\ExecutionContext))\n#9 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveContextualValidator.php(143): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validateObject(Object(Symfony\\Component\\Form\\Form), '', Array, 1, Object(Symfony\\Component\\Validator\\Context\\ExecutionContext))\n#10 /var/www/vhosts/example.com/vendor/symfony/validator/Validator/RecursiveValidator.php(100): Symfony\\Component\\Validator\\Validator\\RecursiveContextualValidator->validate(Object(Symfony\\Component\\Form\\Form), NULL, Array)\n#11 /var/www/vhosts/example.com/vendor/symfony/form/Extension/Validator/EventListener/ValidationListener.php(55): Symfony\\Component\\Validator\\Validator\\RecursiveValidator->validate(Object(Symfony\\Component\\Form\\Form))\n#12 /var/www/vhosts/example.com/vendor/symfony/event-dispatcher/EventDispatcher.php(214): Symfony\\Component\\Form\\Extension\\Validator\\EventListener\\ValidationListener->validateForm(Object(Symfony\\Component\\Form\\FormEvent), 'form.post_bind', Object(Symfony\\Component\\EventDispatcher\\EventDispatcher))\n#13 /var/www/vhosts/example.com/vendor/symfony/event-dispatcher/EventDispatcher.php(44): Symfony\\Component\\EventDispatcher\\EventDispatcher->doDispatch(Array, 'form.post_bind', Object(Symfony\\Component\\Form\\FormEvent))\n#14 /var/www/vhosts/example.com/vendor/symfony/event-dispatcher/ImmutableEventDispatcher.php(33): Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch('form.post_bind', Object(Symfony\\Component\\Form\\FormEvent))\n#15 /var/www/vhosts/example.com/vendor/symfony/form/Form.php(665): Symfony\\Component\\EventDispatcher\\ImmutableEventDispatcher->dispatch('form.post_bind', Object(Symfony\\Component\\Form\\FormEvent))\n#16 /var/www/vhosts/example.com/vendor/symfony/form/Extension/HttpFoundation/HttpFoundationRequestHandler.php(109): Symfony\\Component\\Form\\Form->submit(Array, true)\n#17 /var/www/vhosts/example.com/vendor/symfony/form/Form.php(487): Symfony\\Component\\Form\\Extension\\HttpFoundation\\HttpFoundationRequestHandler->handleRequest(Object(Symfony\\Component\\Form\\Form), Object(Symfony\\Component\\HttpFoundation\\Request))\n#18 /var/www/vhosts/example.com/app/Customize/Controller/Admin/Product/NewEntityController.php(97): Symfony\\Component\\Form\\Form->handleRequest(Object(Symfony\\Component\\HttpFoundation\\Request))\n#19 /var/www/vhosts/example.com/vendor/symfony/http-kernel/HttpKernel.php(151): Customize\\Controller\\Admin\\Product\\NewEntityController->edit(Object(Symfony\\Component\\HttpFoundation\\Request), '56')\n#20 /var/www/vhosts/example.com/vendor/symfony/http-kernel/HttpKernel.php(68): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1)\n#21 /var/www/vhosts/example.com/vendor/symfony/http-kernel/Kernel.php(200): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)\n#22 /var/www/vhosts/example.com/index.php(76): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))\n#23 {main}"] [POST, /xxxxxxxxxx/product/newentity/56/edit, 111.111.111.111, https://example.com/xxxxxxxxxx/product/newentity/56/edit, Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36] 管理画面からキャッシュクリアを実施することでエラーはなくなりましたが、エラー発生の原因が分かりません。 改めて各環境のソース、DBを確認しましたが、本番環境には何も変更は行っていませんでした。 DB更新はコマンドで実施していて、使ったコマンドは下記の通りです。
上記の doctrine:schema:update を実行した際、各環境内ではなく、/tmp ディレクトリにproxyが生成されます。 外部キーの整合性エラーが出たため、DBを修正しつつ何度か上記コマンドを打ったので、 /tmp 配下には proxyフォルダが複数存在している状況です。 例:
別環境に影響を与えたということは、上記が本番環境からも参照された可能性があるのではないか、と考えていますが 何かご存知の方がいらっしゃいましたら、ご教授ください。 また、proxy生成先のパスを指定する方法がありましたらご教授ください。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |