-
Notifications
You must be signed in to change notification settings - Fork 52
Output of last points in continuous scan often comes too late #1651
Comments
Thanks for the report @johanfforsberg!
Regarding the message:
it was done like this on purpose. Since the scan data events are queued and processed by a worker thread we wanted to go ahead with the overshoot correction as soon as possible (when the measurement is done).
Or maybe you have some better solution? Many thanks! |
Sorry for forgetting about this ticket! I think option 2 is fine, unless you think the "overshoot" message is important enough to interrupt the table. In that case it's OK with me to keep it as it is. I'm not sure if it's something the general user needs to know. I feel that interrupting the table output should only be done if something "exceptional" happens. |
Thanks @johanfforsberg for sharing your opinion. Now, 3rd option comes to my mind, what we could do is to maintain the info log level but delay its print until all the data events are processed and the overshoot correction is done. Message of course would need to be rephrased to "Overshoot correction was done" instead of "Correcting overshoot...". This way it will not interrupt the table output. And it still may be interesting to see, especially since the overshoot correction became optional recently. |
That sould like the best solution to me. The user is not really able to act on the message during the scan anyway, being informed at the end should be just as useful. Sometimes it's good to let some time pass before acting; the best ideas are sometimes a bit slower :) |
Done in ead90c2.
Yes, it happens to me all the time.. :) |
Sometimes (~50% of times) the last point (and sometimes even the two last points) of the scan are output after some other output that is clearly about the end of the scan. E.g. the "Correcting overshoot..." message, see example output below.
This is confusing and also prevents adding more helpful output at the end (see #692) as it would be interleaved with the points table in confusing ways.
Here is an example (with "debug on"), note that point 10 is printed after "All data events are processed". Seems like there is some timing, or maybe buffer flushing problem going on?
The text was updated successfully, but these errors were encountered: