Salesforce Internal Server - What's in a GACK?
Background I have been working with Salesforce Support for several weeks now trying to get them to escalate an internal server error with GACK 2134764861-123797 (1611479512) (1611479512). After a long period of waiting I was told that in order to escalate quickly they needed to reproduce the issue in a controlled way. This was again taking them a considerable amount of time so I created a reduced test case myself (https://github.com/dsharrison/spring-17-ant-error-reproduction) that concisely reproduces the issue with a very small amount of code. I was told that this wasn't a valid reproduction because it caused a different GACK (1291518605-518052 (1659192199) (1659192199)) despite reproducing the exact same user experience. My Question What makes up a GACK? Is there any information that I can take from their structure that can give me clues on which errors are related without access to the full back-end tools that Salesforce Support uses? It is not infrequent that without premier support it takes me upwards of two weeks to escalate platform bugs and I am hoping that I can somehow use the information from the GACK to reduce this time. What is Gack in salesforce?
If you are familiar with Salesforce, you have probably encountered a screen saying "An internal server error has occurred." That screen is what we call a GACK. This message is part of an elaborate system for efficiently bringing these events to the attention of R&D. The best publicly available information on the structure of a gack is this blog post from Josh Kaplan Specifically, These two numbers, respectively, are the identifying ID for that specific event, and the general stack trace that was produced by that failure. Since the numbers are different (specifically the parenthesized number) that would mean that your repro is getting a different stack trace and "Id" for lack of a better term. With that said, outside of matching either portion of the GACK they aren't useful to you. Think of them more as serial numbers for SFDC to use when looking at error logs. On that note, if you're still able to reproduce the issue please add a comment on my answer and I'll see about finding you some help.