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!