On Thu, 11 Jul 2024 09:51:10 GMT, Fernando Guallini <fguall...@openjdk.org> 
wrote:

> The manual test Cipher/DES/PerformanceTest.java fails with 
> ArithmeticException due to potential division by zero. The issue arises when 
> calculating the elapsed time using end - start, which could result in zero 
> milliseconds if start and end are identical due to the high speed of 
> execution. This leads to a division error in the following code snippet:
> 
> 
> start = System.currentTimeMillis();
> end = System.currentTimeMillis();
> int speed = (int)((data.length * count)/(end - start));
> 
> The fix is to provide a default value in case _end_ is not higher than 
> _start_.

test/jdk/com/sun/crypto/provider/Cipher/DES/PerformanceTest.java line 186:

> 184:         end = System.currentTimeMillis();
> 185: 
> 186:         // To avoid diving by zero if end is equal to start

Test is performing 100 and 1000 rounds of `update`. I don't think we are seeing 
same start and end. Please test further to determine root cause. Could be the 
case of overflow if `update` is taking long time.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/20135#discussion_r1677450326

Reply via email to