[ 
https://issues.apache.org/jira/browse/KUDU-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18117857#comment-18117857
 ] 

ASF subversion and git services commented on KUDU-3788:
-------------------------------------------------------

Commit e4a7274b7f656c5a3403e13a9113f093660f9061 in kudu's branch 
refs/heads/master from Alexey Serbin
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=e4a7274b7 ]

KUDU-3788 an option to keep existing symlinks in /opt/kudu/thirdparty

This changelist introduces an option to avoid re-creation of symbolic
links from /opt/kudu/thirdparty to the actual location of pre-built
3rd-party artifacts when building Kudu 3rd-party components.

The behavior is controlled by the newly introduced env/shell variable
PREBUILT_THIRDPARTY_RECREATE_SYMLINKS, which is set to 1 by default.
In multi-tenant environments with multiple concurrent actors each using
its own Kudu workspace but exactly same versions of 3rd-party
components, setting PREBUILT_THIRDPARTY_RECREATE_SYMLINKS=0 helps to
avoid races that often lead to build failures of earlier started builds.

Change-Id: I22f612f343a3f5ea3cca48836ebc76a167af59e7
Reviewed-on: http://gerrit.cloudera.org:8080/24869
Tested-by: Alexey Serbin <[email protected]>
Reviewed-by: Abhishek Chennaka <[email protected]>


> Allow fethcing and using pre-built 3rd-party components when building Kudu
> --------------------------------------------------------------------------
>
>                 Key: KUDU-3788
>                 URL: https://issues.apache.org/jira/browse/KUDU-3788
>             Project: Kudu
>          Issue Type: Improvement
>            Reporter: Alexey Serbin
>            Assignee: Alexey Serbin
>            Priority: Major
>             Fix For: 1.19.0
>
>
> It would be nice to allow to fetch and use pre-built 3rd-party components 
> when building Kudu.  Each of the 3rd-party components should be checked 
> against a presence of pre-built version that matches the machine architecture 
> and OS, and the matching rule should compare at least the following 
> attributes:
> * Component name (e.g., gflags)
> * Component version (minor, major, patch, or just source hash if no semantic 
> versioning is available)
> * The machine's CPU architecture that binaries/libraries are built for (e.g., 
> x86_64, arm64)
> * OS name or flavor/distro name if applicable (e.g., macOS, Ubuntu, Debian, 
> RHEL, etc.)
> * OS version: major, minor (e.g., 9.1 for RHEL, 24.04 for Ubuntu, 15.7 for 
> macOS, etc.)
> * The toolchain that the bits are built with: compiler name, major and minor 
> versions, and the standard C++ library flavor where applicable (e.g., 
> gcc-10.5-libstdc++, clang-15.0)
> * Sanitizer option: TSAN if built with tread sanitizer support, or none if a 
> regular build



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to