Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-57192

Database query logging fails with MySQLi (and possibly other drivers)

XMLWordPrintable

    • MOODLE_31_STABLE, MOODLE_32_STABLE, MOODLE_33_STABLE
    • MOODLE_31_STABLE, MOODLE_32_STABLE
    • MDL-57192-master
    • Hide
      1. This is going to be really painful, sorry.
      2. Run entire unit test suite on all databases drivers (not only on all dbs).
      3. Turn on logall config in your config.php (dboptions["logall"] => true)
      4. # Run entire unit test suite on all databases drivers again (not only on all dbs).
      5. Access and browse your site and make sure no obvious dml errors are present.
      6. Repeat this on all supported db drivers.
      7. Since we don't do this often there might be unrelated errors, please verify this patch is actual cause of the error before failing.
      Show
      This is going to be really painful, sorry. Run entire unit test suite on all databases drivers (not only on all dbs). Turn on logall config in your config.php (dboptions ["logall"] => true) # Run entire unit test suite on all databases drivers again (not only on all dbs). Access and browse your site and make sure no obvious dml errors are present. Repeat this on all supported db drivers. Since we don't do this often there might be unrelated errors, please verify this patch is actual cause of the error before failing.
    • 3.3 sprint 1

      This is essentially the same issue as MDL-29199. Unfortunately the reported bugfix wasn't replicated for all other drivers that use the same functionalities.

      When enabling query logging ('logall' set to true) in $CFG->dboptions, the MySQLi driver (and possibly other drivers as well) will try to call $this->temptables->is_temptable($table) while $this->temptables is not initialized (= null) yet. Execution fails with errors similar to:

      Fatal error: Call to a member function is_temptable() on a non-object in /moodle/lib/dml/mysqli_native_moodle_database.php on line 580
      

      Since this has been reported in the Orcal driver before and now is happening again in MySQLi, chances are that the issue also exists for MSSQL, SQLite3, PostgreSQL, SQLSRV and in the abstract moodle class, since they all make a call to is_temptable(). As such these other drivers should be checked as well.

            ankit_frenz Ankit Agarwal
            moodle.com Moodle HQ
            Adrian Greeve Adrian Greeve
            Eloy Lafuente (stronk7) Eloy Lafuente (stronk7)
            Rajesh Taneja Rajesh Taneja
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:

                Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.