apache / apache/iotdb

Replace `new Random()` with `ThreadLocalRandom`

Aperta
#6,142 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
6.4k
Fork
1.2k
Merge medio
1g 23h
PR unite (30g)
115

Descrizione

`ThreadLocalRandom` provides better performance than `Random`. I think we should replace the `Random` class except test files or example files.

I search the project files, the `Random` class in the following class or method should be replaced:

- Method: `org.apache.iotdb.influxdb.session.InfluxDBSession#reconnect`
- Class: `org.apache.iotdb.cluster.log.snapshot.PullSnapshotTask`
- Class: `org.apache.iotdb.cluster.server.heartbeat.HeartbeatThread`
- Abstract Class: `org.apache.iotdb.cluster.server.member.RaftMember`
- Class: `org.apache.iotdb.db.engine.modification.ModificationFile`
- Class: `org.apache.iotdb.db.engine.storagegroup.TsFileResource`
- Method: `org.apache.iotdb.db.service.thrift.impl.InternalServiceImpl#getHeartBeat`
- Method: `org.apache.iotdb.session.SessionConnection#reconnect`
- Class: `org.apache.iotdb.library.dprofile.UDTFSample`
- Class: `org.apache.iotdb.commons.udf.builtin.UDTFEqualSizeBucketRandomSample`

Related issue: #5880

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Individua le classi e i metodi Java elencati, inclusi InfluxDBSession#reconnect, PullSnapshotTask, HeartbeatThread, RaftMember, ModificationFile, TsFileResource, InternalServiceImpl#getHeartBeat, SessionConnection#reconnect, UDTFSample e UDTFEqualSizeBucketRandomSample. Esamina ogni utilizzo di Random in produzione, escludendo i file di test e di esempio. Il lavoro è completato quando gli utilizzi idonei elencati usano ThreadLocalRandom e la issue correlata #5880 rimane coerente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
backend, databases
Tipo di issue
Refactoring
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.