Hello I have intensively tested private site plugin.
Case 1 - Fresh installation ---> Pass
Case 2 - Overwriting existing PQA ---> Pass
Case 3 - Overwriting Q2A converted to PQA with large data ---> Failed.
On case 3, I have a local q2a converted pqa instance of over 12,000 threads and 10,000 users for testing.
After installing private site plugin,
Logging out generates the following error
A PowerQA database query failed when generating this page.
A full description of the failure is available in the web server's error log file.
The only error I am seeing in my error log is [Thu Dec 03 22:16:21.744264 2015] [mpm_winnt:notice] [pid 48:tid 324] AH00354: Child: Starting 150 worker threads.
I think this is a server issue and I am investigating more.
UPDATE
I changed my testing environment to a new server and caught very useful errors. See below;
[03-Dec-2015 23:33:05 UTC] PHP Fatal error: Call to undefined function qa_is_logged_in() in /home/xxxx/public_html/qa-plugin/pqa-private-site/qa-pv-process.php on line 36
[03-Dec-2015 23:33:28 UTC] PHP PowerQA MySQL query error 1146: Table 'askafric_q.pqa_posts' doesn't exist - Query: SELECT pqa_posts.postid, pqa_posts.categoryid, pqa_posts.type, LEFT(pqa_posts.type, 1) AS basetype, INSTR(pqa_posts.type, '_HIDDEN')>0 AS hidden, pqa_posts.acount, pqa_posts.selchildid, pqa_posts.closedbyid, pqa_posts.upvotes, pqa_posts.downvotes, pqa_posts.netvotes, pqa_posts.views, pqa_posts.hotness, pqa_posts.flagcount, pqa_posts.title, pqa_posts.tags, UNIX_TIMESTAMP(pqa_posts.created) AS created, pqa_posts.name, pqa_categories.title AS categoryname, pqa_categories.backpath AS categorybackpath, CONCAT_WS(',', pqa_posts.catidpath1, pqa_posts.catidpath2, pqa_posts.catidpath3, pqa_posts.categoryid) AS categoryids, pqa_uservotes.vote AS uservote, pqa_uservotes.flag AS userflag, pqa_userfavorites.entityid<=>pqa_posts.postid AS userfavoriteq, pqa_posts.userid, pqa_posts.cookieid, INET_NTOA(pqa_posts.createip) AS createip, pqa_userpoints.points, pqa_users.flags, pqa_users.level, pqa_users.email AS email, pqa_users.handle AS handle, BINARY pqa_users.avatarblobid AS avatarblobid, pqa_users.avatarwidth, pqa_users.avatarheight FROM pqa_posts LEFT JOIN pqa_categories ON pqa_categories.categoryid=pqa_posts.categoryid LEFT JOIN pqa_uservotes ON pqa_posts.postid=pqa_uservotes.postid AND pqa_uservotes.userid='1' LEFT JOIN pqa_userfavorites ON pqa_posts.postid=pqa_userfavorites.entityid AND pqa_userfavorites.userid='1' AND pqa_userfavorites.entitytype='Q' LEFT JOIN pqa_users ON pqa_posts.userid=pqa_users.userid LEFT JOIN pqa_userpoints ON pqa_posts.userid=pqa_userpoints.userid JOIN (SELECT postid FROM pqa_posts WHERE type='Q' ORDER BY created DESC LIMIT 0,5) y ON pqa_posts.postid=y.postid
[03-Dec-2015 23:33:32 UTC] PHP PowerQA MySQL query error 1146: Table 'askafric_q.pqa_posts' doesn't exist - Query: SELECT pqa_posts.postid, pqa_posts.categoryid, pqa_posts.type, LEFT(pqa_posts.type, 1) AS basetype, INSTR(pqa_posts.type, '_HIDDEN')>0 AS hidden, pqa_posts.acount, pqa_posts.selchildid, pqa_posts.closedbyid, pqa_posts.upvotes, pqa_posts.downvotes, pqa_posts.netvotes, pqa_posts.views, pqa_posts.hotness, pqa_posts.flagcount, pqa_posts.title, pqa_posts.tags, UNIX_TIMESTAMP(pqa_posts.created) AS created, pqa_posts.name, pqa_categories.title AS categoryname, pqa_categories.backpath AS categorybackpath, CONCAT_WS(',', pqa_posts.catidpath1, pqa_posts.catidpath2, pqa_posts.catidpath3, pqa_posts.categoryid) AS categoryids, pqa_uservotes.vote AS uservote, pqa_uservotes.flag AS userflag, pqa_userfavorites.entityid<=>pqa_posts.postid AS userfavoriteq, pqa_posts.userid, pqa_posts.cookieid, INET_NTOA(pqa_posts.createip) AS createip, pqa_userpoints.points, pqa_users.flags, pqa_users.level, pqa_users.email AS email, pqa_users.handle AS handle, BINARY pqa_users.avatarblobid AS avatarblobid, pqa_users.avatarwidth, pqa_users.avatarheight FROM pqa_posts LEFT JOIN pqa_categories ON pqa_categories.categoryid=pqa_posts.categoryid LEFT JOIN pqa_uservotes ON pqa_posts.postid=pqa_uservotes.postid AND pqa_uservotes.userid='1' LEFT JOIN pqa_userfavorites ON pqa_posts.postid=pqa_userfavorites.entityid AND pqa_userfavorites.userid='1' AND pqa_userfavorites.entitytype='Q' LEFT JOIN pqa_users ON pqa_posts.userid=pqa_users.userid LEFT JOIN pqa_userpoints ON pqa_posts.userid=pqa_userpoints.userid JOIN (SELECT postid FROM pqa_posts WHERE type='Q' ORDER BY created DESC LIMIT 0,5) y ON pqa_posts.postid=y.postid
[03-Dec-2015 23:33:34 UTC] PHP PowerQA MySQL query error 1146: Table 'askafric_q.pqa_posts' doesn't exist - Query: SELECT pqa_posts.postid, pqa_posts.categoryid, pqa_posts.type, LEFT(pqa_posts.type, 1) AS basetype, INSTR(pqa_posts.type, '_HIDDEN')>0 AS hidden, pqa_posts.acount, pqa_posts.selchildid, pqa_posts.closedbyid, pqa_posts.upvotes, pqa_posts.downvotes, pqa_posts.netvotes, pqa_posts.views, pqa_posts.hotness, pqa_posts.flagcount, pqa_posts.title, pqa_posts.tags, UNIX_TIMESTAMP(pqa_posts.created) AS created, pqa_posts.name, pqa_categories.title AS categoryname, pqa_categories.backpath AS categorybackpath, CONCAT_WS(',', pqa_posts.catidpath1, pqa_posts.catidpath2, pqa_posts.catidpath3, pqa_posts.categoryid) AS categoryids, pqa_uservotes.vote AS uservote, pqa_uservotes.flag AS userflag, pqa_userfavorites.entityid<=>pqa_posts.postid AS userfavoriteq, pqa_posts.userid, pqa_posts.cookieid, INET_NTOA(pqa_posts.createip) AS createip, pqa_userpoints.points, pqa_users.flags, pqa_users.level, pqa_users.email AS email, pqa_users.handle AS handle, BINARY pqa_users.avatarblobid AS avatarblobid, pqa_users.avatarwidth, pqa_users.avatarheight FROM pqa_posts LEFT JOIN pqa_categories ON pqa_categories.categoryid=pqa_posts.categoryid LEFT JOIN pqa_uservotes ON pqa_posts.postid=pqa_uservotes.postid AND pqa_uservotes.userid='1' LEFT JOIN pqa_userfavorites ON pqa_posts.postid=pqa_userfavorites.entityid AND pqa_userfavorites.userid='1' AND pqa_userfavorites.entitytype='Q' LEFT JOIN pqa_users ON pqa_posts.userid=pqa_users.userid LEFT JOIN pqa_userpoints ON pqa_posts.userid=pqa_userpoints.userid JOIN (SELECT postid FROM pqa_posts WHERE type='Q' ORDER BY created DESC LIMIT 0,5) y ON pqa_posts.postid=y.postid
Overview
I believe that private site plugin fails when ('QA_MYSQL_TABLE_PREFIX', ' ') in qa-config.php is not equal to pqa_.
If I change QA_MYSQL_TABLE_PREFIX to null or empty or any word apart from pqa_ I get the error above.
case 1 --> define('QA_MYSQL_TABLE_PREFIX', 'pqa_ ') == Pass
case 2 --> ('QA_MYSQL_TABLE_PREFIX', ' ') == fail
case 3 --> ('QA_MYSQL_TABLE_PREFIX', 'any_other_word_apart_from_pqa_') == fail
Please see if you can reproduce error at your end