Does my Drupal 7 site have transaction support enabled by default? I happen to read through the commented lines in settings.php under the "Database settings" (around line no. 45) the following text:


  Some database engines support transactions. In order to enable transaction support for a given database, set the 'transactions' key to TRUE. To disable it, set it to FALSE.
  Note that the default value varies by driver.  For MySQL, the default is FALSE since MyISAM tables do not support transactions.


My databases array, auto-generated by Drupal Installer, is the following one:

$databases = array(
  'default' =&gt; array(
    'default' =&gt; array(
      'database' =&gt; 'test_db',
      'username' =&gt; 'root',
      'password' =&gt; '',
      'host' =&gt; 'localhost',
      'port' =&gt; '',
      'driver' =&gt; 'mysql',
      'prefix' =&gt; '',
    ),
  ),
);


Is it true that my site is not transaction aware until I add a key/value, 'transaction' =&gt; TRUE (preferably after 'prefix' =&gt; '') to $databases?
Looking at the construction of the DatabaseConnection_pgsql class, I noticed the following code:

$this-&gt;transactionSupport = !isset($connection_options['transactions'])
  || ($connection_options['transactions'] !== FALSE);


The code sets DatabaseConnection_pgsql::$transactionSupport to TRUE when the connection parameters don't contain the array index "transactions," which is one you should set in your settings.php file (it's not "transaction"), or when that array index is used in the connection parameters and it is not set to FALSE.
The same code is contained in DatabaseConnection_mysql::__construct(); in this case, the connection parameters (the ones set in the settings.php file) should be set not to use transactions only when the tables used are MyISAM.
Also DatabaseConnection_sqlite::__construct() contains the same code.

In short, the drivers used by Drupal always set the transaction support to TRUE, and users should set it to FALSE when they are using MyISAM tables, or they don't want to enable the transaction support.