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 machinery fail. Please file a ticket to switch Ignite's timeouts to nanoTime() at some point. --Yakov
