Jump to content

Indizierung (Suche) funktioniert nicht


Recommended Posts

PS 1.6.0.14

 

In meinem System ist mir aufgefallen, das die Suche im Frontend nicht geht. 

 

Im Backend unter Suche eine Komplettindizierung gestartet. (Button: "Index vollständig regenerieren")

 

Nach ein paar Minuten bricht das ganze mit einem Timeout ab und 28 / 1700 Artikeln sind indiziert.

 

Beim Klick auf "Fehlende Artikel indizieren" passiert leider garnix, nur eine Weiße Seite erscheint.

 

 

Ich hatte noch die Vermutung, das es was mit dem Cron Taskmanager den ich (wie hier im Forum beschrieben) aus performance gründen deaktiviert habe liegen könnte. Beim öffnen dieses Moduls, erscheint auch gleich eine Fehlermeldung: 

"Fehler!

An error occurred while trying to contact PrestaShop's cron tasks webservice."

 

Hat jemand ne idee?

Link to comment
Share on other sites

Timeout heist für mich , dass da was am server ist...?

 

der cron manager ist bei mir auch deaktiviert

allerdings hab ich nicht so viele Artikel: im einen Shop 170 im anderen ca 400

läuft aber ganz normal durch.

 

resette doch mal das suchmodul schnellsuche

Link to comment
Share on other sites

max_execution_time 300

sollte normalerweise reichen, die menge an varianten pro Artikel (ca 1500) brauch fürs indizieren einfach extrem lang. 

 

Habe noch raus gefunden, wenn ich einen Artikel bearbeite und manuell speichere, dann ist dieser auch indiziert, aber ob das mit 1700 Artikeln Spaß macht, bleibt offen.

Edited by Rundblick (see edit history)
Link to comment
Share on other sites

die max_execution ist eigentlich ok

versuch trotzdem mal die max_execution auf 600 hochzubringen

wichtiger ist die Speichergrenze; wie hoch ist die denn ? Alles unter 512 oder 768 MB macht bei dieser Artikelmenge/Variantenmenge keinen Sinn

Link to comment
Share on other sites

  • 4 weeks later...

Habe wohl dasselbe Problem. Mal abgesehen davon, dass mein Hoster die 300s Timeout nicht erhöhen will.... Die 30k Artikel importiere ich halt in Schritten. Das ist zwar doof, aber wenigstens gehts.

Den Index kann ich aber nicht aufbauen. Der Komplett-Index scheitert am Timeout, und beim "Fehlende Artikel indizieren" erscheint sofort ein 500er Fehler. Leider habe ich da überhaupt keine Fehlerausgabe, es erscheint nur eine weisse Seite. Ich hoffe, dass mir da der Hoster wenigstens die Fehlerausgabe anzeigen kann.

Sonst eine Idee?

 

Edit: Wenn ich nur ganz wenige Artikel mit "fehlende Artikel indizieren" indizieren, klappts. Ich hab die Grenze jetzt aber nicht rausgefunden. Bei einem Artikel gehts ...

 

Edit 2: Nach ca. 4 Stunden hab ich nochmals (ohne die Seite neu zu laden) auf den "fehlende Artikel indizieren"-Link geklickt und da hats die 399 Artikel indiziert. Dachte schon, der Hoster hätte was geändert. Dem ist aber nicht so. Nach weiteren 399 importierten Artikeln gibts natürlich wieder den 500er Fehler beim Index-Link. Muss ich jetzt immer ein paar Stunden warten, bis ich den Index ergänzen kann? Hat das was mit einer Session oder token oder sonstwas zu tun?

Edited by wasi77 (see edit history)
Link to comment
Share on other sites

30.000 ist zuviel für die Shopsoftware

 

irgendwo hab ich mal gelesen bei 20.000  sei schluss; und wenn Presta das schreibt, ist garantiert schon bei 5-10.000 finito

frag dochmal den Presta-Support direkt

 

wenn man soviele Artikel "fährt" wäre es glaube ich besser den Shop auf einem eigenen Server-Frontend aufzusetzten

 

außerdem müsste man mehr über die Vorraussetzungen Deines Servers wissen

 

und auch Dir willkommen im Forum

Edited by kulli (see edit history)
Link to comment
Share on other sites

Hallo kulli,

 

Danke für deine Antwort.

Ich denke nicht, dass 30k Artikel ein Problem darstellen. Ist ja nix ... Ausserdem versuche ich ja jeweils nur 400 Artikel zu importieren (das klappt auch), und danach gleich die neuen 400 Artikel zu indizieren. Das geht dann nicht mehr.

 

Hosting ist bei cyon.ch. Ich hatte das Ganze natürlich schon mal lokal auf meiner Kiste getestet, da funktionierte natürlich alles. Aber da konnte ich auch auf alle einstellungen Einfluss nehmen. Allerdings möchte ich mich nicht selbst um den Server kümmern müssen. Dafür gibts ja Hostings.

 

Ich hab mal dem PS-Support geschrieben.

Link to comment
Share on other sites

Meinst du das hier?

 

Serverdaten Linux #1 SMP Fri Dec 19 10:25:14 EST 2014 x86_64

Version der Server-Software LiteSpeed

PHP-Version 5.5.23

Speichergrenze 1024M

max_execution_time 3600 (diese Einstellung bringt nichts, wird übersteuert mit 300)

MySQL-Version 5.5.40-cll

MySQL-Engine InnoDB

Link to comment
Share on other sites

soviel speichergrenze hätt ich auch gern, aber wenn schon die execution_time nicht real ist....

übrigens ist die sehr hoch, vielleicht wird sie deswegen nicht angewandt.

 

whiley schreibt immer:
"Zunächst solltest du den Debug-Modus einschalten indem du in der
/config/defines.inc.php PS_MODE_DEV von "false" auf "true" setzt.
Häufig werden dann vernünftige Fehlermeldungen angezeigt"

 

Link to comment
Share on other sites

Danke, die Einstellung PS_MODE_DEV hilft schon mal ungemein. So kann ich wenigstens mal den Fehler lokalisieren.

 

Fatal error: Out of memory (allocated 584843264) (tried to allocate 32 bytes) in /classes/db/DbPDO.php on line 119

Muss ich dann wohl mit meinem Hoster anschauen. Verstehe zwar nicht, warum es ein Problem sein soll, mickrige 32bytes zuzuweisen. Oder warum bereits 559MB zugeiwesen sein sollten.

 

Edit: Ich hab nun in der php.ini mit dem Wert für memory_limit rumgespielt. Auch da hat mein Hoster wohl eine Grenze, die liegt bei 557.75MB.

Nun gut, aktuell möchte ich rund 400 Artikel nachindizieren:

Die "indizierten" Artikel wurden von PrestaShop analysiert und werden in den Ergebnissen der Front-Office-Suche angezeigt.
Indizierte Artikel 798 / 1196.

Ich kann mir schlecht vorstellen, dass pro Artikel mehr als 1MB Speicher benötigt werden. Falls doch, kann ich vielleicht irgendwo die Anzahl zu indizierenden Artikel begrenzen auf 200 (oder auf eine Anzahl, die dann kein out of memory mehr gibt) oder sowas? Oder gibts noch eine andere Variable im php.ini, die ich höher setzen sollte?

Das hab ich aktuell drin:

max_execution_time = 300
max_input_time = 3600    ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 1G      ; Maximum amount of memory a script may consume (16MB)
max_input_vars = 5000
 

Edited by wasi77 (see edit history)
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...