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:
{noformat}
LogicalExpressionPlan logicalPlan = new LogicalExpressionPlan();
LogicalExpression copyExpression = origExpression.deepCopy( logicalPlan );
{noformat}

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.


Mime
View raw message