I should add I changed the schema to use varchar for the payload to get the length function to run on it.

As mentioned in the comments on the blog the wizard implementation is buggy and reads beyond the end of the string, but we can fix that because we know the string length and can set the bounds for 8 byte comparison correctly.

The only problem is I don't know how vectorization works so if we change stuff I don't know if we will break it without plumbing assembly (hooray!). I am not even confident the code will be vectorized on all versions of GCC. We might be able to find a library function for strings with a known prefix that already do this stuff.