Hi Sergey,
On 21/10/2019 20:47, Sergey Bylokhov wrote:
Hi, Alexey.
On 10/21/19 12:11 pm, Alexey Ivanov wrote:
I was running this test in different configurations and found that
the expected exception is thrown at 20-25 thousand iterations
(32-bit). It usually takes 3-4 minutes.
If a Garbage Collector cycle is triggered, Java objects
(BufferedImage) are disposed of, and native resources are freed. If
it happens, the test will not throw the expected exceptions. When
using 64-bit JRE, a GC is triggered after 65 thousand iterations,
which takes about 30-40 minutes. I had to use SerialGC because the
default G1 reclaims Java objects too fast, so that the error
condition is never reached.
I am not sure that these exceptions are really "expected", the test
just passes if some of them are thrown, but when I run this test on
macOSx64 it is completed in 3 minutes w/o any exception(300_000
iterations were completed successfully). Why it is so slow in your
environment?
Yes, I noticed that the test is pretty fast both on Linux and Mac but
it's not as fast on Windows. In fact, I reproduced the bug only on
Windows and only on 32 bit. The bug was in shared code, that's why the
test is not Windows-specific.
--
Regards,
Alexey