How to find out what's going on
Wed Jan 4 02:18:31 CET 2006
On 4 Jan 2006, at 00:40, Joel Reymont wrote:
> I'm sure that I did not make any copy/paste mistakes. Indeed, the
> lines are printed in reverse order but could it be that disk_log
> does not guarantee the order? I did not look at the disk_log code
> but it seems more likely that the terms were logged in reverse order.
No. messages between two processes arrive in the order they are sent.
It does look like there might be a bug in your program.
Also, I just noticed that you get this problem with only 10 bots. You
are unlikely to run into scheduler issues with that many.
> The printout is from opening the disk log and printing all entries
> where pid is the one that I'm looking for.
> On Jan 4, 2006, at 12:36 AM, Per Hedeland wrote:
>>> trace(Bot, 90, "Received: ~.6. fs: ~p",
>>> [Seconds, Cmd1]),
>>> trace(Bot, 80, "Received: ~.6. fs: ~p",
>>> [Seconds, element(1, Cmd1)]);
>> Hm, are you sure? Seems to me the that if the first line was logged
>> by the first trace call, the second trace call would have caused a
>> badarg (from element(1, srv_table_state)). I.e. unless you did some
>> copy'n'paste mistake here, it's more likely that the first line is
>> logged by the second trace call, and the second line is logged by the
>> first trace call the next time you run through this particular
>> piece of
>> code - we sure don't know what happened in between.:-)
>> --Per Hedeland
More information about the erlang-questions