[ https://issues.apache.org/jira/browse/HADOOP-16311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
AiBe Gee resolved HADOOP-16311. ------------------------------- Resolution: Duplicate Duplicate of YARN-8498 > Hadoop build failure - natively on ARM (armv7) - oom_listener_main.c issues > --------------------------------------------------------------------------- > > Key: HADOOP-16311 > URL: https://issues.apache.org/jira/browse/HADOOP-16311 > Project: Hadoop Common > Issue Type: Bug > Components: build > Affects Versions: 3.2.0 > Environment: Linux ARM (armv7) > Reporter: AiBe Gee > Priority: Major > > After failing to build Hadoop 3.3.0 - latest git snapshot, described in: > https://issues.apache.org/jira/browse/HADOOP-16309 > I went on and tried my luck with the 3.2.0 release, only to find out that I'm > unable to build this version too. Environment is the same as described in: > https://issues.apache.org/jira/browse/HADOOP-16309 > Just the source archive is different: > https://archive.apache.org/dist/hadoop/common/hadoop-3.2.0/hadoop-3.2.0-src.tar.gz > Hadoop build failure log snippet: > [WARNING] make[2]: Leaving directory > '/kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/target/native' > [WARNING] [ 44%] Built target container > [WARNING] [ 47%] Linking CXX static library libgtest.a > [WARNING] /usr/bin/cmake -P CMakeFiles/gtest.dir/cmake_clean_target.cmake > [WARNING] /usr/bin/cmake -E cmake_link_script CMakeFiles/gtest.dir/link.txt > --verbose=1 > [WARNING] /usr/bin/ar qc libgtest.a > CMakeFiles/gtest.dir/kit/hadoop-3.2.0-src/hadoop-common-project/hadoop-common/src/main/native/gtest/gtest-all.cc.o > [WARNING] /usr/bin/ranlib libgtest.a > [WARNING] make[2]: Leaving directory > '/kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/target/native' > [WARNING] [ 47%] Built target gtest > [WARNING] make[1]: Leaving directory > '/kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/target/native' > [WARNING] /usr/bin/ld: > CMakeFiles/oom-listener.dir/main/native/oom-listener/impl/oom_listener_main.c.o: > in function `main': > *[WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/impl/oom_listener_main.c:89: > undefined reference to `cleanup'* > [WARNING] collect2: error: ld returned 1 exit status > [WARNING] make[2]: *** [CMakeFiles/oom-listener.dir/build.make:99: > target/usr/local/bin/oom-listener] Error 1 > [WARNING] make[1]: *** [CMakeFiles/Makefile2:222: > CMakeFiles/oom-listener.dir/all] Error 2 > [WARNING] make[1]: *** Waiting for unfinished jobs.... > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/modules/gpu/gpu-module.c: > In function ‘handle_gpu_request’: > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/modules/gpu/gpu-module.c:196:9: > warning: ‘strncpy’ specified bound 128 equals destination size > [-Wstringop-truncation] > [WARNING] 196 | strncpy(container_id, optarg, MAX_CONTAINER_ID_LEN); > [WARNING] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/modules/fpga/fpga-module.c: > In function ‘handle_fpga_request’: > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/modules/fpga/fpga-module.c:196:9: > warning: ‘strncpy’ specified bound 128 equals destination size > [-Wstringop-truncation] > [WARNING] 196 | strncpy(container_id, optarg, MAX_CONTAINER_ID_LEN); > [WARNING] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c: > In function ‘normalize_mount’: > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c:1041:9: > warning: ‘strncpy’ output truncated before terminating nul copying as many > bytes from a string as its length [-Wstringop-truncation] > [WARNING] 1041 | strncpy(ret_ptr, real_mount, len); > [WARNING] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c:1034:20: > note: length computed here > [WARNING] 1034 | size_t len = strlen(real_mount); > [WARNING] | ^~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c: > In function ‘check_trusted_image’: > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c:128:9: > warning: ‘strncpy’ output truncated before terminating nul copying as many > bytes from a string as its length [-Wstringop-truncation] > [WARNING] 128 | strncpy(registry_ptr, privileged_registry[i], len); > [WARNING] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/docker-util.c:125:17: > note: length computed here > [WARNING] 125 | int len = strlen(privileged_registry[i]); > [WARNING] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.c: > In function ‘mount_cgroup’: > [WARNING] > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.c:2445:19: > warning: ‘stpncpy’ output truncated before terminating nul copying as many > bytes from a string as its length [-Wstringop-truncation] > [WARNING] 2445 | char *buf = stpncpy(hier_path, mount_path, > strlen(mount_path)); > [WARNING] | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > [WARNING] make: *** [Makefile:84: all] Error 2 > [INFO] > ------------------------------------------------------------------------ > [INFO] Reactor Summary for Apache Hadoop Main 3.2.0: > [INFO] > [INFO] Apache Hadoop Main ................................. SUCCESS [ 9.998 > s] > ... > [INFO] Apache Hadoop YARN Server Common ................... SUCCESS [03:56 > min] > [INFO] Apache Hadoop YARN NodeManager ..................... FAILURE [04:08 > min] > [INFO] Apache Hadoop YARN Web Proxy ....................... SKIPPED > ... > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 03:03 h > [INFO] Finished at: 2019-05-13T05:06:13+03:00 > [INFO] > ------------------------------------------------------------------------ > [ERROR] Failed to execute goal > org.apache.hadoop:hadoop-maven-plugins:3.2.0:cmake-compile (cmake-compile) on > project hadoop-yarn-server-nodemanager: make failed with error code 2 -> > [Help 1] > Did some investigation, went for a manual compilation of the affected source > tree: > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/target/native# > make -j 4 V=1 > Scanning dependencies of target oom-listener > [ 5%] Built target gtest > [ 38%] Built target container > [ 41%] Building C object > CMakeFiles/oom-listener.dir/main/native/oom-listener/impl/oom_listener_main.c.o > [ 44%] Building CXX object > CMakeFiles/test-oom-listener.dir/main/native/oom-listener/test/oom_listener_test_main.cc.o > [ 50%] Built target container-executor > [ 52%] Building CXX object > CMakeFiles/cetest.dir/main/native/container-executor/test/utils/test_docker_util.cc.o > [ 58%] Built target test-container-executor > [ 61%] Linking C executable target/usr/local/bin/oom-listener > /usr/bin/ld: > CMakeFiles/oom-listener.dir/main/native/oom-listener/impl/oom_listener_main.c.o: > in function `main': > */kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/impl/oom_listener_main.c:89: > undefined reference to `cleanup'* > collect2: error: ld returned 1 exit status > make[2]: *** [CMakeFiles/oom-listener.dir/build.make:99: > target/usr/local/bin/oom-listener] Error 1 > make[1]: *** [CMakeFiles/Makefile2:222: CMakeFiles/oom-listener.dir/all] > Error 2 > make[1]: *** Waiting for unfinished jobs.... > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc: > In member function ‘virtual void OOMListenerTest_test_oom_Test::TestBody()’: > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:256:7: > error: ‘__WAIT_STATUS’ was not declared in this scope; did you mean > ‘ADJ_STATUS’? > 256 | __WAIT_STATUS mem_hog_status = {}; > | ^~~~~~~~~~~~~ > | ADJ_STATUS > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:257:30: > error: ‘mem_hog_status’ was not declared in this scope > 257 | __pid_t exited0 = wait(mem_hog_status); > | ^~~~~~~~~~~~~~ > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:275:20: > error: expected ‘;’ before ‘oom_listener_status’ > 275 | __WAIT_STATUS oom_listener_status = {}; > | ^~~~~~~~~~~~~~~~~~~~ > | ; > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:276:30: > error: ‘oom_listener_status’ was not declared in this scope; did you mean > ‘oom_listener’? > 276 | __pid_t exited1 = wait(oom_listener_status); > | ^~~~~~~~~~~~~~~~~~~ > | oom_listener > make[2]: *** [CMakeFiles/test-oom-listener.dir/build.make:76: > CMakeFiles/test-oom-listener.dir/main/native/oom-listener/test/oom_listener_test_main.cc.o] > Error 1 > make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/test-oom-listener.dir/all] > Error 2 > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/utils/test_docker_util.cc: > In member function ‘char* ContainerExecutor::TestDockerUtil::flatten(args*)’: > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/utils/test_docker_util.cc:107:20 > warning: ‘char* strncpy(char*, const char*, size_t)’ output truncated > before terminating nul copying 1 byte from a string of the same length > [-Wstringop-truncation] > 107 | strncpy(buffer + current_len, " ", 1); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > make[2]: *** wait: No child processes. Stop. > make[2]: *** Waiting for unfinished jobs.... > Then at line 89 in > hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/impl/oom_listener_main.c > - commented: > /* cleanup(&descriptors); */ > Tried a manual compilation again and got into more errors: > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/target/native# > make -j 4 V=1 > Scanning dependencies of target oom-listener > [ 5%] Built target gtest > [ 8%] Building C object > CMakeFiles/oom-listener.dir/main/native/oom-listener/impl/oom_listener_main.c.o > [ 41%] Built target container > [ 44%] Building CXX object > CMakeFiles/test-oom-listener.dir/main/native/oom-listener/test/oom_listener_test_main.cc.o > [ 50%] Built target container-executor > [ 52%] Building CXX object > CMakeFiles/cetest.dir/main/native/container-executor/test/utils/test_docker_util.cc.o > [ 58%] Built target test-container-executor > [ 61%] Linking C executable target/usr/local/bin/oom-listener > [ 63%] Built target oom-listener > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc: > In member function ‘virtual void OOMListenerTest_test_oom_Test::TestBody()’: > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:256:7: > error: ‘__WAIT_STATUS’ was not declared in this scope; did you mean > ‘ADJ_STATUS’? > 256 | __WAIT_STATUS mem_hog_status = {}; > | ^~~~~~~~~~~~~ > | ADJ_STATUS > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:257:30: > error: ‘mem_hog_status’ was not declared in this scope > 257 | __pid_t exited0 = wait(mem_hog_status); > | ^~~~~~~~~~~~~~ > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:275:20: > error: expected ‘;’ before ‘oom_listener_status’ > 275 | __WAIT_STATUS oom_listener_status = {}; > | ^~~~~~~~~~~~~~~~~~~~ > | ; > /kit/hadoop-3.2.0-src/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/oom-listener/test/oom_listener_test_main.cc:276:30: > error: ‘oom_listener_status’ was not declared in this scope; did you mean > ‘oom_listener’? > 276 | __pid_t exited1 = wait(oom_listener_status); > | ^~~~~~~~~~~~~~~~~~~ > | oom_listener > make[2]: *** [CMakeFiles/test-oom-listener.dir/build.make:76: > CMakeFiles/test-oom-listener.dir/main/native/oom-listener/test/oom_listener_test_main.cc.o] > Error 1 > make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/test-oom-listener.dir/all] > Error 2 > make[1]: *** Waiting for unfinished jobs.... -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-dev-h...@hadoop.apache.org