Pim-community-dev: Products page out of sync with individual product after you click into a product

Created on 18 May 2017  路  7Comments  路  Source: akeneo/pim-community-dev

I'm reporting a Bug

Expected Behavior
I would expect the products page to report accurate information based on the actual product information. The products page should match the information that is viewed when you click into a product.

Encountered Behavior
When on the products page, one attribute is displaying the same for every single product but when I click into any product that attribute is correct for that product. I've had this happen twice now. Both times this occurred after creating a variant group. One time the attribute was part of the variant group and one time it was one of the axis attribute.

Steps to Reproduce
Unfortunately, I don't know the exact steps to take to reproduce this but I am setting up a separate dev environment with a copy of my latest working version with no sync issues and will investigate further. I will comment on here with further information as I get it.

System Info Text Report
akeneo-pim-system-info_2017-05-17_20-51.txt

bug has-PR

Most helpful comment

@mickaelandrieu I was able to reproduce the error.

I have an attribute of type simple select called Item Name. When I add a new attribute option, that new option is added to all items in mongo under normalized data, item_name.

Steps

  1. Log in
  2. Go To Enrich
  3. Add new product
  4. Click + next to Item Name attribute
  5. Fill out Code with maynard
  6. Fill out Label (en) with Maynard
  7. Click Add

I ran this before and after clicking Add:
db.pim_catalog_product.find().sort({ "normalizedData.created": -1, "_id": 1 }).limit(10).skip(0).pretty();

normalizedData.item_name.code and normalizedData.item_name.optionValues.en_US.value are the fields that are updated for all 10 products from that query above.

When I run this query:
db.pim_catalog_product.find({ "normalizedData.item_name.code": "maynard" }).length()
I get the total number of products that I have entered, meaning all products have been updated.

Here is the debug log and the request information from the symfony profiler for the POST to the route /configuration/attribute_option/15. I am able to reproduce this so let me know if you need more information from the Symfony web profiler.

Profiler Akeneo Item Name error.xlsx

I hope this is enough information. Thanks.

All 7 comments

Hello @sportsreport2,

thanks for your feedback. Can you update your PIM to the latest 1.7.4 and check if you still have the issue?

You can use demo.akeneo.com to provide us a reproducible test case. I guess you are using a specific view to display the products, isn't it?

Regards

@mickaelandrieu I was able to reproduce the error.

I have an attribute of type simple select called Item Name. When I add a new attribute option, that new option is added to all items in mongo under normalized data, item_name.

Steps

  1. Log in
  2. Go To Enrich
  3. Add new product
  4. Click + next to Item Name attribute
  5. Fill out Code with maynard
  6. Fill out Label (en) with Maynard
  7. Click Add

I ran this before and after clicking Add:
db.pim_catalog_product.find().sort({ "normalizedData.created": -1, "_id": 1 }).limit(10).skip(0).pretty();

normalizedData.item_name.code and normalizedData.item_name.optionValues.en_US.value are the fields that are updated for all 10 products from that query above.

When I run this query:
db.pim_catalog_product.find({ "normalizedData.item_name.code": "maynard" }).length()
I get the total number of products that I have entered, meaning all products have been updated.

Here is the debug log and the request information from the symfony profiler for the POST to the route /configuration/attribute_option/15. I am able to reproduce this so let me know if you need more information from the Symfony web profiler.

Profiler Akeneo Item Name error.xlsx

I hope this is enough information. Thanks.

:-O

I realized there is missing information in the document I attached.
I reproduced the error using testing500 as the item name code and Testing 500 as the item name en_US value.

Here is the debug log and the request information from the symfony profiler for the POST to the route /configuration/attribute_option/15 for the time the testing500 attribute option was added.

Akeneo Profiler Info - Item Name Error.xlsx

Another discovery, in Mongo, normalizedData.item_name.id maps correctly to the pim_catalog_attribute_option mysql table. Even though normalizedData.item_name.code and normalizedData.item_name.optionValues.en_US.value don't. Which, I believe, is why the data is correct when I click into a product.

Hello @sportsreport2, you're right and the good news is that this issue will be fixed in the upcoming 1.7 patch. This PR fixes the issue : #6192
We'll let you know when the 1.7.5 is available.
Thanks!

Hello @sportsreport2, it's fixed in the latest 1.7 version released today.
You can now update your PIM installation to benefit from the latest fixes.
Kind regards,
Laure

Was this page helpful?
0 / 5 - 0 ratings

Related issues

gotgelf picture gotgelf  路  5Comments

paulchubatyy picture paulchubatyy  路  5Comments

pardahlman picture pardahlman  路  4Comments

Piotr-Borek picture Piotr-Borek  路  5Comments

wakqasahmed picture wakqasahmed  路  4Comments