Change record status: 
Project: 
Introduced in branch: 
8.x
Description: 

Drupal 7's database abstraction layer extends PDO. To make it more generic, SELECT queries returned an object implementing StatementInterface, instead of a plain PDOStatement. The intent of this interface was to formally define every method of PDOStatement, but due to bugs in PHP 5.2 several methods were documented but not enforced by the interface.

In Drupal 8, StatementInterface now contains all methods of PDOStatement. Previously, if a driver's Statement class implemented this interface, it probably had those unenforced methods implemented (because Drupal used them), but now it must adhere to the interface as well.

This only affects database drivers which provide their own Statement class.

Impacts: 
Module developers