Nosto/nosto-magento2

"Associate to Website" is a required value.

will-wright1 opened this issue · 13 comments

Magento 2 version(s) used: 2.3.2
Extension version(s) affected: 4.0.0

Description
If I upgrade from 3.10.5 to 4.0.0 or 4.0.1 I get the following error on setup:upgrade:
Module 'Nosto_Tagging':
Upgrading data.. "Associate to Website" is a required value.

How to reproduce
Upgrade Nosto module via composer from 3.10.5 to 4.0.0 or 4.0.1 and it shows the error in the console.

Magento 2 mode
Production

Full page cache
Enabled

Nosto indexer mode
Update By Schedule

Turns out if you have some customers in your database attached to a deleted store you get this message.

If you delete these customers the message goes away.

I now get the error:
Module 'Nosto_Tagging':
Upgrading data.. "Street Address" cannot contain more than 2 lines.

Has Nosto changed the code so it's very strict on data integrity?

Thanks for reporting this @webamondo. We'll look into this asap.

Hi @webamondo,
I've tried to reproduce your issue but I couldn't make it fail.
Here are the steps I have tried:
1 - Checked out 3.10.5 version of the extension
2 - Created a Website
3 - Created a customer and assigned to the website
4 - Deleted the website
5 - Updated to 4.0.0 running setup:di:compile && setup:upgrade

I have tried twice. Once sharing customers between websites and once not sharing.
Let me know If I have missed any steps or how do you reproduce this.

Alternatively, you can wrap this call in a try-catch block and log us the exception:
https://github.com/Nosto/nosto-magento2/blob/develop/Setup/CoreData.php#L178

@supercid after you deleted the store, what was the value for store_id associated to the customer? In my case it was NULL

Hi @webamondo and @KevinOxwork
We have a new release, can you guys give it a shot and let us know how it goes?
https://github.com/Nosto/nosto-magento2/releases/tag/4.0.2

@supercid that's worked for me on the address issue, can't comment on the store_id issue as I deleted those customers from the database.
Thanks!

@webamondo Perfect! I'll close this as done, but feel free to open another issue if something else shows up.

@supercid I tried to update but that's not worked for me. I'm stuck on setup:upgrade => "Module 'Nosto_Tagging' Upgrading data.. " and nothing happen.

When I check logs I got this error :
nosto.ERROR: Magento\Framework\Validator\Exception: "Street Address" cannot contain more than 2 lines. in C:\wamp64\www\magento2\web\www\vendor\magento\module-customer\Model\ResourceModel\Address.php:108

UPDATE : I also have found this error :
nosto.ERROR: Magento\Framework\Validator\Exception: "Phone Number" is a required value. in C:\wamp64\www\magento2\web\www\vendor\magento\module-customer\Model\ResourceModel\Address.php:108

Hi @KevinOxwork
Can you check the timestamp for this error message?
What can be happening is that Upgrading data is actually reindexing your catalog. How big is your catalog?

THank for your reply @supercid !
This error message have been written in logs right now.
For the upgrading process we have about 180 000 entries in our customer_entity table and our catalog contains about 70 000 products.

@supercid for information, the setup:upgrade process is still running and i have a 170Mo log file. I stop the process and stay on v3.10.5

Hi @KevinOxwork,
Apologies for the delay, I was working on a fix.
Would you like to give it a shot once we release?
#649

Hi @supercid ! Ok i will have a look at this and i'll test it once you released