def generateHistogramQuery_OS_segments_non_experiment_legacy()

in lib/telemetry.py [0:0]


  def generateHistogramQuery_OS_segments_non_experiment_legacy(self, histogram):
    t = get_template("other/legacy/histogram_os_segments.sql")

    branches = self.config["branches"]
    for i in range(len(branches)):
      branches[i]["last"] = False
      if "version" in self.config["branches"][i]:
        version = self.config["branches"][i]["version"]
        branches[i]["ver_condition"] = f"AND SPLIT(application.display_version, '.')[offset(0)] = \"{version}\""
      if "architecture" in self.config["branches"][i]:
        arch = self.config["branches"][i]["architecture"]
        branches[i]["arch_condition"] = f"AND application.architecture = \"{arch}\""
      if "legacy_conditions" in self.config["branches"][i]:
        branches[i]["legacy_conditions"] = self.config["branches"][i]["legacy_conditions"]

    branches[-1]["last"] = True

    context = {
        "histogram": histogram,
        "available_on_desktop": self.config['histograms'][histogram]['available_on_desktop'],
        "available_on_android": self.config['histograms'][histogram]['available_on_android'],
        "branches": branches,
        "channel": self.config["branches"][0]["channel"],
    }
    query = t.render(context)
    # Remove empty lines before returning
    query = "".join([s for s in query.strip().splitlines(True) if s.strip()])
    self.queries.append({
      "name": f"Histogram: {histogram}",
      "query": query
    })
    return query