View Issue Details

IDProjectCategoryView StatusLast Update
0006930OXID eShop (all versions)4.01. Database handlingpublic2018-12-12 12:53
Reporteravalue Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionopen 
Product Version6.0.3 
Summary0006930: Possible bug in views generation (only enterprise edition)
DescriptionFile: vendor/oxid-esales/oxideshop-ee/Application/Model/Shop.php
PHP version: 7.2

In method "formDatabaseTablesArray" the result from parent::formDatabaseTablesArray() and self::getMultiShopTables() is used with array_merge, but in case the config param "aMultiShopTables" is not set or null array_merge fails and returns null. Because of this, views cannot be generated in backend.

Because i didn't find any entry in bugtracker for this issue, it seems not to be fixed in any new 6.x.x version.
Steps To Reproduce1. Setup a OXID eShop Enterprise Edition 6.0.3
2. Ensure that aMultiShopTables is not set or null in config.inc.php (default, i think)
3. Delete view tables in database, if any
4. Set $this->blSkipViewUsage=true; in config.inc.php to access backend
5. Hit "refresh views" Button
6. The views are not generated
TagsNo tags attached.
ThemeAll
BrowserAll
PHP VersionOther
Database VersionNot defined

Activities

avalue

2018-12-11 17:00

reporter   ~0012732

In community-edition version of this file, there is a check for null

 if (is_null($this->_aMultiShopTables)) {
            $this->_aMultiShopTables = [];
        }

but ee file overwrites this method.

avalue

2018-12-11 17:14

reporter   ~0012733

This only occurs with an active digidesk base module.

QA

2018-12-11 17:28

administrator   ~0012734

The issue seems partly correct. If I manually set $this->aMultiShopTables = null in config.inc.php, the described behavior can be seen - no views are created. However, the parameter aMultiShopTables does not exist in config.inc.php in a standard installation of the OXID eShop EE 6. With this standard configuration, the issue is not reproducable. So to sum things up: you have to actively set the aMultiShopTables parameter to null.

[sp]

QA

2018-12-11 18:02

administrator   ~0012735

(Did read your notes after I've written mine.) If the issue is connected to a third-party module, it seems to be a bug in the module. Maybe you could describe your findings a little bit more. Does the module sets the parameter actively to null? As said before, I can only reproduce if I do so.

[sp]

avalue

2018-12-12 11:06

reporter   ~0012736

Unfortunately the module is encrypted, but maybe you have a chance to see the non-encrypted code? It's the digidesk base module (v2.0.9) used for several digidesk modules. I also opened an issue in digidesk bug tracking system.

QA

2018-12-12 12:16

administrator   ~0012737

Since the issue is only reproducable with actively setting a config parameter to null - which is not intended to do so - or using a third-party module, I can't classify it as an OXID eShop bug.

[sp]

keywan.ghadami

2018-12-12 12:53

reporter   ~0012739

@avalue even I was also not able to reproduce I create a pull request https://github.com/OXID-eSales/oxideshop_ee/pull/23 that may improve things. If you have access please give feedback on the pull request it that would help in your situation.