Skip to content
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

CRv2: Enable the full pipeline #35013

Merged
merged 1 commit into from May 28, 2020
Merged

Conversation

hacodeorg
Copy link
Contributor

@hacodeorg hacodeorg commented May 28, 2020

PLC-839 Enable the full contact rollups V2 pipeline, which includes the 3 main steps:

  1. Collect and process contact data
  2. Sync new contacts to Pardot (creating new Pardot prospects).
  3. Sync updated contacts to Pardot (updating existing Pardot prospects).

Monitoring

Monitor Pardot

  • Monitor Pardot updates at the Website tracking campaign, which is the campaign assigned to contact rollups. Use filters = 'all prospects' + 'created/updated' + 'today'
  • To see updates from all campaigns, go to here.

Monitor the production database impact

Testing story

Manually test the full pipeline in production-daemon on 5/28/2020.

# Sync deleted and active prospects from Pardot to the production database.
# Note: save the current maximum prospect ID before syncing so we have a 
# milestone to redo sync operations if something fails.
max_id = ContactRollupsPardotMemory.maximum(:pardot_id)
ContactRollupsPardotMemory.download_deleted_pardot_prospects
ContactRollupsPardotMemory.download_pardot_prospects(max_id)

# Dry-run
# Note: Set `is_dry_run` to false to really send data to Pardot.
cr = ContactRollupsV2.new(is_dry_run: true)  # use false later
cr.collect_and_process_contacts
cr.sync_new_contacts_with_pardot  # add 165,810 prospects
cr.sync_updated_contacts_with_pardot   # update 43 prospects
cr.report_results

Links

  • Slack discussion with Marketing on deleting 700K prospects before running Contact Rollups so we don't go over the 3.2M mailable prospects limit.
  • Resolved Honeybadger error for query time-out issue.

Reviewer Checklist:

  • Tests provide adequate coverage
  • Code is well-commented
  • New features are translatable or updates will not break translations
  • Relevant documentation has been added or updated
  • User impact is well-understood and desirable
  • Pull Request is labeled appropriately
  • Follow-up work items (including potential tech debt) are tracked and linked

@hacodeorg hacodeorg requested review from bencodeorg and a team May 28, 2020 17:48
@hacodeorg hacodeorg marked this pull request as ready for review May 28, 2020 18:01
Copy link
Contributor

@islemaster islemaster left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

@hacodeorg hacodeorg changed the title Enable the full pipeline CR: Enable the full pipeline May 28, 2020
@hacodeorg hacodeorg changed the title CR: Enable the full pipeline CRv2: Enable the full pipeline May 28, 2020
@bencodeorg
Copy link
Contributor

bencodeorg commented May 28, 2020

I think typo in description but looks great!

# Note: Set is_dry_run to true to really send data to Pardot.

@hacodeorg
Copy link
Contributor Author

I think typo in description but looks great!

# Note: Set is_dry_run to true to really send data to Pardot.

Fixed ⚔️

@hacodeorg hacodeorg merged commit cd91ea9 into staging May 28, 2020
@hacodeorg hacodeorg deleted the ha/cr-enable-full-pipeline branch May 28, 2020 21:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants