Hi,
I am trying to insert nested data from sqldb to Elasticsearch index.
I create a query with joins and insert data into Elasticsearch index.
I used aggregate, but it is not giving correct result.
Mapping
PUT testing1111
{
    "mappings" : {
      "properties" : {
        "my_task_id" : {
          "type" : "long"
        },
       "my_details" : {
          "type" : "text"
        },
		"posts" : {
          "type" : "nested",
		  "properties": {
          "s_id": {
            "type": "long"
          },
		  "status": {
            "type": "text"
          }
        }}
      }
   }
}
aggregate Filter
filter {
    aggregate {
        task_id => "%{my_task_id}"
        code => "
            map['my_task_id'] = event.get(my_task_id)
			map['my_details'] = event.get(my_details)
			map['posts'] ||= []
            map['posts'] << {
                'status' => event.get('status'),
                's_id' => event.get(s_id)
            }
        event.cancel()"
        push_previous_map_as_event => true
        timeout => 80
    }
}
Data is

Target to insert data into this format into index
{ "my_task_id": 2,
  "my_details" : "solve problem two",
  "posts" : [
  {"status" : 1,
  "s_id" : 3
  },
  {"status" : 1,
  "s_id" : 7
  },
  {"status" : 2,
  "s_id" : 99
  },
  {"status" : 2,
  "s_id" : 43
  }
  ]
}
Data coming form sql. I make a jdbc connection, my_task_id and my_details field coming from table A and status, s_id coming from table B
I also used mutate filter but did not achieve targeted result.
Thanks