Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
3.2.0
-
None
-
None
-
Linux ARM (armv7)
Description
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.... |