Ramkumar Aiyengar b4aafbb606 SOLR-7859: Clamp down on use of System.currentTimeMillis
- Use RTimer where currentTimeMillis is used for timing
 - Abstract out a new class TimeOut for when currentTimeMillis/nanoTime
   is used to timeout operations.
 - Used `new Date()` in some cases where that is the logical intent.
 - Deprecated a couple of APIs which were publicly exposing epoch time,
   in favour of Date objects to make the intent clearer.
 - A couple of cases had currentTimeMillis in dead code.
 - In some cases where currentTimeMillis was used to just generate a name,
   used nanoTime instead (really it should be some sequence/random number
   in such a case).
 - In some other cases where stamps were used for SQL queries, HTTP headers,
   comparing against data in external files, ZK etc., used SuppressForbidden.
 - Also currently allow the use of currentTimeMillis in commit data,
   this is then used in replication -- this is concerning since absolute
   times are being compared, but that can be dealt with separately.



git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1694798 13f79535-47bb-0310-9956-ffa450edef68
2015-08-08 13:39:58 +00:00
..
2015-01-06 16:15:58 +00:00