It seems as if mysqli was not reporting exceptions until now. I have enabled error reporting, which will make sure that every time an error happens an exception is thrown. This follows the same approach as the PDO adapter. I am not sure about abstracting exceptions as it seems PDOException is not abstracted in most places.
The background of this change is to bring it in line with the new default mysqli error reporting in PHP 8.1. Normally, to avoid BC we would add mysqli_report(MYSQLI_REPORT_OFF) but in this case that line was missing previously and it seems like the project doesn't care about error handling. Therefore, it's better to enable error reporting for this extension to align it with PDO behaviour.
Regarding the right place. In PDO error reporting is enabled after connection, but in mysqli it makes more sense to do it before.
Signed-off-by: Kamil Tekiela tekiela246@gmail.com
Description
It seems as if mysqli was not reporting exceptions until now. I have enabled error reporting, which will make sure that every time an error happens an exception is thrown. This follows the same approach as the PDO adapter. I am not sure about abstracting exceptions as it seems PDOException is not abstracted in most places. The background of this change is to bring it in line with the new default mysqli error reporting in PHP 8.1. Normally, to avoid BC we would add
mysqli_report(MYSQLI_REPORT_OFF)
but in this case that line was missing previously and it seems like the project doesn't care about error handling. Therefore, it's better to enable error reporting for this extension to align it with PDO behaviour.Regarding the right place. In PDO error reporting is enabled after connection, but in mysqli it makes more sense to do it before.