Hodor's destiny as a code analogy
- JustAGuy

- Jun 24, 2021
- 2 min read
Updated: Jun 24, 2021
This is the email I just wrote to my awesome QA person, full of details on the bug she's going to research for me. This mother effer took me 5 days to find.
Alrighty QAPerson,
So it looks like my EFT based member fix was successful. Yay, 7th time's the charm! We'll know if Hodor (that's what I'm naming this bug) fulfills his destiny, and perishes tonight during normal automation.
Hodor is characterized by a sharp increase in EFT based memberships showing as a result of a Studio converting from SystemA to SystemB. It is more apparent when running the Snapshot Daily and spanning multiple days pre and post conversion date. Ordinarily, the first thing to do is compare Dev against Prod, to see if I broke anything else while fixing Hodor. (spoiler: I did)
So instead of you doing that, I'll have you (in Dev) check some Studios's Membership Rollup (EFT Based only) pre/post conversion, and see if there's a pattern in the tiny differences that still remain. Make sure to hit at least two studios from each Cohort, the louder the Franchisee, the better. I'm curious if Hodor started bad and got better, or if he's just as bad across the Cohorts. Logic/QA note: Everything is built on IGID, but the warehouse also does some extra magic to fill in the gaps. So you'll run into clients with differing rssid's, and misc empty key fields, but they are magically merged in the warehouse. This is expected, but we must be careful my magic doesn't suddenly look like the Night King, merging all in his path. Copied the other IT peeps because I think I'm funny, and Hodor has been difficult. ,JustAGuy
The more I think about it, Hodor is the perfect analogy for my bug, even though I totally cried when the real Hodor died.
The bug was a result of a piece of my data warehouse being out of phase with the chronology of the rest of the job. Something needed to happen before something else.
Every attempt to find it, looked like the code was just fine, because testing is always out of phase with warehouse time.
When I fixed time itself, Hodor went away, off into the annals of history.
What Hodor did, was expose a pretty significant weakness in one of my go-to code snippets, but only appears in a very specific chronology of events.
Dammit. I'm totally the Night King. I need the white walkers to get through the door. I need Hodor to perish. I'm the bad guy in my own analogy, wth?

I think I'm funny asf. Just found out QAPerson never even saw Game of Thrones. All my careful work working it into the analogy.... Oh well, I still think it's funny asf.

Comments