Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multicolumn sparsed test #8284

Merged
merged 7 commits into from
Aug 30, 2024

Conversation

aavdonkin
Copy link
Collaborator

Changelog entry

...

Changelog category

  • New feature
  • Experimental feature
  • Improvement
  • Performance improvement
  • Bugfix
  • Backward incompatible change
  • Documentation (changelog entry is not required)
  • Not for changelog (changelog entry is not required)

Additional information

...

Copy link

github-actions bot commented Aug 26, 2024

2024-08-26 14:40:25 UTC Pre-commit check for 3e64d38 has started.
2024-08-26 14:43:59 UTC Check cancelled

Copy link

github-actions bot commented Aug 26, 2024

2024-08-26 14:48:13 UTC Pre-commit check for 0fbeb53 has started.
2024-08-26 14:50:58 UTC Check linux-x86_64-release-asan is running...
🔴 2024-08-26 16:22:31 UTC Some tests failed, follow the links below.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
10152 10027 0 46 55 24

🟢 2024-08-26 16:23:24 UTC Build successful.
🟡 2024-08-26 16:23:53 UTC ydbd size 5.5 GiB changed* by +529.9 KiB, which is >= 100.0 KiB vs main: Warning

ydbd size dash main: 43019e6 merge: 0fbeb53 diff diff %
ydbd size 5 925 799 544 Bytes 5 926 342 152 Bytes +529.9 KiB +0.009%
ydbd stripped size 1 488 593 520 Bytes 1 488 692 144 Bytes +96.3 KiB +0.007%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Aug 26, 2024

2024-08-26 15:05:20 UTC Pre-commit check for 0fbeb53 has started.
2024-08-26 15:09:01 UTC Check linux-x86_64-release-clang14 is running...
🟢 2024-08-26 15:15:24 UTC Build successful.

Copy link

github-actions bot commented Aug 26, 2024

2024-08-26 15:06:58 UTC Pre-commit check for 0fbeb53 has started.
2024-08-26 15:09:56 UTC Check linux-x86_64-relwithdebinfo is running...
🟡 2024-08-26 16:16:27 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
39280 33863 0 18 5386 13

2024-08-26 16:19:53 UTC Failed tests rerun (try 2) linux-x86_64-relwithdebinfo is running...
🟢 2024-08-26 16:29:43 UTC Tests successful.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
59 (only retried tests) 50 0 0 0 9

🟢 2024-08-26 16:29:50 UTC Build successful.
🟡 2024-08-26 16:31:18 UTC ydbd size 8.2 GiB changed* by +949.5 KiB, which is >= 100.0 KiB vs main: Warning

ydbd size dash main: 43019e6 merge: 0fbeb53 diff diff %
ydbd size 8 795 033 768 Bytes 8 796 006 064 Bytes +949.5 KiB +0.011%
ydbd stripped size 479 689 064 Bytes 479 721 640 Bytes +31.8 KiB +0.007%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

@@ -81,6 +85,24 @@ class TSimpleArrayConstructor: public IArrayBuilder {
}
};

template <class TFiller>
class TSimpleArrayShiftConstructor: public TSimpleArrayConstructor<TFiller> {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а зачем? перетащи переменную в базовый класс и сделай accessor

@@ -25,6 +26,40 @@ class TIntSeqFiller {
}
};

template <class TArrowType>
class TIntPoolFiller {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а нельзя обобщить вместе с пулом строк, склеив?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В конструкторе TStringPoolFiller параметров больше, там максимальная длина строки задается и сама рандомная строка другим методом получается

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

можно генератор сделать внешним параметром (интерфейс или шаблонный)

return result;
}

void TTypedLocalHelper::CreateMultiColumnOlapTableWithStore(ui32 reps, ui32 storeShardsCount, ui32 tableShardsCount) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а это ты скопировал откуда-то? нельзя переиспользовать?

@@ -19,6 +19,10 @@ Y_UNIT_TEST_SUITE(KqpOlapSparsed) {
TKikimrRunner Kikimr;
NKikimr::NYDBTest::TControllers::TGuard<NKikimr::NYDBTest::NColumnShard::TController> CSController;
const TString StoreName;
ui32 MultiColumnRepCount = 100;
static const ui32 FIELD_COUNT = 5;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а нельзя вектор сделать и от него size брать?

@@ -39,58 +43,148 @@ Y_UNIT_TEST_SUITE(KqpOlapSparsed) {
return GetUint64(rows[0].at("count"));
}

ui32 GetDefaultsCount() const {
auto selectQuery = TString(R"(
ui32 GetDefaultsCount(const char* fieldName, const char* defValueStr) const {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а давай не char* использовать везде, а TString или std::string

{
NArrow::NConstruction::TStringPoolFiller sPool(1000, 52, "abcde", frq);
helper.FillTable(sPool, shiftKff, 10000);
void GetAllDefaultsCount(ui64* counts, ui32 skipCount) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

давай генерацию схемы с данными в отдельный класс в отдельный файл вынесем? очень популярная тема - хочу, чтобы было что переиспользовать

Copy link

github-actions bot commented Aug 28, 2024

2024-08-28 11:55:48 UTC Pre-commit check for f55adfe has started.
2024-08-28 11:59:42 UTC Check linux-x86_64-relwithdebinfo is running...
🟡 2024-08-28 13:02:58 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
39308 33886 0 43 5359 20

2024-08-28 13:06:24 UTC Failed tests rerun (try 2) linux-x86_64-relwithdebinfo is running...
🟢 2024-08-28 13:16:34 UTC Tests successful.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
63 (only retried tests) 52 0 0 0 11

🟢 2024-08-28 13:16:42 UTC Build successful.
🟢 2024-08-28 13:17:24 UTC ydbd size 8.2 GiB changed* by -9.4 KiB, which is <= 0 Bytes vs main: OK

ydbd size dash main: e7b25a7 merge: f55adfe diff diff %
ydbd size 8 801 105 584 Bytes 8 801 095 968 Bytes -9.4 KiB -0.000%
ydbd stripped size 479 886 856 Bytes 479 889 928 Bytes +3.0 KiB +0.001%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Aug 28, 2024

2024-08-28 11:56:56 UTC Pre-commit check for f55adfe has started.
2024-08-28 11:59:40 UTC Check linux-x86_64-release-clang14 is running...
🟢 2024-08-28 12:05:35 UTC Build successful.

Copy link

github-actions bot commented Aug 28, 2024

2024-08-28 11:57:02 UTC Pre-commit check for f55adfe has started.
2024-08-28 11:59:47 UTC Check linux-x86_64-release-asan is running...
🔴 2024-08-28 13:26:02 UTC Some tests failed, follow the links below.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
10125 10064 0 18 23 20

🟢 2024-08-28 13:27:01 UTC Build successful.
🟡 2024-08-28 13:27:31 UTC ydbd size 5.5 GiB changed* by +127.6 KiB, which is >= 100.0 KiB vs main: Warning

ydbd size dash main: 0b3e86d merge: f55adfe diff diff %
ydbd size 5 929 476 136 Bytes 5 929 606 760 Bytes +127.6 KiB +0.002%
ydbd stripped size 1 489 195 408 Bytes 1 489 239 664 Bytes +43.2 KiB +0.003%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

@@ -25,6 +26,40 @@ class TIntSeqFiller {
}
};

template <class TArrowType>
class TIntPoolFiller {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

можно генератор сделать внешним параметром (интерфейс или шаблонный)

@@ -83,11 +85,38 @@ class TTypedLocalHelper: public Tests::NCS::THelper {
TBase::SendDataViaActorSystem(TablePath, batch);
}

void FillMultiColumnTable(ui32 repCount, const double pkKff = 0, const ui32 numRows = 800000) const {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

вот тут генерацию батча можно хорошо параметризировать и переиспользовать...

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Сейчас есть такой объект как NTest::TTestColumn
И везде сейчас кастомные построения Builder, etc...
Хочется, чтобы в TTestColumn можно было задать способ генерации данных (возможно, не совпадающий с метаданными, описывающими схему, но по умолчанию берущий данные из схемы)
И тогда класс принимает на вход список TTestColumn и может сделать вариативно - построить arrow::RecordBatch, сделать запрос на построение схемы, построить arrow::Schema
для начала - самое то. тогда можно будет сделать аккуратнее и убрать код в следующих местах:
ut_columnshard_schema.cpp:MakeData
columnshard_ut_common.cpp:MakeTestBlob
core/testlib/cs_helper.cpp:NKikimr::Tests::NCS::THelper::TestArrowBatch
TCickBenchHelper::TestArrowBatch

в общем - поищи - там по тестам везде постоянно генерят данные, строят схемы -- хочется все это для всех тестов унифицировать, используя TTestColumn, в котором можно указать, например, что
генерация данных одна, а типа данных для схемы - другой. чтобы это везде переиспользовалось потом

Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 10:33:57 UTC Pre-commit check linux-x86_64-relwithdebinfo for 4f0ee04 has started.
2024-08-29 10:38:16 UTC ya make is running...
🟡 2024-08-29 11:45:24 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
39364 33877 0 108 5363 16

2024-08-29 11:48:59 UTC ya make is running... (failed tests rerun, try 2)
🟢 2024-08-29 11:57:50 UTC Tests successful.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
132 (only retried tests) 118 0 0 0 14

🟢 2024-08-29 11:57:58 UTC Build successful.
🟢 2024-08-29 11:58:36 UTC ydbd size 8.2 GiB changed* by -9.2 KiB, which is <= 0 Bytes vs main: OK

ydbd size dash main: 47066e9 merge: 4f0ee04 diff diff %
ydbd size 8 809 920 776 Bytes 8 809 911 376 Bytes -9.2 KiB -0.000%
ydbd stripped size 480 398 088 Bytes 480 401 160 Bytes +3.0 KiB +0.001%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 10:34:30 UTC Pre-commit check linux-x86_64-release-clang14 for 4f0ee04 has started.
2024-08-29 10:38:24 UTC ya make is running...
🔴 2024-08-29 10:39:53 UTC Build failed. see the logs.

Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 10:45:12 UTC Pre-commit check linux-x86_64-release-asan for 4f0ee04 has started.
2024-08-29 10:47:57 UTC ya make is running...
🔴 2024-08-29 12:14:17 UTC Some tests failed, follow the links below.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
10188 10121 0 22 22 23

🟢 2024-08-29 12:15:11 UTC Build successful.
🟢 2024-08-29 12:15:43 UTC ydbd size 5.5 GiB changed* by +54.5 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 47066e9 merge: 4f0ee04 diff diff %
ydbd size 5 936 526 184 Bytes 5 936 582 008 Bytes +54.5 KiB +0.001%
ydbd stripped size 1 490 961 456 Bytes 1 490 996 016 Bytes +33.8 KiB +0.002%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

ivanmorozov333
ivanmorozov333 previously approved these changes Aug 29, 2024
Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 17:03:18 UTC Pre-commit check linux-x86_64-release-clang14 for 09d7bea has started.
2024-08-29 17:06:02 UTC ya make is running...
🟢 2024-08-29 17:11:36 UTC Build successful.

Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 17:03:50 UTC Pre-commit check linux-x86_64-release-asan for 09d7bea has started.
2024-08-29 17:06:29 UTC ya make is running...
🔴 2024-08-29 18:32:34 UTC Some tests failed, follow the links below.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
10207 10138 0 19 29 21

🟢 2024-08-29 18:33:27 UTC Build successful.
🟢 2024-08-29 18:33:57 UTC ydbd size 5.5 GiB changed* by +54.5 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 93089ee merge: 09d7bea diff diff %
ydbd size 5 944 034 864 Bytes 5 944 090 688 Bytes +54.5 KiB +0.001%
ydbd stripped size 1 492 622 160 Bytes 1 492 656 720 Bytes +33.8 KiB +0.002%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Aug 29, 2024

2024-08-29 17:05:35 UTC Pre-commit check linux-x86_64-relwithdebinfo for 09d7bea has started.
2024-08-29 17:08:27 UTC ya make is running...
🟡 2024-08-29 18:15:44 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
39388 33985 0 6 5373 24

2024-08-29 18:19:10 UTC ya make is running... (failed tests rerun, try 2)
🟢 2024-08-29 18:27:53 UTC Tests successful.

Test history | Ya make output

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
41 (only retried tests) 28 0 0 0 13

🟢 2024-08-29 18:28:00 UTC Build successful.
🟢 2024-08-29 18:28:39 UTC ydbd size 8.2 GiB changed* by -9.2 KiB, which is <= 0 Bytes vs main: OK

ydbd size dash main: 93089ee merge: 09d7bea diff diff %
ydbd size 8 818 949 792 Bytes 8 818 940 392 Bytes -9.2 KiB -0.000%
ydbd stripped size 480 823 560 Bytes 480 826 632 Bytes +3.0 KiB +0.001%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

@aavdonkin aavdonkin merged commit 297d5b4 into ydb-platform:main Aug 30, 2024
10 of 12 checks passed
stanislav-shchetinin pushed a commit to stanislav-shchetinin/ydb that referenced this pull request Aug 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants