[
https://issues.apache.org/jira/browse/DERBY-6036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13546022#comment-13546022
]
Rick Hillegas edited comment on DERBY-6036 at 1/8/13 7:47 PM:
--------------------------------------------------------------
If you wrap a base table in a view, it appears that the projection is not
passed through to the base table. I am attaching derbyAST.xml, which is the
printout of parse(), bind(), and optimize() ASTs produced by the following
script when you use the XmlASTPrinter attached to DERBY-4415. From the
printout, you can see the following:
1) For the SELECT from a base table (select s_nr from t where ns_r = 3000), the
optimizer wraps the base table in a ProjectRestrict node which projects out
only two columns.
2) However, for the SELECT from a view on that base table (select s_nr from vt
where ns_r = 3000), the optimizer wraps the base table in a ProjectRestrict
node which projects out ALL four columns in the table.
was (Author: rhillegas):
The problem may be more general. If you wrap a base table in a view, it
appears that the projection is not passed through to the base table either. I
am attaching derbyAST.xml, which is the printout of parse(), bind(), and
optimize() ASTs produced by the following script when you use the XmlASTPrinter
attached to DERBY-4415. From the printout, you can see the following:
1) For the SELECT from a base table (select s_nr from t where ns_r = 3000), the
optimizer wraps the base table in a ProjectRestrict node which projects out
only two columns.
2) However, for the SELECT from a view on that base table (select s_nr from vt
where ns_r = 3000), the optimizer wraps the base table in a ProjectRestrict
node which projects out ALL four columns in the table.
> If you wrap a SELECT * view around a table, all of the columns are read from
> the base row even when you SELECT only a subset of the view columns.
> -------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-6036
> URL: https://issues.apache.org/jira/browse/DERBY-6036
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.10.0.0
> Reporter: Rick Hillegas
> Attachments: derby-6036.sql, derbyAST.xml
>
>
> This also affects SELECTs from views wrapping RestrictedVTIs. Restrictions
> are pushed into a restricted VTI if you wrap it in a view. However,
> projections are not. I will attach a script showing this problem.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira