Michael Smith created IMPALA-15258:
--------------------------------------
Summary: Query can hang in BufferPool::Client::CleanPages
Key: IMPALA-15258
URL: https://issues.apache.org/jira/browse/IMPALA-15258
Project: IMPALA
Issue Type: Bug
Components: Backend
Affects Versions: Impala 4.5.0
Reporter: Michael Smith
Assignee: Michael Smith
With plans produced with CTEs by IMPALA-13533, I've observed the query hanging
during BufferPool CleanPages. Stack traces showed a thread waiting on
[https://github.com/apache/impala/blob/master/be/src/runtime/bufferpool/buffer-pool.cc#L713.|https://github.com/apache/impala/blob/master/be/src/runtime/bufferpool/buffer-pool.cc#L713]
Further logging showed a scenario where {{target_dirty_bytes}} is negative:
{code:java}
I20260812 22:48:09.199885 141206 buffer-pool.cc:679]
254fc219ed384ebf:227b64f700000010] target_dirty_bytes=-1048576
reservation=17825792 buffers_allocated_bytes_=1048576 pinned_pages_.bytes()=0
len=17825792 {code}
I noticed that {{buffers_allocated_bytes_}} is usually guarded by
{{{}lock_{}}}, but in
[DestroyPageInternal|https://github.com/apache/impala/blob/master/be/src/runtime/bufferpool/buffer-pool.cc#L493]
it's not. Moving that update into the lock seems to fix the hang.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)