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 "Kristian Waagan (JIRA)" <ji...@apache.org> on 2010/01/20 13:46:54 UTC
[jira] Resolved: (DERBY-4519) Infinite loop in
StreamFileContainer.writeColumn
[ https://issues.apache.org/jira/browse/DERBY-4519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kristian Waagan resolved DERBY-4519.
------------------------------------
Resolution: Fixed
Fix Version/s: 10.5.3.1
Issue & fix info: (was: [Patch Available])
Thanks for the review, Knut Anders.
I committed patch 2a to trunk with revision 901165.
Back-ported to the 10.5 branch with revision 901167 for good measure, but I don't expect that we will enable the affected code on that branch. For the same reason I'm not planning to back-port to older branches.
> Infinite loop in StreamFileContainer.writeColumn
> ------------------------------------------------
>
> Key: DERBY-4519
> URL: https://issues.apache.org/jira/browse/DERBY-4519
> Project: Derby
> Issue Type: Bug
> Components: Store
> Affects Versions: 10.0.2.1, 10.1.3.1, 10.2.2.0, 10.3.3.0, 10.4.2.0, 10.5.3.0, 10.6.0.0
> Reporter: Kristian Waagan
> Assignee: Kristian Waagan
> Fix For: 10.5.3.1, 10.6.0.0
>
> Attachments: derby-4519-1a-argument_swap.diff, derby-4519-2a-infinite_loop_fixes.diff
>
>
> The offset and length argument have been swapped in the calls to InputStream.read(byte,offset, length) and write(byte,offset, length). This code is inside a do-while (true) loop, and the only normal way out is when InputStream.read returns -1. This will never happen since the stream is asked to read zero bytes. Derby ends up eating up all available CPU, limited to a single core / CPU.
> The bug hasn't been observed because Derby is materializing all values when calling this code. Enabling streaming capabilities in the sorter revealed it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.