Jump to content
thirty bees forum
  • 0

error 500 in modules/services and perfomance after migration from ps


Sigi

Question

hey there,

i did a migration from prestashop 1.6.1.23 to thirty bees 1.0.8
After the migration i get every time an error 500 in the backend when clicking on modules and services or when clicking on perfomance.
here ist the encrypted error. I have no glue what to do.

I thought maybe a update to version 1.1 to solve this problem, but i can´t cause i get this damn error..


Thanks a lot
Now the encrypted error:

 

## ThirtyBeesException  
**Call to undefined method GuzzleHttp\Client::getAsync()**  
 *at line* **1093** *in file* `classes/module/Module.php`  
```php  
1088.                        'url'                 => isset($module['url']) ? $module['url'] : '',
1089.                    ];
1090.    
1091.                    if (isset($module['img'])) {
1092.                        if (!file_exists(_PS_TMP_IMG_DIR_.md5($name).'.png')) {
1093. =>                         $imagePromises[$name] = $guzzle->getAsync($module['img'], ['sink' => _PS_TMP_IMG_DIR_.md5($name).'.png']);
1094.                        }
1095.    
1096.                        $item['image'] = '../img/tmp/'.md5($name).'.png';
1097.                    }
1098.    
```  
- **ModuleCore::getModulesOnDisk** - [line `334` - `controllers/admin/AdminModulesController.php`]  
 - [3 Arguments]  
```php  
329.                }
330.                $modulesPreferences[$v['module']] = $v;
331.            }
332.    
333.            // Retrieve Modules List
334. =>         $modules = Module::getModulesOnDisk(true, $this->logged_on_addons, $this->id_employee);
335.            $this->initModulesList($modules);
336.            $this->nb_modules_total = count($modules);
337.            $moduleErrors = [];
338.            $moduleSuccess = [];
339.            $upgradeAvailable = [];
```  
```Argument [0]  
1
Argument [1]  

Argument [2]  
2
```  
- **AdminModulesControllerCore->initContent** - [line `262` - `classes/controller/Controller.php`]  
```php  
257.                if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className))) {
258.                    $this->initHeader();
259.                }
260.    
261.                if ($this->viewAccess()) {
262. =>                 $this->initContent();
263.                } else {
264.                    $this->errors[] = Tools::displayError('Access denied.');
265.                }
266.    
267.                if (!$this->content_only && ($this->display_footer || (isset($this->className) && $this->className))) {
```  
- **ControllerCore->run** - [line `837` - `classes/Dispatcher.php`]  
```php  
832.                if (isset($paramsHookActionDispatcher)) {
833.                    Hook::exec('actionDispatcher', $paramsHookActionDispatcher);
834.                }
835.    
836.                // Running controller
837. =>             $controller->run();
838.            } catch (PrestaShopException $e) {
839.                $e->displayMessage();
840.            }
841.        }
842.    
```  
- **DispatcherCore->dispatch** - [line `63` - `admin/index.php`]  
```php  
58.    if (!isset($_REQUEST['controller']) && isset($_REQUEST['tab'])) {
59.        $_REQUEST['controller'] = strtolower($_REQUEST['tab']);
60.    }
61.    
62.    // Prepare and trigger admin dispatcher
63. => Dispatcher::getInstance()->dispatch();
```  
 

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Looks like you have outdated guzzle library.

First, check that your /vendor directory is up to date -- download thirtybees install zip file, extract it, and upload /vendor directory to your server. 

If this doesn't help, then the only explanation is that there's some module that comes with its own version of guzzle library, and this somehow overrides the default guzzle library that comes with thirtybees. 

  • Like 1
Link to comment
Share on other sites

  • 0
22 minutes ago, datakick said:

Looks like you have outdated guzzle library.

First, check that your /vendor directory is up to date -- download thirtybees install zip file, extract it, and upload /vendor directory to your server. 

If this doesn't help, then the only explanation is that there's some module that comes with its own version of guzzle library, and this somehow overrides the default guzzle library that comes with thirtybees. 

Nice tip, I also proposed my help to check it on the server, but seems like You gave him the good direction to solve it alone,

Edited by zen
  • Like 1
Link to comment
Share on other sites

  • 0
1 hour ago, zen said:

module TBUpdater causes the crash..  when took out of modules directory .. module listing works again..need to understand why, but have no more time right now..

The back office works again now.

I wouldn't be so sure this module was the root cause, it's possible it is just a red herring. 

From stacktrace, it's obvious that thirtybees is trying to download logo for some module from thirtybees repository. It is quite possible that it was 'tbupdater' module for which the logo image was being downloaded. If that's the case, then deletion of this module would hide the problem. But not solve it -- it might still be there, patiently waiting for another chance to manifest.

I'd suggest additional investigation.  

  • Like 1
Link to comment
Share on other sites

  • 0
3 minutes ago, datakick said:

I wouldn't be so sure this module was the root cause, it's possible it is just a red herring.

I'd suggest additional investigation.  

Of course !!

The hosting could be and seems to be the root problem here.

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...