improve store costing of fetch of single row where not all columns are fetched.
-------------------------------------------------------------------------------

         Key: DERBY-1508
         URL: http://issues.apache.org/jira/browse/DERBY-1508
     Project: Derby
        Type: Improvement

  Components: Store  
    Reporter: Mike Matrigali
    Priority: Minor


Currently HeapCostController ignores information about what subset of columns 
is being requested.  For instance
in getFetchFromRowLocationCost() validColumns argument is unused.  In 
getScanCost() , scanColumnList is unused.

Mostly this probably does no matter as the cost of getting the row dominates 
the per column subset cost.  The area
where this matters is the case of long columns.  The cost of fetching multiple 
row keyed by a row location  with a 2 gigabyte column that is not in 
the select list  is currently way smaller than the cost of doing the same query 
by scanning the table for the same set of rows.  

Currently the heap estimate associates cost with total average row length, 
gotten by using the # of rows and the amount of space in the 
container.  It does not have a statistic available of the average size of each 
column.  At it's level  all column lengths are variable and could
possibly be > 2 gig.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to