Nickolay, IgniteUtils#currentTimeMillis() is some kind of an old heritage.
I guess nobody remembers when this method has been introduced. I agree that
we can use System.currentTimeMillis(). I would suggest you file a ticket
and replace this method calls with System.currentTimeMillis(). Sounds good?
As far as reliable elapsed time measurement I agree with you that
nanoTime() is better here, but it is definitely not a reason for mentioned
failure, since that test is launched in single JVM on a machine that most
probably does not do any ntp syncs during the test to make Ignite's timeout
Please file a ticket to switch Ignite's timeouts to nanoTime() at some