ydb-platform / ydb

YDB is an open source Distributed SQL Database that combines high availability and scalability with strong consistency and ACID transactions
https://ydb.tech
Apache License 2.0
4k stars 565 forks source link

Missing lsan.supp (broken --sanitize=address build) #2622

Closed maximyurchuk closed 5 months ago

maximyurchuk commented 8 months ago

Hello,

it's looks like the asan build is broken:

maxim@yurchuk:~/ydbwork/ydb$ ./ya test --sanitize=address  ydb/core
Warn[-WBadDir]: in $B/contrib/restricted/boost/rational/librestricted-boost-rational.a: ADDINCL to non existent source directory $S/contrib/restricted/boost/rational/include
Error[-WBadFile]: in $B/contrib/tools/python3/lib2/libtools-python3-lib2.a: cannot find source file: lsan.supp
Warn[-WUserWarn]: in $S/ydb/core/blobstorage/dsproxy/ut/ya.make: WARNING It takes too much time to run test in DEBUG mode, some tests are skipped
Warn[-WUserWarn]: in $S/ydb/core/blobstorage/groupinfo/ut/ya.make: WARNING It takes too much time to run test in DEBUG mode, some tests are skipped
Warn[-WUserWarn]: in $S/ydb/core/blobstorage/pdisk/ut/ya.make: WARNING It takes too much time to run test in DEBUG mode, some tests are skipped
Warn[-WUserWarn]: in $S/ydb/core/blobstorage/ut_pdiskfit/ut/ya.make: WARNING It takes too much time to run test in DEBUG mode, some tests are skipped
Configure error (use -k to proceed)

In the following build file you can find

SUPPRESSIONS(lsan.supp)

But there is no lsan.supp file. Looks like it was broken since following commit

I don't know how to fix it correctly, so I just filed the issue (probably the correct solution is to add missing files from Yandex repo).

maximyurchuk commented 8 months ago

Surprisingly with-k the error was ignored:

maxim@yurchuk:~/ydbwork/ydb$ ./ya test --sanitize=address -k ydb/core/base
Warn[-WBadDir]: in $B/contrib/restricted/boost/rational/librestricted-boost-rational.a: ADDINCL to non existent source directory $S/contrib/restricted/boost/rational/include
Error[-WBadFile]: in $B/contrib/tools/python3/lib2/libtools-python3-lib2.a: cannot find source file: lsan.supp
Error: File location still unknown: $U/lsan.supp

Total 2 suites:
        2 - GOOD
Total 35 tests:
        35 - GOOD
Ok
maxim@yurchuk:~/ydbwork/ydb$ echo $?
0

And because of this YDB CI builds work fine (they have the -k option).

At first glance this looks like a flaw in ya tool (besides problem with missing lsan.supp).

maximyurchuk commented 8 months ago

I also have reported a bug to yatool: https://github.com/yandex/yatool/issues/7

maximyurchuk commented 5 months ago

It was fixed in https://github.com/ydb-platform/ydb/commit/e8fb59b11b5486102d179d32155d304b45c26562