Hadoop 3.0 NN drops replicas silently

Aperta
#64 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Ferma
Stack tecnologico
hadoop, java

Direzione di ricerca

Individua SimulatedBPStorage.blockMap e verifica come vengono archiviate e riportate le repliche dei blocchi DataNode simulate. Verifica il comportamento rispetto al requisito sull’ordinamento dei block report del NameNode descritto nell’issue, quindi esegui i test di simulazione Dynamometer o HDFS pertinenti, se disponibili. Il lavoro è completato quando le repliche vengono riportate in ordine crescente di block-id senza che i blocchi vengano eliminati silenziosamente.

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

Descrizione

In Hadoop 3.0/CDH5.7 and above,
HDFS-9260 (Improve the performance and GC friendliness of NameNode startup and full block reports) changed the internal representation of block replicas, as well as the block report processing logic in NameNode.

After HDFS-9260, NN expects block replicas to be reported in ascending order of block id. If a block id is not in order, NN discards it silently. Because simulated DataNode in Dynamometer uses hash map to store block replicas, the replicas are not reported in order. The Dynamometer cluster would then see missing blocks gradually increase several minutes after NN starts.

Suggest to change SimulatedBPStorage.blockMap to a TreeMap sorted by block id. Will supply a patch for the proposed change.

Credit: @fangyurao for identifying the issue, and help verifying the fix.

Lingua principale
Java
Stelle
134
Fork
34
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di linkedin/dynamometer

Tutte le issue di linkedin/dynamometer

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.