[teiid-issues] [JBoss JIRA] (TEIID-2460) Weird behavior when Max buffer space restriction is hit

Steven Hawkins (JIRA) jira-events at lists.jboss.org
Wed Jun 12 08:06:54 EDT 2013


     [ https://issues.jboss.org/browse/TEIID-2460?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins resolved TEIID-2460.
-----------------------------------

    Resolution: Done


7.7.7 also does not have TEIID-2430, which makes cleanup slower.

Corrected the log message and marking as resolved again as the 8.4 behavior was validated.  A new issue BZ can be opened against 7.7.7 if there seems to be a perceived deficiency there - more than likely it's related to the strategy of creating too many sort tuplebuffers coupled with insufficient immediate cleanup TEIID-2430, which means that final disk space cleanup is based upon the catch all of phantom reference cleanup that is not guaranteed to occur in a "timely fashion".  But in any case the server will recover, not fill up the log, and not exceed the disk limit.

Also, the behavior can be further improved in 8.4+ as we are now tracking the command context via a thread local and the workitem via the command context - this gives the ability for a BatchManager to track the command and issue a cancel upon invalidation.
                
> Weird behavior when Max buffer space restriction is hit 
> --------------------------------------------------------
>
>                 Key: TEIID-2460
>                 URL: https://issues.jboss.org/browse/TEIID-2460
>             Project: Teiid
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 7.7.6
>            Reporter: Filip Nguyen
>            Assignee: Steven Hawkins
>             Fix For: 8.4, 7.7.7
>
>         Attachments: teiid-jboss-beans.xml
>
>
> I was trying to restrict the disk space used by buffer manager (see steps to reproduce for my methodology). When the disk limit is hit, it really tries to stop the query, but doesn't succeed immediately. 
> There is a big amount of exceptions [1] for relatively long period of time (minutes for big files), until it fails eventually with [2]. The error [2] is also given back to the JDBC client. 
> Problem is that after the query fails in this fashion, the whole buffer disk space is still occupied and any new query, that needs even small (acceptable) buffer disk space, fails.
> Only way that I have found to make the buffer space usable again is to restart the server.
> [1]  Error transferring block to storage 149742
> java.io.IOException: Max buffer space of 31,457,280 bytes has been exceed.  The current operation will be aborted.
> [2]  org.teiid.jdbc.TeiidSQLException: Batch not found in storage 50937

--
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


More information about the teiid-issues mailing list