【解決】ページタイプのコピーまたは手動作成後「権限」設定でシステムエラー

2018年12月27日 at 10:12

※本件、現在自然復旧しております。
 発生原因、復旧要因とも不明ですが、お騒がせいたしました。


以下の症状が発生、こちらへ記述をしながら動かしてみたところ
エラー発症状況が推察できましたので、<進捗>として記述しています。
その認識で良いかどうかお知恵をいただければと存じます。


【症状】
 ・ページタイプの追加作成でデフォルト"ページ"をコピーするとエラー
 ・手動でページタイプを作成。「権限」ボタンを押下するとエラー

   →<進捗>どうも全てエラーになるわけではないようです。

【経緯】
 ・インストール後に各種ページを作成した際には、複数のページタイプを作成でき、
  サイトページとの紐づけも問題なく動いていた
 ・その後、ワークフロー権限設定トラブルですべてのサイトページのページタイプを
  デフォルトのページタイプ”ページ”に変更後、追加作成したページタイプを削除
 ・ワークフロー権限設定トラブルが解決したところで、改めてページタイプを作成しようとしたところエラー発生


【心当たり】
 ・作成済みサイトページのページタイプの紐づけをデフォルトにすべて紐づけなおした
 ・手動作成のページタイプをすべて削除した
  (デフォルトページタイプ”ページ”の「権限」ボタンは正常に稼働)

  → やってはいけないことをやってしまったか。。。。

  → <進捗>エラーが出るときと出ない時がある


【エラー記述】
<ページタイプコピー作成時エラー記述 (添付01)>
Doctrine \ DBAL \ Exception \ UniqueConstraintViolationException
An exception occurred while executing 'INSERT INTO PageTypePageTemplateDefaultPages (pTemplateID, ptID, cID) VALUES (?, ?, ?)' with params ["4", "13", "273"]: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '4-13' for key 'PRIMARY' 


<新規作成ページタイプ「権限」OPEN時エラー記述 (添付02)>
Doctrine \ DBAL \ Exception \ SyntaxErrorException
An exception occurred while executing 'select cID from Pages where cParentID in () and cInheritPermissionsFromCID = ': SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') and cInheritPermissionsFromCID =' at line 1


【やりたいこと】
 ・サイトページ毎に社内部署単位で別々の更新ワークフローを設定したい
 ・そのため、部署属性毎に権限構成の異なるページタイプを作成したい


【進捗】
  ・エラーになるときとならない時がある(添付03)
  ・ページタイプ名「インフォメーション」の例
    ページタイプハンドルを"info”にする → エラー
      〃       を"if”にする  → エラーにならず
      ↑ "info”は一度削除したページタイプに使用していたハンドル
  ・"test””test2"ハンドル名は未使用であるためエラー発生せず

【推察】
  この推察で正しいでしょうか?

   一度使用し削除したページタイプハンドルを使用するとエラーになる

    → ページタイプコピーの時はコピー作成時
      手動で同じハンドルでページタイプは作成できるが「権限」設定でエラー

しばらくこれを意識して作成してみます。
ご意見を頂戴できれば幸いです。


<構築時参考資料>
 世界一わかりやすいConcrete5 P78~


<環境情報>
 インストール環境
 Windows10 ローカルPC (64bit)
 Windows版 MAMP
 ブラウザ GoogleChrome or FireFox


# concrete5 Version
Core Version - 8.4.3
Version Installed - 8.4.3
Database Version - 20180716000000

# concrete5 Packages
Easy Weather (1.0.0), Global Version List (1.0), PDF Viewer (1.0.1)

# concrete5 Overrides
None

# concrete5 Cache Settings
Block Cache - Off
Overrides Cache - On
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache/2.2.31 (Win32) DAV/2 mod_ssl/2.2.31 OpenSSL/1.0.2h mod_fcgid/2.3.9 mod_wsgi/3.4 Python/2.7.6 PHP/7.2.1 mod_perl/2.0.8 Perl/v5.16.3

# Server API
apache2handler

# PHP Version
7.2.1

# PHP Extensions

    
 

タグ: