Book Image

Drupal 7 First Look

Book Image

Drupal 7 First Look

Overview of this book

Drupal 7 contains features for which site administrators have been clamoring for years, including support for fields, an improved administration interface, better database support, improved theming, and more. You could of course make a laborious search on sites, blogs, and many online tutorials that would promise to update you about every new feature, but there's an even better way to know all about Drupal 7's new features: Drupal 7 First Look is the first and only book that covers all of the fantastic new features in Drupal 7 in depth and covers the process of upgrading your Drupal 6 site to Drupal 7. If you've used Drupal 6 and want to use Drupal 7, you need this book.Drupal 7 First Look takes an in-depth look into all of the major new features in Drupal 7 so you can quickly take full advantage of Drupal 7. It also assists you in upgrading your site to Drupal 7. Some of the new features in Drupal 7 include: Fields API, based on Drupal 6 CCK, which allows you to easily build your own content types Improved user interface for administering your website Built-in support for working with images and files Improved security for the site and users of the site Completely rewritten database layer DBTNG to make working with the database easier and more secure. Improved API for custom module development and user interface theming
Table of Contents (13 chapters)
Drupal 7 First Look
Credits
About the Author
About the Reviewer
Preface
Index

Transaction support


The Drupal 7 DBTNG layer also supports transactions for database drivers that support transactions. If a driver does not support transactions, Drupal will automatically disable transaction functionality for you.

The key issue related to transactions in PHP is the potential for deadlocks due to multiple methods attempting to start transactions. If a transaction has been started in one method and a different method also attempts to start a transaction, the second transaction must wait until the first transaction completes until it can be started. Without proper protection, this can prevent the page load from completing. Thankfully, Drupal 7 protects against this behavior by providing the db_transaction method, which will allow the second function to acknowledge and utilize the transaction started in the first method.

To utilize this functionality, you should call db_transaction at the beginning of the method you want to have transaction support. As soon as the method exits...