You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Richard N. Hillegas (Jira)" <ji...@apache.org> on 2020/07/03 14:26:00 UTC
[jira] [Closed] (DERBY-7082) A rotten comment in
IndexStatisticsDaemonImpl.java
[ https://issues.apache.org/jira/browse/DERBY-7082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Richard N. Hillegas closed DERBY-7082.
--------------------------------------
> A rotten comment in IndexStatisticsDaemonImpl.java
> --------------------------------------------------
>
> Key: DERBY-7082
> URL: https://issues.apache.org/jira/browse/DERBY-7082
> Project: Derby
> Issue Type: Bug
> Reporter: ackelcn
> Priority: Major
>
> When I read the code of DataDictionaryImpl.java, I found a comment:
>
> {code:java}
> private void setHeapRowEstimate(TransactionController tc, long tableId,
> long rowEstimate)
> throws StandardException {
> // DERBY-4116: If we know the row count, update the store estimated row
> // count for the table.
> ScanController sc = tc.openScan(
> ...
> }{code}
> The comment mentions DERBY-4116. I found that DERBY-4116 modified AlterTableConstantAction.java, and the patch is as follows:
>
>
>
> {code:java}
> @@ -779,6 +782,33 @@@@ -779,6 +782,33 @@
> } // for each leading column (c1) (c1,c2)....
> } // for each index.
> ++ // DERBY-4116 if there were indexes we scanned, we now know the row count.
> + // Update statistics should update the store estimated row count for the table.
> + // If we didn't scan an index and don't know, numRows will still be -1 and
> + // we skip the estimatedRowCount update.
> +
> + if (numRows == -1)
> + return;
> +
> + ScanController heapSC = tc.openScan(td.getHeapConglomerateId(),
> + false, // hold
> + 0, // openMode: for read
> + TransactionController.MODE_RECORD, // locking
> + TransactionController.ISOLATION_READ_UNCOMMITTED, //isolation level
> + null, // scancolumnlist-- want everything.
> + null, // startkeyvalue-- start from the beginning.+ 0,
> + null, // qualifiers, none!
> + null, // stopkeyvalue,+ 0);
> +
> + try {
> + heapSC.setEstimatedRowCount(numRows);
> + } finally {
> + heapSC.close();
> + }
> + }
> {code}
> The patch modified the updateStatistics method. However, the method is totaly rewritten by follow-up commits, and the method does not contain the above added lines any more.
>
>
> I am wondering whether IndexStatisticsDaemonImpl.java mentions a rotten issue report (DERBY-4116--), in that all the modifications of this issue do not appear in the latest version.
>
> Would you please check the problem? If it is, the reference of DERBY-4116 shall be removed from the comment of DataDictionaryImpl.java.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)