0

I've been developing on Drupal at work for some time, now I also have a hosted personal site (on fastcomet). The first install was with 8.6 and php 7.2, then it has been idle for a while, now I upgraded it to 8.9 with php 7.4. It works, but most often when I ran drush cr it gives me me the classic (and dreaded) "General error 2014":

In Connection.php line 1210:

  SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active.  Consider using PDOStatement::fetchAll().  Alternatively, if   
  your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.                        

Occasionally it works, but then if I open any page of the site it tells me "SQL server has gone away". So, it seems that if the site is using the database drush cannot reach it, and vice versa.

I would gladly enable query buffering, but if I understand correctly I should do it in the code in core, right? Also, I would gladly ask for help from fastcomet's support (they are quite willing and well-meaning, but not very helpful when you ask something outside their knowledge base), but I wouldn't know what to ask... not yet, at least.

Here is the output of drush cr -vvv, just to provide more context:

[oneiroit@de15 dr]$ ./vendor/bin/drush cr -vvv
 [preflight] Config paths: /home/oneiroit/public_html/dr/vendor/drush/drush/drush.yml
 [preflight] Alias paths: /home/oneiroit/public_html/dr/web/drush/sites,/home/oneiroit/public_html/dr/drush/sites
 [preflight] Commandfile search paths: /home/oneiroit/public_html/dr/vendor/drush/drush/src
 [debug] Starting bootstrap to site [0.11 sec, 8.14 MB]
 [debug] Drush bootstrap phase 2 [0.11 sec, 8.14 MB]
 [debug] Try to validate bootstrap phase 2 [0.11 sec, 8.14 MB]
 [debug] Try to validate bootstrap phase 2 [0.11 sec, 8.14 MB]
 [debug] Try to bootstrap at phase 2 [0.11 sec, 8.14 MB]
 [debug] Drush bootstrap phase: bootstrapDrupalRoot() [0.11 sec, 8.14 MB]
 [debug] Change working directory to /home/oneiroit/public_html/dr/web [0.11 sec, 8.14 MB]
 [debug] Initialized Drupal 8.9.11 root directory at /home/oneiroit/public_html/dr/web [0.11 sec, 8.27 MB]
 [debug] Try to validate bootstrap phase 2 [0.11 sec, 8.27 MB]
 [debug] Try to bootstrap at phase 2 [0.12 sec, 8.62 MB]
 [debug] Drush bootstrap phase: bootstrapDrupalSite() [0.12 sec, 8.62 MB]
 [debug] Initialized Drupal site default at sites/default [0.12 sec, 8.8 MB]

In Connection.php line 1210:
                                                                                                                                                                        
  [PDOException (HY000)]                                                                                                                                                
  SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active.  Consider using PDOStatement::fetchAll().  Alternatively, if   
  your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.                        
                                                                                                                                                                        

Exception trace:
  at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/Database/Connection.php:1210
 PDO->beginTransaction() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/Database/Connection.php:1210
 Drupal\Core\Database\Connection->pushTransaction() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/Database/Transaction.php:65
 Drupal\Core\Database\Transaction->__construct() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/Database/Connection.php:1118
 Drupal\Core\Database\Connection->startTransaction() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/EventSubscriber/MenuRouterRebuildSubscriber.php:80
 Drupal\Core\EventSubscriber\MenuRouterRebuildSubscriber->menuLinksRebuild() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/EventSubscriber/MenuRouterRebuildSubscriber.php:71
 Drupal\Core\EventSubscriber\MenuRouterRebuildSubscriber->onRouterRebuild() at n/a:n/a
 call_user_func() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php:111
 Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() at /home/oneiroit/public_html/dr/web/core/lib/Drupal/Core/Routing/RouteBuilder.php:197
 Drupal\Core\Routing\RouteBuilder->rebuild() at /home/oneiroit/public_html/dr/web/core/includes/common.inc:1090
 drupal_flush_all_caches() at /home/oneiroit/public_html/dr/web/core/includes/utility.inc:55
 drupal_rebuild() at /home/oneiroit/public_html/dr/vendor/drush/drush/src/Commands/core/CacheCommands.php:234
 Drush\Commands\core\CacheCommands->rebuild() at n/a:n/a
 call_user_func_array() at /home/oneiroit/public_html/dr/vendor/consolidation/annotated-command/src/CommandProcessor.php:257
 Consolidation\AnnotatedCommand\CommandProcessor->runCommandCallback() at /home/oneiroit/public_html/dr/vendor/consolidation/annotated-command/src/CommandProcessor.php:212
 Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter() at /home/oneiroit/public_html/dr/vendor/consolidation/annotated-command/src/CommandProcessor.php:178
 Consolidation\AnnotatedCommand\CommandProcessor->process() at /home/oneiroit/public_html/dr/vendor/consolidation/annotated-command/src/AnnotatedCommand.php:302
 Consolidation\AnnotatedCommand\AnnotatedCommand->execute() at /home/oneiroit/public_html/dr/vendor/symfony/console/Command/Command.php:255
 Symfony\Component\Console\Command\Command->run() at /home/oneiroit/public_html/dr/vendor/symfony/console/Application.php:1005
 Symfony\Component\Console\Application->doRunCommand() at /home/oneiroit/public_html/dr/vendor/symfony/console/Application.php:255
 Symfony\Component\Console\Application->doRun() at /home/oneiroit/public_html/dr/vendor/symfony/console/Application.php:148
 Symfony\Component\Console\Application->run() at /home/oneiroit/public_html/dr/vendor/drush/drush/src/Runtime/Runtime.php:118
 Drush\Runtime\Runtime->doRun() at /home/oneiroit/public_html/dr/vendor/drush/drush/src/Runtime/Runtime.php:49
 Drush\Runtime\Runtime->run() at /home/oneiroit/public_html/dr/vendor/drush/drush/drush.php:72
 require() at /home/oneiroit/public_html/dr/vendor/drush/drush/drush:4

cache:rebuild [--cache-clear [CACHE-CLEAR]] [--no-cache-clear] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-d|--debug] [-y|--yes] [--no] [--remote-host REMOTE-HOST] [--remote-user REMOTE-USER] [-r|--root ROOT] [-l|--uri URI] [--simulate] [--pipe] [-D|--define DEFINE] [--notify [NOTIFY]] [--xh-link XH-LINK] [--druplicon] [--] <command>

EDIT: at the moment I am bypassing the problem by clearing the cache from the web interface, yet it's very annoying to be unable to use drush. Also, I am not sure what will happen when (if) I'll give access to my site to other people, at the moment I am the only active user...

2
  • Try updating Drush to drush 10.3.x – Kevin Jan 3 at 12:59
  • [oneiroit@de15 dr]$ ./vendor/bin/drush --version Drush Commandline Tool 10.3.6 – Francesco Marchetti-Stasi Jan 3 at 13:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.