commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles (JIRA)" <>
Subject [jira] [Created] (MATH-1341) "RandomDataGenerator" is brittle
Date Mon, 14 Mar 2016 11:45:33 GMT
Gilles created MATH-1341:

             Summary: "RandomDataGenerator" is brittle
                 Key: MATH-1341
             Project: Commons Math
          Issue Type: Bug
            Reporter: Gilles
            Priority: Minor
             Fix For: 4.0

Class {{RandomDataGenerator}} can easily be misused as it advertizes a method to access its
internal RNG (which is _not_ thread-safe).

The class is also a mixed bag of "data generators" that are either "secure" or not.
Moreover it uses the "lazy initialization" pattern (for the RNG instance) solely because of
this duality; otherwise users that need one or the other form of data generation will obviously
always use the RNG since all data generation methods need it.
This entails also a performance hit (albeit tiny) as each call checks whether the RNG has
been initialized already.
The clean solution would be to separate the two types of data generation (secure vs not) into
different classes.

This message was sent by Atlassian JIRA

View raw message