View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007364 | OXID eShop (all versions) | 1. ----- eShop frontend ----- | public | 2022-10-13 09:25 | 2022-10-13 12:36 |
Reporter | h.p. | Assigned To | |||
Priority | high | Severity | tweak | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 6.1.4 | ||||
Fixed in Version | 6.2.4 | ||||
Summary | 0007364: Unnötige Performanceverschwendung im EE Package | ||||
Description | OxidEsales\EshopEnterprise\Core\Base In Zeile 42 wird die SQL Anweisung "select 1 from oxobjectrights" gefeuert. Es wird ein Ergebnis erwartet da getOne verwendet wird. Bei größeren Portfolios befinden sich in der Tabelle mehrere hunderttausend Datensätze die entsprechende Zeit bzgl. Übertragung seitens der Datenbank benötigen. Da aber lediglich ein Ergebnis erwartet wird ist dies komplett unsinnig und sehr performancefressend. Bei einer MySQL auf einem externen Host haben wir zwischen 50 und 100ms Verlust bei jedem Seitenaufruf! Vorschlag : "select 1 from oxobjectrights limit 0,1" löst das Problem und erfüllt denselben Zweck. Die Performance steigt und auch Oxid wird dadurch etwas besser was beispielsweise pagespeed anbelangt. | ||||
Steps To Reproduce | Füllt ein paar hunderttausend Datensätze in die Tabelle und profiled die Anwendung. Die Aussage ist eindeutig. Das hier ist schlicht suboptimal programmiert. | ||||
Tags | Backend, EE, Perfomance, SQL | ||||
Theme | All | ||||
Browser | All | ||||
PHP Version | All | ||||
Database Version | All | ||||
|
Hi h.p., Thank you for your report! This query was already changed with the version 6.2.4 (package version 6.7.0) in the Enterprise package; similar to your suggestion. Therefore I will close this entry accordingly. Furthermore I'd like to ask you to post bug reports in English only, as the language of our Development Team is mainly English. Kind regards, Michael |