未验证 提交 fac4ddc9 编写于 作者: wu-sheng's avatar wu-sheng 提交者: GitHub

Fix two serious bugs. (#4741)

上级 7b071bd7
......@@ -169,6 +169,7 @@ public class MetricsPersistentWorker extends PersistenceWorker<Metrics> {
nextExportWorker.ifPresent(exportEvenWorker -> exportEvenWorker.in(
new ExportEvent(metrics, ExportEvent.EventType.INCREMENT)));
} else {
metrics.calculate();
prepareRequests.add(metricsDAO.prepareBatchInsert(model, metrics));
nextWorker(metrics);
}
......
......@@ -50,8 +50,8 @@ public class TopNRecordsQueryEsDAO extends EsDAO implements ITopNRecordsQueryDAO
SearchSourceBuilder sourceBuilder = SearchSourceBuilder.searchSource();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must().add(QueryBuilders.rangeQuery(TopN.TIME_BUCKET)
.gte(duration.getStartTimeBucket())
.lte(duration.getEndTimeBucket()));
.gte(duration.getStartTimeBucketInSec())
.lte(duration.getEndTimeBucketInSec()));
if (StringUtil.isNotEmpty(condition.getParentService())) {
final String serviceId = IDManager.ServiceID.buildId(condition.getParentService(), condition.isNormal());
......
......@@ -68,8 +68,8 @@ public class TopNRecordsQuery implements ITopNRecordsQueryDAO {
.column(TopN.TRACE_ID)
.from(client.getDatabase(), condition.getName())
.where()
.and(gte(TopN.TIME_BUCKET, duration.getStartTimeBucket()))
.and(lte(TopN.TIME_BUCKET, duration.getEndTimeBucket()));
.and(gte(TopN.TIME_BUCKET, duration.getStartTimeBucketInSec()))
.and(lte(TopN.TIME_BUCKET, duration.getEndTimeBucketInSec()));
if (StringUtil.isNotEmpty(condition.getParentService())) {
final String serviceId = IDManager.ServiceID.buildId(condition.getParentService(), condition.isNormal());
......
......@@ -55,9 +55,9 @@ public class H2TopNRecordsQueryDAO implements ITopNRecordsQueryDAO {
}
sql.append(" and ").append(TopN.TIME_BUCKET).append(" >= ?");
parameters.add(duration.getStartTimeBucket());
parameters.add(duration.getStartTimeBucketInSec());
sql.append(" and ").append(TopN.TIME_BUCKET).append(" <= ?");
parameters.add(duration.getEndTimeBucket());
parameters.add(duration.getEndTimeBucketInSec());
sql.append(" order by ").append(valueColumnName);
if (condition.getOrder().equals(Order.DES)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册