You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 3, 2023. It is now read-only.
The id provides uniqueness and contains helpful identifying information, which is fine, but it's contents and format are assumed by parts of the system, which is bad. For example:
If the instanceIdx part of the id is not globally unique, tuples can be mis-routed when using shuffle grouping. This is because the heron-executorparsestaskId from instanceId and passes that to the started instance. This value becomes the globally unique taskId on the PhysicalPlan which is used extensively.
The packing package passes maps of instanceIds around and parses out the componentName. Instead it should work with InstancePlan objects and call instnacePlan.getComponentName().
There should be no hidden meaning or expectations of that id beyond it being human readable. That id format should be safe to change without breaking underlying systems. If a concept like instnaceIdx is required by the system, it should be added to InstancePlan as a typed concept that can be accessed without parsing tokens from the id.
The text was updated successfully, but these errors were encountered:
A Heron Instance id (i.e.,
instanceId
) is generated using the following format:The id provides uniqueness and contains helpful identifying information, which is fine, but it's contents and format are assumed by parts of the system, which is bad. For example:
instanceIdx
part of the id is not globally unique, tuples can be mis-routed when using shuffle grouping. This is because theheron-executor
parsestaskId
frominstanceId
and passes that to the started instance. This value becomes the globally uniquetaskId
on thePhysicalPlan
which is used extensively.instanceIds
around and parses out thecomponentName
. Instead it should work withInstancePlan
objects and callinstnacePlan.getComponentName()
.There should be no hidden meaning or expectations of that id beyond it being human readable. That id format should be safe to change without breaking underlying systems. If a concept like
instnaceIdx
is required by the system, it should be added toInstancePlan
as a typed concept that can be accessed without parsing tokens from the id.The text was updated successfully, but these errors were encountered: