[
https://issues.jboss.org/browse/TEIID-2460?page=com.atlassian.jira.plugin...
]
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