I believe sql server was piping unicode characters over to Splunk which may have broken down after Python tried to print those characters via stdout. The following strips down to ascii characters:
out = "".join(i for i in row.responseFromSQL if ord(i)<128)
After this change, I've been unable to recreate the problem. Users can now navigate the search app.
On a side note, getUserInfo is still being called roughly 10 times each second after an Admin brings up the roles page. I consider that a bug as I'm sure my DBA will not be thrilled.
... View more