Skip to content

Parallel indexing task fails during the rolling update #8836

@jihoonson

Description

@jihoonson

Affected Version

0.16

Description

There are roughly two types of rolling update. One is stopping MMs immediately and restarting them with a newer version. Another is spawning a new instance for a new MM, waiting for an old MM to finish all running tasks and stopping it. Parallel indexing task fails with the below message during the second type of rolling update.

java.lang.RuntimeException: org.apache.druid.java.util.common.ISE: Failed to post task[AbstractTask{id='single_phase_sub_task_exchange_report_sampled_2019-11-06T21:25:33.976Z', groupId='index_parallel_exchange_report_sampled_2019-11-06T21:25:26.427Z', taskResource=TaskResource{availabilityGroup='single_phase_sub_task_exchange_report_sampled_2019-11-06T21:25:33.976Z', requiredCapacity=1}, dataSource='exchange_report_sampled', context={}}] with error[{"error":"Could not resolve type id 'single_phase_sub_task' into a subtype of [simple type, class org.apache.druid.indexing.common.task.Task]: known type ids = [Task, archive, compact, index, index_hadoop, index_kafka, index_kinesis, index_parallel, index_realtime, index_realtime_appenderator, index_sub, kill, move, noop, restore]\n at [Source: HttpInputOverHTTP@43b1d6e5[c=4286,q=0,[0]=null,s=STREAM]; line: 1, column: 2]"}].

This is because one of the sub task type name has been changed in #8257. Note we should be able to upgrade the overload last.

I think the supervisor task can first try to issue a sub task with the new type name, and then retry with the old name if the first try fails with the above error.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions