One possible cause of this error is a call like
where the SQL query, $sql, contains several '?' which are to by substituted by $params, but fewer parameters than '?' are supplied. Check that $params was not created using unexpexted NULL values. get_records_sql() is defined in 'lib/dml/*_native_moodle_database.php', depending on which database you are using.