Je ssh au maître et exécute mon travail hadoop sur la console à des fins de développement. Mon travail échoue d'une manière mystérieuse, avec de nombreuses traces de pile java qui ne font pas de sens pour moi, voir ci-dessous:Mon travail Python que je cours sur le maître du cluster EMR échoue, comment puis-je résoudre les problèmes?
java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 143
at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:322)
at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:535)
at org.apache.hadoop.streaming.PipeMapper.map(PipeMapper.java:120)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:54)
at org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:455)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:344)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698)
Aujourd'hui, j'ai dû utiliser cela pour résoudre un problème dans une tâche EMR. J'ai essayé de trouver le journal dans S3 où les journaux sont déversés et auraient dû être dans un fichier appelé quelque chose comme "j-XXXXXXXXXXXXXXX/containers/application_151935143321369_0010/container_151239351321369_0010_01_001374/stderr.gz" mais ce fichier n'existe pas pour les tâches échouées. J'ai donc dû reproduire la situation, laisser le cluster fonctionner après la panne et suivre la direction. – gae123