[ 
https://issues.apache.org/jira/browse/DERBY-6940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16061702#comment-16061702
 ] 

Bryan Pendleton commented on DERBY-6940:
----------------------------------------

Your approach to addressing the DERBY-3219 problems seems fine to me. I think 
it is quite clever and should get us the behavior that we need.

Can you clarify why the exception handling is needed in the writeExternal 
method? That is, why isn't it more like:


{code:java}
writeBoolean( min == max);
if (min != max)
    writeObject(maxVal);
writeObject(minVal);
{code}

Regarding additional statistics, I don't have any to add at this time. I'm a 
big fan of incremental improvement, so I'm happy to add only the statistics 
that we need now, and in the future if we should determine that additional 
statistics would be valuable, we can address those needs as follow-on projects.

However, yes, please, as you continue to study the code, and think about the 
approaches and possibilities, do let us know what additional statistics you 
think would be helpful, that is much appreciated!

> Enhance derby statistics for more accurate selectivity estimates.
> -----------------------------------------------------------------
>
>                 Key: DERBY-6940
>                 URL: https://issues.apache.org/jira/browse/DERBY-6940
>             Project: Derby
>          Issue Type: Sub-task
>          Components: SQL
>            Reporter: Harshvardhan Gupta
>            Assignee: Harshvardhan Gupta
>            Priority: Minor
>         Attachments: DERBY-6940_2.diff, DERBY-6940_3.diff, derby-6940.diff, 
> EOFException_derby.log, EOFException.txt
>
>
> Derby should collect extra statistics during index build time, statistics 
> refresh time which will help optimizer make more precise selectivity 
> estimates and chose better execution paths.
> We eventually want to utilize the new statistics to make better selectivity 
> estimates / cost estimates that will help find the best query plan. Currently 
> Derby keeps two type of stats - the total row count and the number of unique 
> values.
> We are initially extending the stats to include null count, the minimum value 
> and maximum value associated with each of the columns of an index. This would 
> be useful in selectivity estimates for operators such as [ IS NULL, <, <=, >, 
> >= ] , all of which currently rely on hardwired selectivity estimates.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to