NAME

AtteanX::API::JoinRotatingPlanner - Query planning role to produce alternative join plans

VERSION

This document describes AtteanX::API::JoinRotatingPlanner version 0.027

DESCRIPTION

The AtteanX::API::JoinRotatingPlanner role, when used with Attean::QueryPlanner, produces alternatives for join query plans. Specifically, joins of the form (A⋈B)⋈C are rotated to A⋈(B⋈C), with the ability to coalesce B⋈C (e.g. for adjacent BGPs).

REQUIRED METHODS

allow_join_rotation( $join_plan )

Returns true if join rotation should be attempted on the given join plan.

coalesce_rotated_join( $join_plan )

Given a Attean::API::Plan::Join plan $join_plan, returns a list of equivalent plans. This is useful when the join can be reduced to a more fundamental plan type, such as merging two adjacent BGP plans into a single plan.

BUGS

Please report any bugs or feature requests to through the GitHub web interface at https://github.com/kasei/attean/issues.

SEE ALSO

AUTHOR

Gregory Todd Williams <gwilliams@cpan.org>

COPYRIGHT

Copyright (c) 2014--2020 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.