#3580 [refactor] [flytekit] Map task improvements
Issue created by
wild-endeavor
Map tasks in flytekit currently are expressed as a MapPythonTask, a separate object.
The special things we currently do for map tasks
• create a separate object
• special local execute behavior
• special casing in entrypoint.py
• special casing in translator.py
The goal for this ticket is to attempt to get rid of as much special casing in flytekit that we have. Ultimately when a map task run, it's the underlying task that runs, just with a different input/output location, for the most part. We should be able to remove a substantial amount of the special logic we have for map tasks in flytekit.
It may be possible for us to one day get to a place where we don't have to register a separate row in the tasks table for the map task, but that is not the goal of this ticket. The reason is caching - we want users to be able to cache the results of the map task at the map task layer, not just the underlying tasks.
This ticket may or may not be related to the array node work.
flyteorg/flyte