ElasticSearch Fehler beim Mapping von calculatedPrices

Moin

ich bin gerade dabei ElasticSearch zu implementieren, stoße aber auf ein Problem und weiß noch nicht ganz wie/wo ich am Besten ansetzen muss.
ES ist korrekt in der config.php eingetragen und das „populating“ von ES wird auch durch das console Command ohne Fehler abgeschlossen.

Wenn ich allerdings in das ES log schaue, dann stoße ich auf folgende Fehler (Suche im Shop funktioniert derweil auch nicht):

 

[2017-04-05 13:02:27,380][DEBUG][action.bulk] [Mustermann.de] [sw_shop1_20170405130226][4] failed to execute bulk item (index) index {[sw_shop1_20170405130226][product][1049], source[{"formattedCreatedAt":"-0001-11-30","formattedReleaseDate":null,"properties":[{"id":9,"name":"26 - 40 %","media":null,"position":2,"attributes":[]},{"id":44,"name":"Griechenland","media":null,"position":11,"attributes":[]},{"id":5,"name":"Literflaschen","media":null,"position":2,"attributes":[]}],"categoryIds":["367","3","64"],"calculatedPrices":{"EK_1":{"calculatedPrice":14.51,"calculatedReferencePrice":14.51,"calculatedPseudoPrice":0,"rule":{"id":491562,"price":12.193277310924,"from":1,"to":null,"pseudoPrice":0,"customerGroup":{"id":1,"key":"EK","name":"Shopkunden","displayGrossPrices":true,"insertedGrossPrices":true,"useDiscount":false,"percentageDiscount":0,"minimumOrderValue":0,"surcharge":0,"attributes":[]},"unit":{"id":1,"name":"Liter","unit":"l","purchaseUnit":1,"referenceUnit":1,"packUnit":"Fl.","minPurchase":1,"maxPurchase":null,"purchaseStep":1,"attributes":[]},"attributes":[]},"attributes":[]},"H_1":{"calculatedPrice":12.193,"calculatedReferencePrice":12.193,"calculatedPseudoPrice":0,"rule":{"id":491562,"price":12.193277310924,"from":1,"to":null,"pseudoPrice":0,"customerGroup":{"id":1,"key":"EK","name":"Shopkunden","displayGrossPrices":true,"insertedGrossPrices":true,"useDiscount":false,"percentageDiscount":0,"minimumOrderValue":0,"surcharge":0,"attributes":[]},"unit":{"id":1,"name":"Liter","unit":"l","purchaseUnit":1,"referenceUnit":1,"packUnit":"Fl.","minPurchase":1,"maxPurchase":null,"purchaseStep":1,"attributes":[]},"attributes":[]},"attributes":[]}},"name":"Ouzo 12 - 1 Liter 38% vol","stock":2147483643,"shortDescription":"Mustermann♥\u00ae ➦ Ouzo 12 1 Liter>","releaseDate":null,"shippingTime":"1","shippingFree":false,"closeouts":false,"hasProperties":true,"createdAt":null,"keywords":"Ouzo 12 1 LiterOuzo Shop, 05201003111006, 5201003111006","metaTitle":"Ouzo 12 1 Liter kaufen ab 14,51 EUR im Ouzo Shop","allowsNotification":false,"additional":"","minStock":0,"height":0,"width":0,"length":0,"weight":0,"ean":"5201003111006","highlight":false,"sales":901,"hasConfigurator":false,"hasEsd":false,"isPriceGroupActive":false,"blockedCustomerGroupIds":[],"manufacturerNumber":"","template":"","cheapestPrice":null,"cheapestPriceRule":null,"cheapestUnitPrice":null,"priceRules":null,"prices":null,"unit":{"id":1,"name":"Liter","unit":"l","purchaseUnit":1,"referenceUnit":1,"packUnit":"Fl.","minPurchase":1,"maxPurchase":null,"purchaseStep":1,"attributes":[]},"tax":{"id":1,"name":"19%","tax":19,"attributes":[]},"manufacturer":{"id":10,"name":"Ouzo","description":"Test","metaTitle":"Ouzo 12: Anisspirituosen aus Griechenland","metaDescription":"","metaKeywords":"","link":"","coverFile":"https:\/\/www.Mustermann.de\/media\/image\/84\/46\/32\/ouzo12_logo.png","attributes":[]},"cover":null,"priceGroup":null,"states":[],"esd":null,"voteAverage":{"count":4,"average":10,"pointCount":[{"total":"4","points":"5"}],"attributes":[]},"hasAvailableVariant":true,"customerPriceCount":"1","fallbackPriceCount":"1","mainVariantId":25,"isMainVariant":true,"categories":[],"id":25,"variantId":25,"number":"1049","attributes":{"core":{"id":"25","articleID":"25","articledetailsID":"25","attr1":"Ihr Ouzo 12 Preis","attr2":null,"attr3":null,"attr4":null,"attr5":"Ouzo 12","attr6":"38","attr7":"1","attr8":"Griechenland","attr9":"hat einen intensiven Geschmack","attr10":"Die Nummer 12 steht f\u00fcr das Fass aus dem der erste Ouzo kam","attr11":null,"attr12":null,"attr13":null,"attr14":null,"attr15":"","attr16":"","attr17":null,"attr18":"","attr19":"","attr20":null,"bepado_product_description":null,"deposit":null}}}]}

java.lang.IllegalArgumentException: mapper [calculatedPrices.EK_1.rule.unit.purchaseUnit] of different type, current_type [double], merged_type [long]

 

Das Mapping von calculatedPrices.EK_1.* scheint dabei generell Probleme zu verursachen.
Bei einem anderen Artikel erhalten wir z.B.:

 

java.lang.IllegalArgumentException: mapper [calculatedPrices.EK_1.calculatedPseudoPrice] of different type, current_type [double], merged_type [long]

 

Eingesetzt wird: Shopware CE 5.2.21, ES 2.4.4 und Intelligente Suche 2.2.1.
ES 5.3 hatte ich auch schon ausprobiert, funktioniert allerdings ebenso wenig. Es ändert sich lediglich die Exception zu „of different type, current_type [float], merged_type [long]“.

Wäre es auch möglich gewisse Sachen (wie PseudoPrice und purchaseUnit) bei der Populierung/Synchronisierung der ES-Suche auszuschließen?

Über Hinweise wäre ich sehr dankbar!

Hallo,

du müsstest auf jeden Fall mal die Intelligente Suche entfernen. Die ist nicht für ES ausgelegt oder freigegeben. Die wird da mit Sicherheit Probleme machen.

Ggf. gibt es auch noch weitere Erweiterungen, die stören können. Es muss ja sichergestellt sein, dass die Erweiterungen alle kompatibel sind.

VG

Sebastian

haben aktuell wohl nur noch einen Fehler… den wir nicht wirklich herausfinden können…

java.lang.IllegalArgumentException: mapper [calculatedPrices.SB_1.calculatedReferencePrice] cannot be changed from type [float] to [long]

Shopware 5.2.27 PE, ElasticSearch 5.4.1 und Pickware im Einsatz

Hast du denn oben dein Problem gelöst bekommen!?

VG

Habe das long float Problem seit neuestem leider auch in einem der Subshops. Gibt’s inzwischen eine Lösung außer nur noch Preise mit Nachkommastellen?

Habe einen Pseudopreis 185.00 der bei aktuell 3 vorhandenen Produkten dazu führt das die nachfolgenden Produkte nicht angezeigt werden!
Hier gab’s mal schon ein Ticket dazu: Shopware Issuetracker

Wenn das jemand lösen kann, wir zahlen auch dafür!

@AndyB schrieb:

Habe das long float Problem seit neuestem leider auch in einem der Subshops. Gibt’s inzwischen eine Lösung außer nur noch Preise mit Nachkommastellen?

Habe einen Pseudopreis 185.00 der bei aktuell 3 vorhandenen Produkten dazu führt das die nachfolgenden Produkte nicht angezeigt werden!
Hier gab’s mal schon ein Ticket dazu: https://issues.shopware.com/issues/SW-18861

Siehe dem Thread: Probleme mit Elasticsearch, calculatedPrices - #10 von Krispin - Allgemein - Shopware Community Forum