Does my Drupal 7 site have transaction support enabled by default?
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.