2

After switching logging on, clicking the tab 'Change Log' hangs for ever and the following error occurs (full traceback availabe). This is, I guess, a temporary table that for some reason Civi has failed to create. Does anyone have any clues on fixing this problem. Civi is 4.7.27 / Drupal and is otherwise functioning well (hosted at CiviHosting)

#9 /home/dcmadmin/www/www/sites/all/modules/civicrm/packages/DB/mysqli.php(933): DB_common->raiseError(-18, NULL, NULL, NULL, "1146 ** Table 'dcmadmin_civicrm.entity_log_civireport' doesn't exist")

(previously I raised this as a question about 'Unable to reach the server' but that's only a symptom of the above problem.

5
  • Andy do you mean you have just turned logging on and it produces the error - or that logging has been on for a while and you are now seeing the error? Turning logging off and back on fixes some conditions.
    – Aidan
    Commented Feb 20, 2018 at 13:36
  • No just turned it on & checked log_ tables all created. Have switched it back & forth with same problem.
    – Andy Clark
    Commented Feb 20, 2018 at 13:54
  • Does the rest of the stacktrace show what it was doing to trigger that message?
    – Aidan
    Commented Feb 20, 2018 at 14:19
  • Yes - it was building 'CRM_Report_Form_Contact_LoggingSummary' - I emailed you the backtrace
    – Andy Clark
    Commented Feb 20, 2018 at 14:24
  • I'm relatively new to CiviCRM and am having the same issue as Andy in both 4.7.29 and 4.7.30 although with a different table: #6 /var/www/html/sites/all/modules/civicrm/packages/DB/mysqli.php(933): DB_common->raiseError(-1, NULL, NULL, "INSERT IGNORE INTO civicrm_temp_civireport_logsummary SELECT entity_log_civir...", "1055 ** Expression #3 of SELECT list is not in GROUP BY clause and contains n...") The symptoms are the same - switch logging on, go to Change Log tab and get the "Network Error" message with a spinning circle and no response. I have switched logging off, deleted all log_ tables
    – SimonB
    Commented Feb 21, 2018 at 23:05

3 Answers 3

0

I wonder whether log tables are being created in the wrong order by the config change that switches on Logging? If the error you see always refers to this same table, maybe creation of another log table triggers expects dcmadmin_civicrm.entity_log_civireport to exist already. Chicken and egg? David

0

Andy, what version of MySQL are you running? If it's 5.7 check whether SQL Mode has ONLY_FULL_GROUP_BY set in it. If so try deleting this out and restarting MySQL. Removing this has fixed this error for me and also another one where I couldn't run the Detailed Contributions report. It seems the MySQL 5.7 has changed the default behaviour for the SQL Mode and some of the CiviCRM queries don't seem to like the more strict handling.

You can check if this is the likely casue by checking the backtrace to see if it contains and error such as:

Expression #9 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'civicrm.contribution_soft_civireport.amount' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by]"]
1
  • It's MySQL 5.7.20 but that error is not in the backtrace. And I can run the Detailed Contributions report, no problem. Typical, eh?!
    – Andy Clark
    Commented Feb 25, 2018 at 22:31
0

I was facing same issue, and on removing sql mode - ONLY_FULL_GROUP_BY, worked for me. SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

1
  • I checked with Civihosting & this option is already disabled. So that's not the solution. But thanks for the suggestion.
    – Andy Clark
    Commented Mar 15, 2018 at 11:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.