@Override
  public List<PlanNode> visitLimit(LimitNode node, DistributionPlanContext context) {
    List<PlanNode> result = new ArrayList<>();
    for (PlanNode planNode : rewrite(node.getChild(), context)) {
      LimitNode newNode =
          new LimitNode(
              context.queryContext.getQueryId().genPlanNodeId(), planNode, node.getLimit());
      result.add(newNode);
    }
    return result;
  }
aggregation align by device, and aggregation is `count_if` or `diff`, or aggregation used with
group by parameter (session, variation, count), use the old aggregation logic
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/SourceRewriter.java