@@ -28,7 +28,7 @@ namespace NKikimr::NOlap {
2828
2929TColumnEngineForLogs::TColumnEngineForLogs (const ui64 tabletId, const std::shared_ptr<TSchemaObjectsCache>& schemaCache,
3030 const std::shared_ptr<NDataAccessorControl::IDataAccessorsManager>& dataAccessorsManager,
31- const std::shared_ptr<IStoragesManager>& storagesManager, const TSnapshot& snapshot, const TSchemaInitializationData& schema)
31+ const std::shared_ptr<IStoragesManager>& storagesManager, const TSnapshot& snapshot, const ui64 presetId, const TSchemaInitializationData& schema)
3232 : GranulesStorage(std::make_shared<TGranulesStorage>(SignalCounters, dataAccessorsManager, storagesManager))
3333 , DataAccessorsManager(dataAccessorsManager)
3434 , StoragesManager(storagesManager)
@@ -37,12 +37,12 @@ TColumnEngineForLogs::TColumnEngineForLogs(const ui64 tabletId, const std::share
3737 , LastPortion(0 )
3838 , LastGranule(0 ) {
3939 ActualizationController = std::make_shared<NActualizer::TController>();
40- RegisterSchemaVersion (snapshot, schema);
40+ RegisterSchemaVersion (snapshot, presetId, schema);
4141}
4242
4343TColumnEngineForLogs::TColumnEngineForLogs (const ui64 tabletId, const std::shared_ptr<TSchemaObjectsCache>& schemaCache,
4444 const std::shared_ptr<NDataAccessorControl::IDataAccessorsManager>& dataAccessorsManager,
45- const std::shared_ptr<IStoragesManager>& storagesManager, const TSnapshot& snapshot, TIndexInfo&& schema)
45+ const std::shared_ptr<IStoragesManager>& storagesManager, const TSnapshot& snapshot, const ui64 presetId, TIndexInfo&& schema)
4646 : GranulesStorage(std::make_shared<TGranulesStorage>(SignalCounters, dataAccessorsManager, storagesManager))
4747 , DataAccessorsManager(dataAccessorsManager)
4848 , StoragesManager(storagesManager)
@@ -51,7 +51,7 @@ TColumnEngineForLogs::TColumnEngineForLogs(const ui64 tabletId, const std::share
5151 , LastPortion(0 )
5252 , LastGranule(0 ) {
5353 ActualizationController = std::make_shared<NActualizer::TController>();
54- RegisterSchemaVersion (snapshot, std::move (schema));
54+ RegisterSchemaVersion (snapshot, presetId, std::move (schema));
5555}
5656
5757const TMap<ui64, std::shared_ptr<TColumnEngineStats>>& TColumnEngineForLogs::GetStats () const {
@@ -140,7 +140,7 @@ void TColumnEngineForLogs::UpdatePortionStats(
140140 }
141141}
142142
143- void TColumnEngineForLogs::RegisterSchemaVersion (const TSnapshot& snapshot, TIndexInfo&& indexInfo) {
143+ void TColumnEngineForLogs::RegisterSchemaVersion (const TSnapshot& snapshot, const ui64 presetId, TIndexInfo&& indexInfo) {
144144 AFL_VERIFY (DataAccessorsManager);
145145 bool switchOptimizer = false ;
146146 bool switchAccessorsManager = false ;
@@ -152,7 +152,7 @@ void TColumnEngineForLogs::RegisterSchemaVersion(const TSnapshot& snapshot, TInd
152152 }
153153
154154 const bool isCriticalScheme = indexInfo.GetSchemeNeedActualization ();
155- auto * indexInfoActual = VersionedIndex.AddIndex (snapshot, SchemaObjectsCache->GetIndexInfoCache ( std::move (indexInfo)));
155+ auto * indexInfoActual = VersionedIndex.AddIndex (snapshot, SchemaObjectsCache->UpsertIndexInfo (presetId, std::move (indexInfo)));
156156 if (isCriticalScheme) {
157157 StartActualization ({});
158158 for (auto && i : GranulesStorage->GetTables ()) {
@@ -172,7 +172,7 @@ void TColumnEngineForLogs::RegisterSchemaVersion(const TSnapshot& snapshot, TInd
172172 }
173173}
174174
175- void TColumnEngineForLogs::RegisterSchemaVersion (const TSnapshot& snapshot, const TSchemaInitializationData& schema) {
175+ void TColumnEngineForLogs::RegisterSchemaVersion (const TSnapshot& snapshot, const ui64 presetId, const TSchemaInitializationData& schema) {
176176 AFL_VERIFY (VersionedIndex.IsEmpty () || schema.GetVersion () >= VersionedIndex.GetLastSchema ()->GetVersion ())(" empty" , VersionedIndex.IsEmpty ())(" current" , schema.GetVersion ())(
177177 " last" , VersionedIndex.GetLastSchema ()->GetVersion ());
178178
@@ -186,10 +186,10 @@ void TColumnEngineForLogs::RegisterSchemaVersion(const TSnapshot& snapshot, cons
186186 indexInfoOptional = NOlap::TIndexInfo::BuildFromProto (schema.GetSchemaVerified (), StoragesManager, SchemaObjectsCache);
187187 }
188188 AFL_VERIFY (indexInfoOptional);
189- RegisterSchemaVersion (snapshot, std::move (*indexInfoOptional));
189+ RegisterSchemaVersion (snapshot, presetId, std::move (*indexInfoOptional));
190190}
191191
192- void TColumnEngineForLogs::RegisterOldSchemaVersion (const TSnapshot& snapshot, const TSchemaInitializationData& schema) {
192+ void TColumnEngineForLogs::RegisterOldSchemaVersion (const TSnapshot& snapshot, const ui64 presetId, const TSchemaInitializationData& schema) {
193193 AFL_VERIFY (!VersionedIndex.IsEmpty ());
194194
195195 ui64 version = schema.GetVersion ();
@@ -217,7 +217,7 @@ void TColumnEngineForLogs::RegisterOldSchemaVersion(const TSnapshot& snapshot, c
217217 }
218218
219219 AFL_VERIFY (indexInfoOptional);
220- VersionedIndex.AddIndex (snapshot, SchemaObjectsCache->GetIndexInfoCache ( std::move (*indexInfoOptional)));
220+ VersionedIndex.AddIndex (snapshot, SchemaObjectsCache->UpsertIndexInfo (presetId, std::move (*indexInfoOptional)));
221221}
222222
223223std::shared_ptr<ITxReader> TColumnEngineForLogs::BuildLoader (const std::shared_ptr<IBlobGroupSelector>& dsGroupSelector) {
0 commit comments