Fix bug in tuple iswhole logic for bulk connections #490
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes the case where the compiler improperly tries to do a bulk
connection.
The desired behavior is to check:
is the value connected to the current tuple "whole", which means
that a tuple of the same type is connected to the current tuple,
in this case we can connect the two tuples together, rather than
their components.
However, this check was improperly indicating a bulk connection in the
case when the driving value satisfied all the properties for a whole
tuple, except that it doesn't contain all the keys of the parent tuple.
This change strengthens the check to ensure that the driver is only
considered whole when the values refer to all the values corresponding
to the parent tuple.