hadoop-pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Swati Jain (JIRA)" <j...@apache.org>
Subject [jira] Created: (PIG-1510) Add `deepCopy` for LogicalExpressions
Date Wed, 21 Jul 2010 09:16:51 GMT
Add `deepCopy` for LogicalExpressions

                 Key: PIG-1510
                 URL: https://issues.apache.org/jira/browse/PIG-1510
             Project: Pig
          Issue Type: New Feature
          Components: data
    Affects Versions: 0.8.0
            Reporter: Swati Jain
            Assignee: Swati Jain
             Fix For: 0.8.0

It would be useful to have a way to `deepCopy` an expression. `deepCopy` will create a new
object so that changes made to one object will not reflect in the copy. There are 2 reasons
why we don't override clone.
* It may be better to use `deepCopy` since the copy semantics are explicit (since deepCopy
may be expensive).
* A second important reason for defining `deepCopy` as a separate routine is that it can be
passed a plan as an argument which will be updated as the expression is copied (through plan.add
and plan.connect).

The usage would look like the following:
LogicalExpressionPlan logicalPlan = new LogicalExpressionPlan();
LogicalExpression copyExpression = origExpression.deepCopy( logicalPlan );

An immediate motivation for this would be for constructing the expressions that constitute
the CNF form of an expression.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message