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

Stream nb 24 3 #10630

Open
wants to merge 95 commits into
base: stream-nb-24-3
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
6e413ab
YQ-3597 disable metadata objects on serverless (#8921)
GrigoriyPA Sep 10, 2024
d04d9bb
Default values for feature flags `EnablePQConfigTransactionsAtSchemes…
Alek5andr-Kotov Sep 11, 2024
163d6fb
fix concurrent rw hash map (#9008) (#9039)
alexd65536 Sep 11, 2024
7da87a5
24-3: auditlog: add logouts (#9052)
ijon Sep 11, 2024
a783f36
Fix cloudId for YMQ (#9088)
nshestakov Sep 11, 2024
a4c93cf
Long domain name (#9109)
shnikd Sep 11, 2024
65caa64
24-3: Fix heartbeat emitter (#9113)
CyberROFL Sep 12, 2024
6302bdc
Do not use autopartition settings when autopartitioning was disabled …
nshestakov Sep 13, 2024
d3bbac0
merge to 24-3: Fix harmonizer's work with shared threads (#9139)
kruall Sep 13, 2024
1b9a283
24-3: schemeshard: fix crash on concurrent alter-extsubdomains (#9201)
ijon Sep 13, 2024
3033104
YQ-3658 added DisableExternalDataSourcesOnServerless feature flag (#9…
GrigoriyPA Sep 13, 2024
25a5416
the `TEvTxCalcPredicate` message for the completed transaction (#8809…
Alek5andr-Kotov Sep 13, 2024
8f41f58
unmute ydb/tests/functional/clickbench (#9250)
zverevgeny Sep 15, 2024
0aecd9b
Allow SelfHeal operation while in DEGRADED state (merge from main #87…
alexvru Sep 16, 2024
064fd75
The PQ tablet crashes after restarting (#9279)
Alek5andr-Kotov Sep 16, 2024
4255d09
[24-3] Fixed CopyToChunked empty buffer error (#9358)
nikvas0 Sep 17, 2024
c68e211
Merge returning fixes 24-3 (#9351)
ssmike Sep 17, 2024
19fbcf4
Precompute all replicated connections if one is already precomputed (…
ssmike Sep 17, 2024
993c21c
fix(kqp): pass lockNodeId to stream lookup actor (#9311)
ulya-sidorina Sep 17, 2024
604788d
24-3: Pre-serialized bootstrap config (#9342)
CyberROFL Sep 17, 2024
43b3f6e
24-3: Do not lose ScanShards when altering (#9377)
CyberROFL Sep 17, 2024
a92607e
24-3: Limit inflight cross-database scheme requests in the replicatio…
CyberROFL Sep 17, 2024
e9d93e4
Fix configuration of ticket parser. Pass server certificates file pat…
UgnineSirdis Aug 13, 2024
afeb6d5
Fix TNodeRegistrationResult (#7815)
UgnineSirdis Aug 15, 2024
33c2b1c
Support client cert in WhoAmI (#7816)
UgnineSirdis Aug 15, 2024
1485319
Config option for node registration token (#7754)
UgnineSirdis Aug 15, 2024
34f8e5e
Support filter on DNS names in client cert authentication (#7797)
UgnineSirdis Aug 15, 2024
65bacce
Check client certificate/token when option EnforceUserTokenCheckRequi…
UgnineSirdis Aug 16, 2024
7f3bc3e
Merge pull request #8006 from UgnineSirdis/stable-24-3-mtls-features
UgnineSirdis Sep 18, 2024
a76f523
The `DescripeTopic` call with the `IncludeStats` flag freezes (#9392)…
Alek5andr-Kotov Sep 18, 2024
4cfebcf
Ignore auto partitions fields if disabled to 24 3 (#9365)
niksaveliev Sep 18, 2024
bea65c7
Read without consumer from fed fix to 24-3 (#9138)
niksaveliev Sep 18, 2024
75f6b27
Optimize size of PQTabletConfig (#9375) (#9426)
nshestakov Sep 18, 2024
c157964
24-3: Forbid scheme ops on backup table (#9446)
CyberROFL Sep 18, 2024
590ac64
24-3: Filter out export directories (#9435)
CyberROFL Sep 18, 2024
ec98756
Merge to 24-3: fix harmonizer logic with hoggish pools (#9477)
kruall Sep 19, 2024
644b5f8
delete query from queryIndex if error during insert (#9231) (#9495)
spuchin Sep 19, 2024
7eb941d
24-3: Adjust change queue reserved capacity at Enqueue() (#9509)
CyberROFL Sep 19, 2024
16c4b26
Fix pgwire auth (#9594)
shnikd Sep 21, 2024
979fcef
[KQP] Fix recursion problem when computing SimplifiedPlan (#9519) (#…
pavelvelikhov Sep 23, 2024
3c1c2f7
Revert 24-3: Revert #9477 #9139 (#9560)
kruall Sep 23, 2024
be211bb
The consumer's generation number is not stored in the transaction (#9…
Alek5andr-Kotov Sep 23, 2024
0b65df2
Fix tx counters crash (#9514)
FloatingCrowbar Sep 24, 2024
1283f9e
Fixed join order unit test, broken by bad merge (#9631) (#9685)
pavelvelikhov Sep 24, 2024
45f8e08
Merge to stable-24-3 missing commits for stream join (#9566)
ulya-sidorina Sep 24, 2024
492d722
The `TEvProposePartitionConfig` message is sent only to the main part…
Alek5andr-Kotov Sep 24, 2024
97ff008
Support cancel after in rate limiter (#9486)
UgnineSirdis Sep 24, 2024
b678673
Add permissions for describe of topic (#9562)
nshestakov Sep 24, 2024
d6acae1
Set ending_sequence_number for inactive partitions of datashard (#963…
nshestakov Sep 24, 2024
cd6160d
Merge ydbd binaries upload into stable-24-3 for testing purposes (#9710)
maximyurchuk Sep 24, 2024
5b0598d
fix wrong isolation level (#6568) (#9673)
ssmike Sep 24, 2024
17f8560
24-3: Setup sys locks in TTxApplyReplicationChanges (#9735)
CyberROFL Sep 25, 2024
ff0d6d2
Topics alter fix to 24-3 (#9755)
niksaveliev Sep 25, 2024
66cf1fb
Support ydb dump for tables with serial types (#9757)
shnikd Sep 25, 2024
adc27fd
YMQ fixes for 24-3 (#9646)
qyryq Sep 26, 2024
6950c41
Fix buggy IC setting leading to performance degradation (merge from m…
alexvru Sep 26, 2024
13c2d99
Integrate stable-24-3-9-cs-2 into stable-24-3 (#9675)
fexolm Sep 26, 2024
82ee538
Capture TablePathPrefix (and other parts of the parser context) in CR…
jepett0 Sep 27, 2024
f4c79be
Fix memory leak due to a misuse of AWS SDK (#9810)
jepett0 Sep 27, 2024
2829d1a
Views: throw a human-readable error in case of a missing WITH (securi…
jepett0 Sep 27, 2024
acbf44c
Restore indexes from backup with the original partitioning #7589 (#9815)
jepett0 Sep 27, 2024
622ee41
24-3: NodeBroker: use deltas when returning recently added nodes (#9161)
snaury Sep 27, 2024
89f23d4
24-3: Fix EvWrite to release memory correctly (#9841)
snaury Sep 27, 2024
ddabf59
[KQP] Multiset explain bug fix (#9866)
pashandor789 Sep 27, 2024
4d2fffa
Set EnableUniqConstraint by default (#8180) (#9806)
dcherednik Sep 30, 2024
56881e1
Do not fill tables for prepared query on compilation failure (#8210) …
gridnevvvit Sep 30, 2024
ea4f43c
[] Disable enable statistics by default (#9899)
pashandor789 Sep 30, 2024
465f1c5
24-3: Fix GetAliveChildren with filter by type (#9934)
CyberROFL Oct 2, 2024
de5cc2a
[24-3] Fix leaky kind filters in configs dispatcher (#9952)
Enjection Oct 2, 2024
0f3b2c1
recompilation with query id from compilation result (#9592)
VPolka Oct 2, 2024
1548985
Add description of TImmediateControlsConfig.TBlobStorageControllerCon…
serbel324 Oct 2, 2024
b5dae67
fix potential GetStatistics hanging during rolling update; enable sta…
alexd65536 Oct 3, 2024
66970a9
24-3: Add reason for pending action in maintenance public API (#3289)…
pixcc Oct 3, 2024
6e988c4
24-3: parse topic's partitioning once and more efficiently, better ha…
CyberROFL Oct 3, 2024
6508540
24-3: Add evict vdisks for a rack (#9740) (#10031)
pixcc Oct 3, 2024
dcbe1a9
24-3: schemeshard: fix enable_alter_database_create_hive_first mode (…
ijon Oct 4, 2024
3296632
YMQ: a couple of fixes (for stable-24-3) (#10082)
qyryq Oct 5, 2024
aa99798
24-3: optimized batch processing in Topics (#10139)
CyberROFL Oct 6, 2024
6b5b451
YMQ: fix ReceiveMessage with attributes (for stable-24-3) (#10144)
qyryq Oct 7, 2024
462f216
UI updates for stable-24-3 (#9928)
adameat Oct 7, 2024
a2be43b
24-3: Add min delay before shutdown (#9688) (#10087)
pixcc Oct 7, 2024
1143523
get rid of mkql results in scripting (#9997) (#10094)
gridnevvvit Oct 8, 2024
9764825
Avoid removing empty message (#10167) (#10233)
FloatingCrowbar Oct 9, 2024
36c9fd5
use sepecific timeout for generic queues (#6653) (#10223)
iddqdex Oct 10, 2024
756e26e
The PQ cache size for a node is 1GB (#7695) (#10290)
Alek5andr-Kotov Oct 11, 2024
f1b886c
Fix kafka produce codec to 24 3 (#10270)
niksaveliev Oct 11, 2024
d81aef4
Viewer updates stable-24-3 v2 (#10332)
adameat Oct 11, 2024
780e345
24-3: Add disable evict vdisks option to config (#9812) (#10339)
pixcc Oct 11, 2024
f6729a6
build: refresh Embedded UI (v6.25.0) (#10365)
alexv-smirnov Oct 12, 2024
9d9b5d6
Replace codec to raw if not specified to 24 3 (#10382)
niksaveliev Oct 14, 2024
cda9edf
Cs to stable (#10390)
zverevgeny Oct 14, 2024
84b4690
Fix move table with sequences (#10388)
shnikd Oct 14, 2024
9903295
improve node deletion in hive (#7218) (#10393)
vporyadke Oct 14, 2024
41ca9ba
[ldap] Prohibit requests with empty password (#10401)
molotkov-and Oct 15, 2024
645139e
Merge tag 'tags/24.3.10' into stream-nb-24-3
dcherednik Oct 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
20 changes: 12 additions & 8 deletions .github/actions/s3cmd/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,16 @@ inputs:
required: true
description: "s3 key secret"
s3_bucket:
required: true
required: false
description: "s3 bucket"
s3_endpoint:
required: true
description: "s3 endpoint"
folder_prefix:
required: true
required: false
description: "folder prefix"
build_preset:
required: true
required: false
description: "build preset like relwithdebinfo"
runs:
using: "composite"
Expand All @@ -35,7 +35,14 @@ runs:
host_base = storage.yandexcloud.net
host_bucket = %(bucket)s.storage.yandexcloud.net
EOF

env:
s3_key_id: ${{ inputs.s3_key_id }}
s3_secret_access_key: ${{ inputs.s3_key_secret }}

- name: export s3 path variables
shell: bash
if: inputs.build_preset
run: |
folder="${{ runner.arch == 'X64' && 'x86-64' || runner.arch == 'ARM64' && 'arm64' || 'unknown' }}"

BUILD_PRESET="${{ inputs.build_preset }}"
Expand All @@ -57,7 +64,4 @@ runs:
echo "S3_BUCKET_PATH=s3://${{ inputs.s3_bucket }}/${{ github.repository }}/${{github.workflow}}/${{ github.run_id }}/${{ inputs.folder_prefix }}${folder}" >> $GITHUB_ENV
echo "S3_URL_PREFIX=${{ inputs.s3_endpoint }}/${{ inputs.s3_bucket }}/${{ github.repository }}/${{ github.workflow }}/${{ github.run_id }}/${{ inputs.folder_prefix }}${folder}" >> $GITHUB_ENV
echo "S3_TEST_ARTIFACTS_BUCKET_PATH=s3://${{ inputs.s3_bucket }}/testing_out_stuff/${{ github.repository }}/${{github.workflow}}/${{ github.run_id }}/${{ inputs.folder_prefix }}${folder}" >> $GITHUB_ENV
echo "S3_TEST_ARTIFACTS_URL_PREFIX=${{ inputs.s3_endpoint }}/${{ inputs.s3_bucket }}/testing_out_stuff/${{ github.repository }}/${{ github.workflow }}/${{ github.run_id }}/${{ inputs.folder_prefix }}${folder}" >> $GITHUB_ENV
env:
s3_key_id: ${{ inputs.s3_key_id }}
s3_secret_access_key: ${{ inputs.s3_key_secret }}
echo "S3_TEST_ARTIFACTS_URL_PREFIX=${{ inputs.s3_endpoint }}/${{ inputs.s3_bucket }}/testing_out_stuff/${{ github.repository }}/${{ github.workflow }}/${{ github.run_id }}/${{ inputs.folder_prefix }}${folder}" >> $GITHUB_ENV
14 changes: 7 additions & 7 deletions .github/config/muted_ya.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,15 @@ ydb/core/keyvalue/ut_trace TKeyValueTracingTest.*
ydb/core/kqp/provider/ut KikimrIcGateway.TestLoadBasicSecretValueFromExternalDataSourceMetadata
ydb/core/kqp/ut/olap KqpOlapBlobsSharing.*
ydb/core/kqp/ut/olap KqpOlapStatistics.StatsUsageWithTTL
ydb/core/kqp/ut/olap KqpOlapAggregations.Aggregation_ResultCountAll_FilterL
ydb/core/kqp/ut/olap KqpOlapWrite.WriteDeleteCleanGC
ydb/core/kqp/ut/pg KqpPg.CreateIndex
ydb/core/kqp/ut/tx KqpLocksTricky.TestNoLocksIssueInteractiveTx+withSink
ydb/core/kqp/ut/tx KqpLocksTricky.TestNoLocksIssue+withSink
ydb/core/kqp/ut/tx KqpSnapshotRead.ReadOnlyTxWithIndexCommitsOnConcurrentWrite+withSink
ydb/core/kqp/ut/tx KqpSinkTx.InvalidateOnError
ydb/core/kqp/ut/query KqpLimits.QueryReplySize
ydb/core/kqp/ut/query KqpQuery.QueryTimeout
ydb/core/kqp/ut/scan KqpRequestContext.TraceIdInErrorMessage
ydb/core/kqp/ut/scheme KqpOlapScheme.TenThousandColumns
ydb/core/kqp/ut/scheme KqpOlap.OlapRead_GenericQuerys
ydb/core/kqp/ut/scheme KqpOlap.OlapRead_StreamGenericQuery
ydb/core/kqp/ut/scheme KqpOlap.OlapRead_UsesGenericQueryOnJoinWithDataShardTable
ydb/core/kqp/ut/scheme KqpOlapScheme.DropTable
ydb/core/kqp/ut/scheme KqpScheme.AlterAsyncReplication
ydb/core/kqp/ut/scheme KqpScheme.QueryWithAlter
ydb/core/kqp/ut/scheme [14/50]*
Expand All @@ -31,6 +29,7 @@ ydb/core/kqp/ut/service KqpQueryService.QueryOnClosedSession
ydb/core/kqp/ut/service KqpService.CloseSessionsWithLoad
ydb/core/kqp/ut/service [38/50]*
ydb/core/kqp/ut/service KqpQueryService.TableSink_OltpUpdate
ydb/core/kqp/ut/service KqpQueryService.TableSink_OltpReplace+HasSecondaryIndex
ydb/core/persqueue/ut [37/40] chunk chunk
ydb/core/persqueue/ut [38/40] chunk chunk
ydb/core/persqueue/ut TPQTest.*DirectRead*
Expand Down Expand Up @@ -97,7 +96,6 @@ ydb/tests/fq/yds *
ydb/tests/fq/control_plane_storage *
ydb/tests/functional/audit *
ydb/tests/functional/blobstorage test_replication.py.TestReplicationAfterNodesRestart.test_replication*
ydb/tests/functional/clickbench test.py.test_plans[column]
ydb/tests/functional/kqp/kqp_indexes ConsistentIndexRead.InteractiveTx
ydb/tests/functional/kqp/kqp_query_session KqpQuerySession.NoLocalAttach
ydb/tests/functional/restarts test_restarts.py.*
Expand All @@ -107,4 +105,6 @@ ydb/tests/functional/tenants test_storage_config.py.TestStorageConfig.*
ydb/tests/functional/tenants test_tenants.py.*
ydb/tests/functional/ydb_cli test_ydb_impex.py.TestImpex.test_big_dataset*
ydb/tests/tools/pq_read/test test_timeout.py.TestTimeout.test_timeout
ydb/core/kqp/ut/olap KqpDecimalColumnShard.TestFilterCompare
ydb/core/kqp/ut/olap KqpDecimalColumnShard.TestAggregation
ydb/tests/functional/rename [test_rename.py */10] chunk chunk
54 changes: 54 additions & 0 deletions .github/workflows/nightly_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Nightly-Build # workflow used to upload built binaries to s3
on:
workflow_dispatch:
inputs:
runner_label:
type: string
default: "auto-provisioned"
description: "runner label"
commit_sha:
type: string
default: ""
jobs:
build_and_test:
strategy:
fail-fast: false
matrix:
build_preset: ["relwithdebinfo", "release-asan"]
runs-on: [ self-hosted, auto-provisioned, "${{ format('build-preset-{0}', matrix.build_preset) }}" ]
name: Build and test ${{ matrix.build_preset }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ inputs.commit_sha }}
fetch-depth: 2
- name: Setup ydb access
uses: ./.github/actions/setup_ci_ydb_service_account_key_file_credentials
with:
ci_ydb_service_account_key_file_credentials: ${{ secrets.CI_YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS }}
- name: Build and test
uses: ./.github/actions/build_and_test_ya
with:
build_preset: ${{ matrix.build_preset }}
build_target: "ydb/apps/ydbd"
increment: false
run_tests: false
put_build_results_to_cache: false
secs: ${{ format('{{"TESTMO_TOKEN2":"{0}","AWS_KEY_ID":"{1}","AWS_KEY_VALUE":"{2}","REMOTE_CACHE_USERNAME":"{3}","REMOTE_CACHE_PASSWORD":"{4}"}}',
secrets.TESTMO_TOKEN2, secrets.AWS_KEY_ID, secrets.AWS_KEY_VALUE, secrets.REMOTE_CACHE_USERNAME, secrets.REMOTE_CACHE_PASSWORD ) }}
vars: ${{ format('{{"AWS_BUCKET":"{0}","AWS_ENDPOINT":"{1}","REMOTE_CACHE_URL":"{2}","TESTMO_URL":"{3}","TESTMO_PROJECT_ID":"{4}"}}',
vars.AWS_BUCKET, vars.AWS_ENDPOINT, vars.REMOTE_CACHE_URL_YA, vars.TESTMO_URL, vars.TESTMO_PROJECT_ID ) }}
- name: Setup s3cmd
uses: ./.github/actions/s3cmd
with:
s3_bucket: "ydb-builds"
s3_endpoint: ${{ vars.AWS_ENDPOINT }}
s3_key_id: ${{ secrets.AWS_KEY_ID }}
s3_key_secret: ${{ secrets.AWS_KEY_VALUE }}

- name: sync results to s3 and publish links
shell: bash
run: |
set -x
s3cmd sync --follow-symlinks --acl-public --no-progress --stats --no-check-md5 "ydb/apps/ydbd/ydbd" "s3://ydb-builds/${{ github.ref_name }}/${{ matrix.build_preset }}/ydbd" -d
20 changes: 11 additions & 9 deletions ydb/core/base/board_lookup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ namespace NKikimr {
class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
const TString Path;
const TActorId Owner;
const ui64 Cookie;
const EBoardLookupMode Mode;
const bool Subscriber;
TBoardRetrySettings BoardRetrySettings;
Expand Down Expand Up @@ -111,12 +112,12 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
void NotAvailable() {
if (CurrentStateFunc() != &TThis::StateSubscribe) {
Send(Owner, new TEvStateStorage::TEvBoardInfo(
TEvStateStorage::TEvBoardInfo::EStatus::NotAvailable, Path));
TEvStateStorage::TEvBoardInfo::EStatus::NotAvailable, Path), 0, Cookie);
} else {
Send(Owner,
new TEvStateStorage::TEvBoardInfoUpdate(
TEvStateStorage::TEvBoardInfo::EStatus::NotAvailable, Path
)
), 0, Cookie
);
}
return PassAway();
Expand All @@ -129,7 +130,7 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
auto reply = MakeHolder<TEvStateStorage::TEvBoardInfo>(
TEvStateStorage::TEvBoardInfo::EStatus::Ok, Path);
reply->InfoEntries = std::move(Info);
Send(Owner, std::move(reply));
Send(Owner, std::move(reply), 0, Cookie);
if (Subscriber) {
Become(&TThis::StateSubscribe);
return;
Expand Down Expand Up @@ -240,7 +241,7 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
auto reply = MakeHolder<TEvStateStorage::TEvBoardInfoUpdate>(
TEvStateStorage::TEvBoardInfo::EStatus::Ok, Path);
reply->Updates = { { oid, std::move(update.value()) } };
Send(Owner, std::move(reply));
Send(Owner, std::move(reply), 0, Cookie);
}
} else {
if (info.GetDropped()) {
Expand Down Expand Up @@ -308,7 +309,7 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
auto reply = MakeHolder<TEvStateStorage::TEvBoardInfoUpdate>(
TEvStateStorage::TEvBoardInfo::EStatus::Ok, Path);
reply->Updates = std::move(updates);
Send(Owner, std::move(reply));
Send(Owner, std::move(reply), 0, Cookie);
}
}

Expand Down Expand Up @@ -484,7 +485,7 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {
auto reply = MakeHolder<TEvStateStorage::TEvBoardInfoUpdate>(
TEvStateStorage::TEvBoardInfo::EStatus::Ok, Path);
reply->Updates = std::move(updates);
Send(Owner, std::move(reply));
Send(Owner, std::move(reply), 0, Cookie);
}
}

Expand All @@ -495,9 +496,10 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {

TBoardLookupActor(
const TString &path, TActorId owner, EBoardLookupMode mode,
TBoardRetrySettings boardRetrySettings)
TBoardRetrySettings boardRetrySettings, ui64 cookie = 0)
: Path(path)
, Owner(owner)
, Cookie(cookie)
, Mode(mode)
, Subscriber(Mode == EBoardLookupMode::Subscription)
, BoardRetrySettings(std::move(boardRetrySettings))
Expand Down Expand Up @@ -545,8 +547,8 @@ class TBoardLookupActor : public TActorBootstrapped<TBoardLookupActor> {

IActor* CreateBoardLookupActor(
const TString &path, const TActorId &owner, EBoardLookupMode mode,
TBoardRetrySettings boardRetrySettings) {
return new TBoardLookupActor(path, owner, mode, std::move(boardRetrySettings));
TBoardRetrySettings boardRetrySettings, ui64 cookie) {
return new TBoardLookupActor(path, owner, mode, std::move(boardRetrySettings), cookie);
}

}
2 changes: 2 additions & 0 deletions ydb/core/base/events.h
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,8 @@ struct TKikimrEvents : TEvents {
ES_TX_BACKGROUND = 4256,
ES_SS_BG_TASKS = 4257,
ES_LIMITER = 4258,
//ES_MEMORY = 4259, NB. exists in main
ES_GROUPED_ALLOCATIONS_MANAGER = 4260,
};
};

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/base/statestorage.h
Original file line number Diff line number Diff line change
Expand Up @@ -556,7 +556,7 @@ IActor* CreateStateStorageBoardReplica(const TIntrusivePtr<TStateStorageInfo> &,
IActor* CreateSchemeBoardReplica(const TIntrusivePtr<TStateStorageInfo>&, ui32);
IActor* CreateBoardLookupActor(
const TString &path, const TActorId &owner, EBoardLookupMode mode,
TBoardRetrySettings boardRetrySettings = {});
TBoardRetrySettings boardRetrySettings = {}, ui64 cookie = 0);
IActor* CreateBoardPublishActor(
const TString &path, const TString &payload, const TActorId &owner, ui32 ttlMs, bool reg,
TBoardRetrySettings boardRetrySettings = {});
Expand Down
5 changes: 3 additions & 2 deletions ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1481,7 +1481,7 @@ void TPDisk::WhiteboardReport(TWhiteboardReport &whiteboardReport) {
TGuard<TMutex> guard(StateMutex);
const ui64 totalSize = Format.DiskSize;
const ui64 availableSize = (ui64)Format.ChunkSize * Keeper.GetFreeChunkCount();

if (*Mon.PDiskBriefState != TPDiskMon::TPDisk::Error) {
*Mon.FreeSpaceBytes = availableSize;
*Mon.UsedSpaceBytes = totalSize - availableSize;
Expand All @@ -1491,7 +1491,7 @@ void TPDisk::WhiteboardReport(TWhiteboardReport &whiteboardReport) {
*Mon.UsedSpaceBytes = 32_KB;
*Mon.TotalSpaceBytes = 32_KB;
}

NKikimrWhiteboard::TPDiskStateInfo& pdiskState = reportResult->PDiskState->Record;
pdiskState.SetPDiskId(PDiskId);
pdiskState.SetPath(Cfg->GetDevicePath());
Expand All @@ -1503,6 +1503,7 @@ void TPDisk::WhiteboardReport(TWhiteboardReport &whiteboardReport) {
pdiskState.SetSystemSize(Format.ChunkSize * (Keeper.GetOwnerHardLimit(OwnerSystemLog) + Keeper.GetOwnerHardLimit(OwnerSystemReserve)));
pdiskState.SetLogUsedSize(Format.ChunkSize * (Keeper.GetOwnerHardLimit(OwnerCommonStaticLog) - Keeper.GetOwnerFree(OwnerCommonStaticLog)));
pdiskState.SetLogTotalSize(Format.ChunkSize * Keeper.GetOwnerHardLimit(OwnerCommonStaticLog));
pdiskState.SetNumActiveSlots(TotalOwners);
if (ExpectedSlotCount) {
pdiskState.SetExpectedSlotCount(ExpectedSlotCount);
}
Expand Down
16 changes: 14 additions & 2 deletions ydb/core/change_exchange/change_sender_common_ops.h
Original file line number Diff line number Diff line change
Expand Up @@ -413,8 +413,10 @@ class TBaseChangeSender {
}

TActorId GetChangeServer() const { return ChangeServer; }
void CreateSenders(const TVector<ui64>& partitionIds, bool partitioningChanged = true) {
if (partitioningChanged) {

private:
void CreateSendersImpl(const TVector<ui64>& partitionIds) {
if (partitionIds) {
CreateMissingSenders(partitionIds);
} else {
RecreateSenders(GonePartitions);
Expand All @@ -427,6 +429,16 @@ class TBaseChangeSender {
}
}

protected:
void CreateSenders(const TVector<ui64>& partitionIds) {
Y_ABORT_UNLESS(partitionIds);
CreateSendersImpl(partitionIds);
}

void CreateSenders() {
CreateSendersImpl({});
}

void KillSenders() {
for (const auto& [_, sender] : std::exchange(Senders, {})) {
if (sender.ActorId) {
Expand Down
15 changes: 15 additions & 0 deletions ydb/core/change_exchange/util.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#include "util.h"

namespace NKikimr::NChangeExchange {

TVector<ui64> MakePartitionIds(const TVector<TKeyDesc::TPartitionInfo>& partitions) {
TVector<ui64> result(::Reserve(partitions.size()));

for (const auto& partition : partitions) {
result.push_back(partition.ShardId);
}

return result;
}

}
9 changes: 9 additions & 0 deletions ydb/core/change_exchange/util.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#pragma once

#include <ydb/core/scheme/scheme_tabledefs.h>

namespace NKikimr::NChangeExchange {

TVector<ui64> MakePartitionIds(const TVector<TKeyDesc::TPartitionInfo>& partitions);

}
1 change: 1 addition & 0 deletions ydb/core/change_exchange/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ SRCS(
change_exchange.cpp
change_record.cpp
change_sender_monitoring.cpp
util.cpp
)

GENERATE_ENUM_SERIALIZATION(change_record.h)
Expand Down
29 changes: 18 additions & 11 deletions ydb/core/client/server/msgbus_server_pq_metacache.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@ class TPersQueueMetaCacheActor : public TActorBootstrapped<TPersQueueMetaCacheAc
req->Record.MutableRequest()->SetType(NKikimrKqp::QUERY_TYPE_SQL_DML);
req->Record.MutableRequest()->SetKeepSession(false);
req->Record.MutableRequest()->SetDatabase(NKikimr::NPQ::GetDatabaseFromConfig(AppData(ctx)->PQConfig));
req->Record.MutableRequest()->SetUsePublicResponseDataFormat(true);

req->Record.MutableRequest()->MutableQueryCachePolicy()->set_keep_in_cache(true);
req->Record.MutableRequest()->MutableTxControl()->mutable_begin_tx()->mutable_serializable_read_write();
Expand Down Expand Up @@ -274,9 +275,14 @@ class TPersQueueMetaCacheActor : public TActorBootstrapped<TPersQueueMetaCacheAc

const auto& record = ev->Get()->Record.GetRef();

Y_ABORT_UNLESS(record.GetResponse().GetResults().size() == 1);
const auto& rr = record.GetResponse().GetResults(0).GetValue().GetStruct(0);
ui64 newVersion = rr.ListSize() == 0 ? 0 : rr.GetList(0).GetStruct(0).GetOptional().GetInt64();
Y_VERIFY(record.GetResponse().YdbResultsSize() == 1);
NYdb::TResultSetParser parser(record.GetResponse().GetYdbResults(0));

ui64 newVersion = 0;
if (parser.RowsCount() != 0) {
parser.TryNextRow();
newVersion = *parser.ColumnParser(0).GetOptionalInt64();
}

LastVersionUpdate = ctx.Now();
if (newVersion > CurrentTopicsVersion || CurrentTopicsVersion == 0 || SkipVersionCheck) {
Expand All @@ -293,17 +299,18 @@ class TPersQueueMetaCacheActor : public TActorBootstrapped<TPersQueueMetaCacheAc

const auto& record = ev->Get()->Record.GetRef();

Y_ABORT_UNLESS(record.GetResponse().GetResults().size() == 1);
Y_VERIFY(record.GetResponse().YdbResultsSize() == 1);
TString path, dc;
const auto& rr = record.GetResponse().GetResults(0).GetValue().GetStruct(0);
for (const auto& row : rr.GetList()) {

path = row.GetStruct(0).GetOptional().GetText();
dc = row.GetStruct(1).GetOptional().GetText();
NYdb::TResultSetParser parser(record.GetResponse().GetYdbResults(0));
const ui32 rowCount = parser.RowsCount();
while (parser.TryNextRow()) {
path = *parser.ColumnParser(0).GetOptionalUtf8();
dc = *parser.ColumnParser(1).GetOptionalUtf8();

NewTopics.emplace_back(decltype(NewTopics)::value_type{path, dc});
}
if (rr.ListSize() > 0) {

if (rowCount > 0) {
LastTopicKey = {path, dc};
return RunQuery(EQueryType::EGetTopics, ctx);
} else {
Expand Down Expand Up @@ -710,7 +717,7 @@ class TPersQueueMetaCacheActor : public TActorBootstrapped<TPersQueueMetaCacheAc
void ProcessNodesInfoWaitersQueue(bool status, const TActorContext& ctx) {
if (DynamicNodesMapping == nullptr) {
Y_ABORT_UNLESS(!status);
DynamicNodesMapping.reset(new THashMap<ui32, ui32>);
DynamicNodesMapping.reset(new THashMap<ui32, ui32>);
}
while(!NodesMappingWaiters.empty()) {
ctx.Send(NodesMappingWaiters.front(),
Expand Down
Loading
Loading