diff --git a/cache_warmer.drush.inc b/cache_warmer.drush.inc
index 0a61726..0a6a8ed 100644
--- a/cache_warmer.drush.inc
+++ b/cache_warmer.drush.inc
@@ -278,13 +278,21 @@ function cache_warmer_execute($base_uri = '') {
   $items = array();
   $drupal_version = drush_drupal_major_version();
 
+  // Get drush version spec.
+  if (function_exists('_drush_sql_get_db_spec')) {
+    $db_spec = _drush_sql_get_db_spec();
+  }
+  else {
+    $db_spec = drush_sql_get_class()->db_spec();
+  }
+
   switch ($drupal_version) {
     case '7':
       // Include the DB handling functions.
       if (!function_exists('cache_warmer_get_items_drupal7_both')) {
         require_once __DIR__ . '/includes/cache_warmer_db7.inc';
       }
-      $items = cache_warmer_get_items_drupal7(_drush_sql_get_db_spec(), $latest, $updated, $no_aliases);
+      $items = cache_warmer_get_items_drupal7($db_spec, $latest, $updated, $no_aliases);
       break;
     case '6':
     case '5':
@@ -292,7 +300,7 @@ function cache_warmer_execute($base_uri = '') {
       if (!function_exists('cache_warmer_get_items_drupal6_both')) {
         require_once __DIR__ . '/includes/cache_warmer_db6.inc';
       }
-      $items = cache_warmer_get_items_drupal6(_drush_sql_get_db_spec(), $latest, $updated, $no_aliases);
+      $items = cache_warmer_get_items_drupal6($db_spec, $latest, $updated, $no_aliases);
       break;
     case FALSE:
       return drush_set_error('CACHE_WARMER_DRUPAL_VERSION_FAIL',
