You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Vyacheslav Tutrinov (Jira)" <ji...@apache.org> on 2023/10/03 11:39:00 UTC

[jira] [Created] (HDDS-9379) Thread-local UUID generator and non-blocking random numbers source

Vyacheslav Tutrinov created HDDS-9379:
-----------------------------------------

             Summary: Thread-local UUID generator and non-blocking random numbers source
                 Key: HDDS-9379
                 URL: https://issues.apache.org/jira/browse/HDDS-9379
             Project: Apache Ozone
          Issue Type: Sub-task
          Components: OM
    Affects Versions: 1.4.0
            Reporter: Vyacheslav Tutrinov
            Assignee: Vyacheslav Tutrinov
         Attachments: 2023-10-03-142452_3739x1926_scrot.png

We've made a load test: upload 15mlns of 1k files and tried to read them from 150 threads (3 clients in 50 threads). A high contention was detected (47 seconds hung in a 5-minute profile session) in sun.security.provider.SecureRandom.engineNextBytes(byte[]), it uses java.util.UUID.randomUUID() (synchronized method).

!2023-10-03-142452_3739x1926_scrot.png!

The UUID instance should be thread-local and the source of randomness should be non-blocking ({{{}/dev/urandom{}}}, {{{}-Djava.security.egd=[file:/dev/./urandom|file:///dev/urandom]{}}})



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org