-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Product SalesChannel visibility bug #5
Comments
Just now it happened again in our shop. We have multiple saleschannels on 1 shopware backend. By killing the ProductVisibilitySync process we prevent the shop from being completely empty. This is a pretty urgent bug! |
@keeskuijpers Do you have all the products assigned to all saleschannels or are there some that are only two certain saleschannels assigned? How are the settings of the plugin set? We do need this kind of information to try to replicate the issue so we can debug it. |
Hi, |
@keeskuijpers could you share how you have done those settings in the plugin config? (Please make sure that data that you do not want to be public is redacted) My main focus point now is that ProductVisibilityTransformer, here is determined which visibilities should be deleted and which should be added to the product. Does this problem always exists or at random? |
Hi, the problem occurs occasionally, 2 - 4 times a week with no apparent cause. The segments are linked by the api key of the respective segment. From the plugin configuration we choose the saleschannel from the dropdown and place the api key. The default extension config has the apikey which contains all available products for the shop. |
@keeskuijpers I have created the same situation on our test instance, and debugged the visibility sync. There is not a clear cause of this happening.
So the place for it going wrong would be in the ProductVisibilitySyncProcessor where the multidimensional array is constructed, that there the SalesChannelId is not filled for that SKU. Or the only other place would be in the ProductVisibilityTransformer who creates the data that is being used for upserting or deleting. But that last data is based on the multidimensional array and if there would be a logic fault, it should happen more often and on more installations. The only way I am now seeing to get to the bottom of this and find out what is happening is to literally debug this and write the incoming data to a log file and also the out coming data of the ProductVisibilityTransformer and compare those when the problem is happening. |
Hi, Thanks for your detailed explanation to investigate this problem. For your information in our shop it happened 2x today. By killing the php process we stop the disconnection of the sku's. If we don't do this the process removes per sku the link to the 3 saleschannels with their own api key. All sku's are removed as if there is no saleschannel id. The remaining saleschannels associated with the default configuration do remain populated. I have no insight into the structure of the process but this seems quite illogical. That the default configuration does not disconnect anything at the remaining saleschannels. |
@keeskuijpers I do get that it's not logical and we also think it's quite strange, but we have taken and tested the code that is part of the ProductVisibilitySync and can't see any bugs with the data we are getting from our Ergonode instance. The only way to figure out what is happening we can think of for now is logging the data that is being retrieved from Ergonode and the ProductVisibilityDTO that are generated from that data. Then we know in which direction to search further if that is data based or code based. Would it be possible for you to log that data? If so, then the following would be nice to have logged:
|
We have implemented the requested logging. |
Just now it happened again, herewith the log. I have masked the ids for display here. This is from 1 sku, in reality all sku's were so deleted again Product Visibility DTO: Ergonode\IntegrationShopware\DTO\ProductVisibilityDTO Object
) |
@keeskuijpers as I can see from the above I do see that the product should have only 4 assigned SalesChannels, is this correct? And one SalesChannel association is newly added. Did you also have a log of the $gqlClientGenerator? This way we can check if it goes through all SalesChannels that are available in Shopware. That is the only possible thing now that or the data from Ergonode isn't correct or that not for every SalesChannel the products are retrieved from Ergonode. |
@thijsMemoICT |
@keeskuijpers was this the first time it got this product in the sync? As I read the data in the log, it says it has added a SalesChannel to the product. Maybe we can take a look together outside of Github to the issue in a videocall to hopefull fix this a bit faster. |
Hi, |
@keeskuijpers I have sent you a email at your companies info address, could you reply when we could make a call. |
The following bug also occurred in earlier versions.
Within ergonode, we have segments linked to saleschannels.
randomly, this does not always seem to go well. Then suddenly all products are removed one by one from a saleschannel to be added again later.
What is striking is that this only happens with linked ergonode saleschannels.
We have not yet been able to discover what triggers this and since this seems to happen @Randomly this is very undesirable and causes loss of sales and customers.
The text was updated successfully, but these errors were encountered: