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
Intermittent errors #4
Comments
Any update on this? |
…f the top of the trace stack, and then there's line info, we crash trying to find out about the line. To fix it, all we do is ignore line info if we've traced off the top of the stack.
Sorry, last time I looked at this I was pushed for time and couldn't work anything out because the stack traces in the two are exactly the same. Turns out that the problem is that both traces trace off the top of the trace stack (I'm not quite sure how this happens because when the trace starts there's an attempt to build the full current stack), but a the failing trace records a line with non-zero time when were "above" the top of the stack. The quick and dirty solution is to just ignore time that occurs in a stack frame we don't know about. |
… that's not in the current function, we guess that LuaJIT forgot to tell us about a return and move up a stack frame. We do this even if the stack frame above doesn't work either. Now, we check if the stack frame above actualy works. If it doesn't, we complain, but we don't move up the extra stack frame.
Nope, that wasn't it at all. |
Well, with your latest changes I can't reproduce the issue, so it seems to be fixed :) Thanks a lot! |
The following code makes the
luatrace.profile
script to fail sometimes.It gives the following error:
The strange thing is that sometimes it works fine.
To reproduce, install json4lua with luarocks and run the provided script. The script, a trace that succeeds and a trace that fail are available here.
The text was updated successfully, but these errors were encountered: