[ https://issues.apache.org/jira/browse/YARN-6593?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Konstantinos Karanasos updated YARN-6593: ----------------------------------------- Attachment: YARN-6593.003.patch Attaching new version of the patch. I had several offline discussions with [~chris.douglas], also got feedback from [~subru]. Here is a brief description: * {{PlacementConstraints}} contains various static methods for applications to create constraints in a user-friendly way. * {{PlacementConstraint}} is the constraint object that will be used by the scheduler. It contains the generic constraint triple, as well as the more specific target and cardinality constraints. It also contains the composite constraints (and/or/delayedOr). * The hierarchy in the {{PlacementConstraint}} is different from the protobuf that is passed over the wire. This way we are not restricted by the limitations of the protobuf version, and we also can evolve the PlacementConstraint objects the scheduler sees independently from the protobuf objects. * {{PlacementConstraintToProtoConverter}} converts a PlacementConstraint to its protobuf counterpart. * {{PlacementConstraintFromProtoConverter}} converts a protobuf object to its PlacementConstraint counterpart. * Notice that there are purposely no *PBImpl classes, since the PlacementConstraint objects will be manipulated by the scheduler, thus there is no need to maintain expensive protobuf-backed records (this is related to similar overheads on the {{ResourceRequest}} objects, discussed in YARN-6245). * {{PlacementConstraintTransformations}} perform transformations on the PlacementConstraint objects. At the moment, there is one converter that translates the generic constraints to specific target/cardinality ones, in case the scheduler wants to handle them separately. A second converter does the inverse transformation. More transformations can be eventually added, such as transform a tree to a CNF form. Please give it a look and let me know how it looks. > [API] Introduce Placement Constraint object > ------------------------------------------- > > Key: YARN-6593 > URL: https://issues.apache.org/jira/browse/YARN-6593 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Konstantinos Karanasos > Assignee: Konstantinos Karanasos > Attachments: YARN-6593.001.patch, YARN-6593.002.patch, > YARN-6593.003.patch > > > This JIRA introduces an object for defining placement constraints. -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org