User profiles get stuck in update loop, even if profile wasn't updated

When this plugin is connected to MC via the API and a callback, the plugin appears to constantly update user profiles, even though no profile changes were made.

Steps to reproduce are:

- Setup Mailchimp plugin
- Connect via MC API key
- Enable callback both in MC & this plugin
- Create a user on MC
- User syncs to WP system as expected
- Check log for multiple repeat requests to update the plugin.

I notice that since enabling the plugin on a test environment, my site keeps giving 504 error (not enough resources) and I'm concerned that the plugins constant updating contacts is the cause.

Our host is WPEngine, latest Wordpress version, tested with the same behaviour on single and multisite setups.

Here are some screenshots showing the log and how the plugin is configured (note that I removed our MC API key for the settings screenshot).

https://www.dropbox.com/sh/s7hkq99xraybryx/AACjMTsb7kQ96N8fUrtY_8GHa?dl=0

Thanks

  • Sajid

    Hi @Rajeev Shah

    Hope you are doing good :slight_smile:

    After enabling API and adding a user (subscriber) on Mailchimp. It successfully created a user for that email address. Also I can see lots of updates in webhooks log. Each time I make changes on Mailchimp it will be pushed to the connected website (Mailchimp is very fast by the way).

    But one thing I noticed is that if I update user A on Mailchimp its also trying to update user B (in that list).

    I am going to mark it as bug and reporting the developer. Thanks for bringing it into our attention :slight_smile:

    Cheers, Sajid

  • Ignacio

    Hi @Rajeev Shah.

    You must not activate the "via the API" option when creating your webhook.

    Mailchimp plugin make uses of the Mailchimp API. When a user is updated in Mailchimp, it triggers the Webhook, that triggers the API, that triggers the Webhook again, that triggers the API one more time, that triggers the Webhook... Well, you know :slight_smile:.

    I would delete the webhook and create a new one without that option checked, just in case.

    That worked for me at least. Let me know it it does for you.

    Regards.
    Ignacio.