Skip to content

Commit 827cd39

Browse files
authored
Fix ld preload for breakpad (#15305)
1 parent 0ce9793 commit 827cd39

File tree

4 files changed

+13
-3
lines changed

4 files changed

+13
-3
lines changed

ydb/apps/ydbd/ya.make

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ PEERDIR(
6969
yql/essentials/udfs/common/url_base
7070
yql/essentials/udfs/common/yson2
7171
yql/essentials/udfs/logs/dsv
72-
# ydb/library/breakpad # not working properly, see KIKIMR-18829 for details
72+
# ydb/library/breakpad
7373
ydb/public/sdk/cpp/client/ydb_persqueue_public/codecs
7474
)
7575

ydb/deploy/docker/Dockerfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,28 @@ COPY --chmod=0644 /liblibaio-dynamic.so /lib/liblibaio-dynamic.so
2626
###
2727

2828
FROM ${BREAKPAD_INIT_IMAGE}:${BREAKPAD_INIT_IMAGE_TAG} AS breakpad_init
29+
FROM base AS breakpad-setuid
30+
COPY --from=breakpad_init /usr/lib/libbreakpad_init.so /usr/lib/libbreakpad_init.so
31+
# workaround for old docker versions
32+
# https://github.com/moby/buildkit/issues/3920
33+
RUN /usr/bin/chmod 4644 /usr/lib/libbreakpad_init.so
34+
35+
2936
FROM base AS base-breakpad
3037
RUN \
3138
apt-get -yqq update && \
3239
apt-get -yqq install --no-install-recommends binutils gdb strace linux-tools-generic && \
3340
apt-get clean && rm -rf /var/lib/apt/lists/*
41+
ENV LD_PRELOAD=libbreakpad_init.so
3442
ENV BREAKPAD_MINIDUMPS_PATH=/opt/ydb/volumes/coredumps
3543
ENV BREAKPAD_MINIDUMPS_SCRIPT=/opt/ydb/bin/minidump_script.py
3644
# breakpad binaries
3745
COPY --chmod=0755 --from=breakpad_init /usr/bin/minidump_stackwalk /usr/bin/minidump_stackwalk
3846
COPY --chmod=0755 --from=breakpad_init /usr/bin/minidump-2-core /usr/bin/minidump-2-core
3947
# minidump callback script
4048
COPY --chmod=0755 --chown=ydb /minidump_script.py /opt/ydb/bin/minidump_script.py
49+
# minidump init library
50+
COPY --link --from=breakpad-setuid /usr/lib/libbreakpad_init.so /usr/lib/libbreakpad_init.so
4151

4252
FROM base AS ydbd-setcap
4353
COPY --chmod=0755 --chown=ydb /ydbd /opt/ydb/bin/ydbd

ydb/tests/functional/minidumps/ya.make

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ IF (OS_LINUX AND NOT SANITIZER_TYPE)
33
PY3TEST()
44

55
TEST_SRCS(
6-
test_break.py
6+
# test_break.py
77
)
88

99
SIZE(MEDIUM)

ydb/tests/functional/ya.make

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ RECURSE(
1515
kqp
1616
large_serializable
1717
limits
18-
# minidumps # breakpad is disabled now, see KIKIMR-18829 for details
18+
minidumps
1919
postgresql
2020
query_cache
2121
rename

0 commit comments

Comments
 (0)