How to use conditional operator in bucket_script.i tried this query

{
            "size": 0,
            "query": {
              "bool": {
                "filter": [],
                "must": [
                  {
                    "terms": {
                      "metric_id": [
                        10003,
                        10007,
                        1009,
                        1032,
                        1033
                      ]
                    }
                  }
                ]
              }
            },
                "aggs": {
                  "groupby_metric_id": {
                    "terms": {
                      "field": "metric_name.keyword",
                      "size": 999,
                      "order": {
                        "_key": "desc"
                      }
                    },
                    "aggs": {
                      "groupby_school_year": {
                        "terms": {
                          "field": "school_year",
                          "size": 1,
                          "order": {
                            "_key": "desc"
                          }
                        },
                        "aggs": {
                          "groupby_school_name": {
                            "terms": {
                              "field": "school_official_name.keyword",
                              "size": 999,
                              "order": {
                                "_key": "desc"
                              }
                            },
                            "aggs": {
                              "document_sample": {
                                "top_hits": {
                                  "_source": {
                                    "includes": [
                              "school_official_name",
                              "address_1",
                              "school_logo",
                              "school_city",
                              "school_state",
                              "school_zip_code",
                              "school_grade_configuration",
                              "principal_photo",
                              "school_principal",
                              "@timestamp",
                              "metric_prefix",
                              "metric_suffix",
                              "metric_mask",
                              "metric_precision",
                              "metric_indicator_type",
                              "metric_icon_location",
                              "school_grade",
                              "school_image",
                              "metric_type"
                            ]
                                  }
                                }
                              },
                              "sum_num_cy": {
                                "sum": {
                                  "script": {
                                    "lang": "painless",
                                    "source": "Float.parseFloat(params._source.metric_numerator === null ? '0':String.valueOf(params._source.metric_numerator))"
                                  }
                                }
                              },
                              "sum_den_cy": {
                                "sum": {
                                  "script": {
                                    "lang": "painless",
                                    "source": "Float.parseFloat(params._source.metric_denominator === null ? '0':String.valueOf(params._source.metric_denominator))"
                                  }
                                }
                              },
                              "current_year": {
                                "bucket_script": {
                                  "buckets_path": {
                                    "var1": "sum_num_cy",
                                    "var2": "sum_den_cy"
                                  },
                                  "script": {
                                    "lang": "painless",
                                    "source": "Float.parseFloat(params._source.metric_type === percentage ? '(params.var1/params.var2*100)':'(params.var1))'"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }

error:
{
"error": {
"root_cause": ,
"type": "search_phase_execution_exception",
"reason": "",
"phase": "fetch",
"grouped": true,
"failed_shards": ,
"caused_by": {
"type": "script_exception",
"reason": "compile error",
"script_stack": [
"... r2100)':'(params.var1))'",
" ^---- HERE"
],
"script": "Float.parseFloat(params._source.metric_type === percentage ? '(params.var1/params.var2
100)':'(params.var1))'",
"lang": "painless",
"caused_by": {
"type": "illegal_argument_exception",
"reason": "unexpected end of script.",
"caused_by": {
"type": "no_viable_alt_exception",
"reason": null
}
}
}
},
"status": 503
}

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.