xinyiZzz opened a new issue #5907: URL: https://github.com/apache/incubator-doris/issues/5907
**Describe the bug** When `in_memory=true` is specified in `create table`, currently doris will specify the LRU priority as `DURABLE` when reading the table data and caching it through the `page cache`. After the `page cache` is filled, the LRU strategy will be used to traverse the `lru list` to try to evict the longest unused `NORMAL` priority page. The page with priority `DURABLE` will be skipped. After traversing the `lru' List` and evict all `NORMAL pages` and try to evict `DURABLE page` if there is still insufficient space. This will cause the page cache of `in memory table` to always accumulate at the end of the `lru list`, and it will be traversed every time LRU evict, which will consume a lot of CPU when the cache is full. **To Reproduce** 1) Try to fill up `DURABLE page` in `page cache` in `StoragePageCache::StoragePageCache`: 2) Comment out the statement of `cache->lookup` in `PageIO::read_and_decompress_page` **Expected behavior** After submitting the query, `perf` can see that the `LRUCache::_evict_from_lru` method consumes a lot of CPU. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
