Ref T308 prephase, meaasure model parsing ttime

This commit is contained in:
Klaus Basan
2018-08-20 18:29:14 +02:00
parent 3f1e2940a2
commit fcbca7b0b0
2 changed files with 14 additions and 5 deletions

View File

@@ -25,6 +25,7 @@
#include <QScopedPointer> #include <QScopedPointer>
#include <QScopedPointerDeleteLater> #include <QScopedPointerDeleteLater>
#include <QTimer> #include <QTimer>
#include <QTime>
#include <QUrl> #include <QUrl>
#include <QWriteLocker> #include <QWriteLocker>
#include <Qt> #include <Qt>
@@ -309,9 +310,10 @@ namespace BlackCore
CLogMessage(this).error("No timestamp in livery list, setting to last modified value"); CLogMessage(this).error("No timestamp in livery list, setting to last modified value");
latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data()); latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data());
} }
m_liveryCache.set(liveries, latestTimestamp); const CStatusMessage cacheMsg = m_liveryCache.set(liveries, latestTimestamp);
this->updateReaderUrl(getBaseUrl(CDbFlags::DbReading)); CLogMessage::preformatted(cacheMsg);
this->updateReaderUrl(getBaseUrl(CDbFlags::DbReading));
this->emitAndLogDataRead(CEntityFlags::LiveryEntity, n, res); this->emitAndLogDataRead(CEntityFlags::LiveryEntity, n, res);
} }
@@ -352,9 +354,11 @@ namespace BlackCore
CLogMessage(this).error("No timestamp in distributor list, setting to last modified value"); CLogMessage(this).error("No timestamp in distributor list, setting to last modified value");
latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data()); latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data());
} }
m_distributorCache.set(distributors, latestTimestamp);
this->updateReaderUrl(getBaseUrl(CDbFlags::DbReading));
const CStatusMessage cacheMsg = m_distributorCache.set(distributors, latestTimestamp);
CLogMessage::preformatted(cacheMsg);
this->updateReaderUrl(getBaseUrl(CDbFlags::DbReading));
this->emitAndLogDataRead(CEntityFlags::DistributorEntity, n, res); this->emitAndLogDataRead(CEntityFlags::DistributorEntity, n, res);
} }
@@ -384,7 +388,10 @@ namespace BlackCore
} }
else else
{ {
QTime time;
time.start();
models = CAircraftModelList::fromDatabaseJson(res); models = CAircraftModelList::fromDatabaseJson(res);
CLogMessage(this).info("Parsed %1 models in %2 ms") << models.size() << time.elapsed();
} }
// synchronized update // synchronized update
@@ -396,7 +403,8 @@ namespace BlackCore
CLogMessage(this).error("No timestamp in model list, setting to last modified value"); CLogMessage(this).error("No timestamp in model list, setting to last modified value");
latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data()); latestTimestamp = lastModifiedMsSinceEpoch(nwReply.data());
} }
m_modelCache.set(models, latestTimestamp); const CStatusMessage cacheMsg = m_modelCache.set(models, latestTimestamp);
CLogMessage::preformatted(cacheMsg);
this->updateReaderUrl(this->getBaseUrl(CDbFlags::DbReading)); this->updateReaderUrl(this->getBaseUrl(CDbFlags::DbReading));
this->emitAndLogDataRead(CEntityFlags::ModelEntity, n, res); this->emitAndLogDataRead(CEntityFlags::ModelEntity, n, res);

View File

@@ -75,6 +75,7 @@ namespace BlackMisc
void IDatastoreObjectWithIntegerKey::setKeyAndTimestampFromDatabaseJson(const QJsonObject &json, const QString &prefix) void IDatastoreObjectWithIntegerKey::setKeyAndTimestampFromDatabaseJson(const QJsonObject &json, const QString &prefix)
{ {
// this function is performance sensitive, as it is called for all DB data
const int dbKey = json.value(prefix % QStringLiteral("id")).toInt(-1); const int dbKey = json.value(prefix % QStringLiteral("id")).toInt(-1);
this->setDbKey(dbKey); this->setDbKey(dbKey);