fix migration properties

This commit is contained in:
etreschenkov 2026-02-10 14:32:06 +03:00
parent 8faa23ac63
commit 7266400169
4 changed files with 104 additions and 10 deletions

View file

@ -18,10 +18,10 @@
<java.version>21</java.version>
<git.info.prefix>git_info</git.info.prefix>
<git.info.filename>git.properties</git.info.filename>
<!-- <registry.url>10.230.238.56:5000</registry.url>-->
<registry.url>10.230.238.56:5000</registry.url>
<jar.main.name>main</jar.main.name>
<jar.monitoring.name>monitoring</jar.monitoring.name>
<registry.url>rh8-vm3.nbki.msk:5000</registry.url>
<!-- <registry.url>rh8-vm3.nbki.msk:5000</registry.url>-->
</properties>
<dependencies>

View file

@ -6,16 +6,38 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.FilterType;
import ru.nbch.credit_tracker.component.MonitoringRequestValidator;
import ru.nbch.credit_tracker.config.datasource.ScoringDataSourceConfig;
import ru.nbch.credit_tracker.config.rest.RestConfig;
import ru.nbch.credit_tracker.config.xml.XmlConfig;
import ru.nbch.credit_tracker.controller.SignalControllerV3;
import ru.nbch.credit_tracker.facade.SignalFacadeV3;
import ru.nbch.credit_tracker.service.MonitoringErrorProcesingService;
import ru.nbch.credit_tracker.service.mode.common.CTMainApplication;
import ru.nbch.credit_tracker.service.mode.common.StartupRestoreService;
import ru.nbch.credit_tracker.service.mode.common.UpdatingFidAndPdService;
import ru.nbch.credit_tracker.service.mode.common.UpdatingFlagsService;
import ru.nbch.credit_tracker.service.mode.monitoring.CTMonitoringApplication;
import ru.nbch.credit_tracker.service.mode.monitoring.MonitoringService;
import ru.nbch.credit_tracker.service.scoring.AuthorizationService;
import ru.nbch.credit_tracker.service.signal.SignalRestService;
import ru.nbch.credit_tracker.service.task.PipelinePackageFabric;
import ru.nbch.credit_tracker.service.task.PipelinePackageOrchestrator;
import ru.nbch.credit_tracker.service.task.impl.FlagsEnricher;
import ru.nbch.credit_tracker.service.task.impl.Saver;
@SpringBootApplication
@ComponentScan(
value = {"ru.nbch.credit_tracker"},
basePackages = {"ru.nbch.credit_tracker"},
excludeFilters = {
@ComponentScan.Filter(
type = FilterType.REGEX,
pattern = {
"ru\\.nbch\\.credit_tracker\\.service\\.mode\\.common..*",
"ru\\.nbch\\.credit_tracker\\.service\\.mode\\.monitoring..*"
type = FilterType.ASSIGNABLE_TYPE,
classes = {CTMonitoringApplication.class, CTMainApplication.class,
ScoringDataSourceConfig.class,StartupRestoreService.class, UpdatingFidAndPdService.class,
UpdatingFlagsService.class, MonitoringService.class, AuthorizationService.class,
SignalFacadeV3.class, SignalControllerV3.class, FlagsEnricher.class, PipelinePackageFabric.class,
RestConfig.class, SignalRestService.class, MonitoringErrorProcesingService.class, Saver.class,
PipelinePackageOrchestrator.class, XmlConfig.class, MonitoringRequestValidator.class
}
)
}

View file

@ -7,7 +7,7 @@ import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.stereotype.Service;
import ru.nbch.credit_tracker.service.task.Pipeline;
import ru.nbch.credit_tracker.service.task.PipelinePackageFabric;
import ru.nbch.credit_tracker.service.task.PipelineMigrationPackageFabric;
import ru.nbch.credit_tracker.service.task.PipelineRecalcPDOrchestrator;
import ru.nbch.credit_tracker.service.task.SetupParam;
import ru.nbch.credit_tracker.service.task.impl.PipelineMode;
@ -16,11 +16,11 @@ import ru.nbch.credit_tracker.service.task.impl.PipelineMode;
@Service
@EnableScheduling
public class MigrationService {
private final PipelinePackageFabric pipelinePackageManager;
private final PipelineMigrationPackageFabric pipelinePackageManager;
private final PipelineRecalcPDOrchestrator pipelineRecalcPDOrchestrator;
private final ConfigurableApplicationContext context;
public MigrationService(PipelinePackageFabric pipelinePackageManager,
public MigrationService(PipelineMigrationPackageFabric pipelinePackageManager,
PipelineRecalcPDOrchestrator pipelineRecalcPDOrchestrator,
ConfigurableApplicationContext context) {
this.pipelinePackageManager = pipelinePackageManager;

View file

@ -0,0 +1,72 @@
package ru.nbch.credit_tracker.service.task;
import java.util.function.Function;
import java.util.function.Supplier;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings;
import ru.nbch.credit_tracker.config.task.StageQueueFactory;
import ru.nbch.credit_tracker.model.impl.EmptyTerminatePayload;
import ru.nbch.credit_tracker.model.impl.PackageVariable;
import ru.nbch.credit_tracker.model.impl.SubjectPayload;
import ru.nbch.credit_tracker.model.impl.VoidPayload;
import ru.nbch.credit_tracker.service.task.impl.FidIdUpdater;
import ru.nbch.credit_tracker.service.task.impl.FidNameUpdaterMigration;
import ru.nbch.credit_tracker.service.task.setup.IPipeLineStarter;
import ru.nbch.credit_tracker.service.task.setup.IPipeLineTerminator;
import ru.nbch.credit_tracker.service.task.setup.PipeLineBuilderV2;
@Component
@Slf4j
public class PipelineMigrationPackageFabric implements InitializingBean {
private final StageQueueFactory<SubjectPayload> idUpdaterQueueFactory;
private final StageQueueFactory<SubjectPayload> nameUpdaterQueueFactory;
private final StageQueueFactory<VoidPayload> noOpQueueFactory;
private final FidIdUpdater fidIdUpdater;
private final FidNameUpdaterMigration fidNameUpdaterMigration;
private final Supplier<IPipeLineTerminator<VoidPayload, EmptyTerminatePayload>> noOpTerminatorFactory;
private final Function<SetupParam, IPipeLineStarter<SubjectPayload>> pipelineStarterFactory;
private final CreditTrackerSettings creditTrackerSettings;
private final PipelineBackoff pipelineBackoff;
public PipelineMigrationPackageFabric(@Qualifier("idUpdaterQueueFactory") StageQueueFactory<SubjectPayload> idUpdaterQueueFactory,
@Qualifier("nameUpdaterQueueFactory") StageQueueFactory<SubjectPayload> nameUpdaterQueueFactory,
@Qualifier("noOpQueueFactory") StageQueueFactory<VoidPayload> noOpQueueFactory,
FidIdUpdater fidIdUpdater,
FidNameUpdaterMigration fidNameUpdaterMigration,
Supplier<IPipeLineTerminator<VoidPayload, EmptyTerminatePayload>> noOpTerminatorFactory,
Function<SetupParam, IPipeLineStarter<SubjectPayload>> pipelineStarterFactory,
CreditTrackerSettings creditTrackerSettings,
PipelineBackoff pipelineBackoff) {
this.idUpdaterQueueFactory = idUpdaterQueueFactory;
this.nameUpdaterQueueFactory = nameUpdaterQueueFactory;
this.noOpQueueFactory = noOpQueueFactory;
this.fidIdUpdater = fidIdUpdater;
this.fidNameUpdaterMigration = fidNameUpdaterMigration;
this.noOpTerminatorFactory = noOpTerminatorFactory;
this.pipelineStarterFactory = pipelineStarterFactory;
this.creditTrackerSettings = creditTrackerSettings;
this.pipelineBackoff = pipelineBackoff;
}
public Pipeline buildRecalculationPDMigration(SetupParam setupParam) throws Exception {
return PipeLineBuilderV2.first(nameUpdaterQueueFactory.getObject(), idUpdaterQueueFactory.getObject())
.handler(fidNameUpdaterMigration)
.andThen()
.stage(noOpQueueFactory.getObject())
.handler(fidIdUpdater)
.andThen()
.fillInitialQueue(pipelineStarterFactory.apply(setupParam))
.pollFinishingQueue(noOpTerminatorFactory.get())
.backoff(pipelineBackoff)
.context(PackageVariable.class)
.build();
}
@Override
public void afterPropertiesSet() throws Exception {
log.info("pipeline settings: {}", creditTrackerSettings.getPipeline());
}
}