Skip to content
Snippets Groups Projects
Commit ba835edb authored by gwen-soleil's avatar gwen-soleil
Browse files

fix regression: exportPeriod for TDB was not set into database (Jira SOLEIL TANGOARCH-946)

parent d011aa4b
No related branches found
No related tags found
No related merge requests found
......@@ -17,6 +17,7 @@ import fr.soleil.archiving.hdbtdb.api.tools.mode.ModeAbsolu;
import fr.soleil.archiving.hdbtdb.api.tools.mode.ModeDifference;
import fr.soleil.archiving.hdbtdb.api.tools.mode.ModePeriode;
import fr.soleil.archiving.hdbtdb.api.tools.mode.ModeRelatif;
import fr.soleil.archiving.hdbtdb.api.tools.mode.TdbSpec;
import fr.soleil.database.connection.DataBaseParameters;
import fr.soleil.tango.archiving.build.DatabaseConnectionConfig;
import fr.soleil.tango.archiving.config.AttributeConfig;
......@@ -40,8 +41,10 @@ public class ArchivingDatabase implements IArchivingDatabase {
private final Logger logger = LoggerFactory.getLogger(ArchivingDatabase.class);
private IHdbAttributeInsert inserter;
private final long exportPeriod;
public ArchivingDatabase(DatabaseConnectionConfig parameters, boolean isHDB, boolean isDBInsertion)
public ArchivingDatabase(DatabaseConnectionConfig parameters, boolean isHDB, boolean isDBInsertion, long exportPeriod)
throws ArchivingException {
DataBaseParameters config = new DataBaseParameters();
config.setDbType(DataBaseParameters.DataBaseType.parseDataBaseType(parameters.getDbType().name()));
......@@ -68,12 +71,9 @@ public class ArchivingDatabase implements IArchivingDatabase {
if (isDBInsertion) {
inserter = ((HDBDataBaseManager) dataBaseManager).getHdbAttributeInsert();
}
this.exportPeriod = exportPeriod;
}
/* public boolean isDbConnected() {
return dataBaseManager.isDbConnected();
}*/
@Override
public DataBaseManager getDataBase() {
return dataBaseManager;
......@@ -82,7 +82,6 @@ public class ArchivingDatabase implements IArchivingDatabase {
@Override
public void registerAttributeMode(final ArchivingConfig config ) throws ArchivingException {
logger.warn("registerAttributeMode {}", config.getAttributeConfig().getFullName());
System.out.println("registerAttributeMode " + config.getAttributeConfig().getFullName());
AttributeLightMode lightMode = new AttributeLightMode();
lightMode.setAttributeCompleteName(config.getAttributeConfig().getFullName());
lightMode.setDevice_in_charge(config.getArchiver());
......@@ -120,6 +119,9 @@ public class ArchivingDatabase implements IArchivingDatabase {
mode.setEventMode(new EventMode());
}
lightMode.setMode(mode);
if (dataBaseManager instanceof TDBDataBaseManager) {
mode.setTdbSpec(new TdbSpec(exportPeriod, 0));
}
logger.debug("registerAttributeMode lightMode = {}", lightMode);
dataBaseManager.getMode().insertModeRecord(lightMode);
}
......
......@@ -32,7 +32,7 @@ public class ArchivingInfra {
public ArchivingInfra(final DatabaseConnectionConfig parameters, final boolean isHDB,
final boolean isDBInsertion, final boolean insertErrors) throws ArchivingException {
final boolean isDBInsertion, final boolean insertErrors, long exportPeriod) throws ArchivingException {
if (parameters.getDbType().equals(DatabaseConnectionConfig.DataBaseType.POSTGRESQL)) {
isTimeseries = true;
this.isDBInsertion = true;
......@@ -40,7 +40,7 @@ public class ArchivingInfra {
logger.debug("building TTS connection with parameters {}", parameters);
} else {
this.isDBInsertion = isDBInsertion;
database = new ArchivingDatabase(parameters, isHDB, isDBInsertion);
database = new ArchivingDatabase(parameters, isHDB, isDBInsertion, exportPeriod);
}
dbType = parameters.getDbType();
}
......
......@@ -215,7 +215,7 @@ public class HdbArchiver {
protected TangoCollectorService buildDbProxy(DatabaseConnectionConfig params, boolean insertErrors) throws ArchivingException {
ArchivingInfra timeseriesInfra = new ArchivingInfra(params, true, !isUsingTemporaryFiles(), insertErrors);
ArchivingInfra timeseriesInfra = new ArchivingInfra(params, true, !isUsingTemporaryFiles(), insertErrors, 0);
return new TangoCollectorService(timeseriesInfra, deviceName, forceUseEvents, !isUsingTemporaryFiles(), minimumInsertionPeriod);
}
......
......@@ -65,7 +65,7 @@ public class TdbArchiver extends HdbArchiver {
}
protected TangoCollectorService buildDbProxy(DatabaseConnectionConfig params, boolean insertErrors) throws ArchivingException {
ArchivingInfra timeseriesInfra = new ArchivingInfra(params, false, !isUsingTemporaryFiles(), insertErrors);
ArchivingInfra timeseriesInfra = new ArchivingInfra(params, false, !isUsingTemporaryFiles(), insertErrors, 0);
TangoCollectorService tangoCollectorServiceBuild = new TangoCollectorService(timeseriesInfra, deviceName, forceUseEvents, !isUsingTemporaryFiles(), minimumInsertionPeriod);
tangoCollectorServiceBuild.setTemporaryFileConfiguration(exportPeriod, dbPath, dsPath, attributePerFile, forceExportOnStart);
return tangoCollectorServiceBuild;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment