Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[6.x.x] Adds in memory cache for RPC query results #5191

Merged
merged 7 commits into from
Mar 15, 2024

Conversation

reinhapa
Copy link
Member

@reinhapa reinhapa commented Jan 15, 2024

Backport of #5188.

Enables in-memory query result values less than 4 MB instead of writing them to a temporary file.

By using the in-memory-buffer no potential virus scanner is trigger either on the server as on the client side. This almost doubled the performance on our productive systems, when using this change.

@reinhapa reinhapa force-pushed the in-memory-rpcfiles-6.x.x branch 2 times, most recently from 8388d1b to 760469d Compare January 15, 2024 18:55
@reinhapa reinhapa requested review from adamretter and dizzzz January 19, 2024 17:24
@reinhapa reinhapa marked this pull request as ready for review January 19, 2024 17:25
@line-o
Copy link
Member

line-o commented Jan 19, 2024

Uhh, I need to see what this does for xst

@line-o line-o requested a review from a team January 19, 2024 22:01
@line-o
Copy link
Member

line-o commented Jan 19, 2024

@reinhapa should this be forward ported to existdb 7 or is it already in place there?

@adamretter
Copy link
Contributor

should this be forward ported to existdb 7 or is it already in place there?

Review is already happening at the source for eXist-db 7.x.x - #5188

@reinhapa reinhapa marked this pull request as draft February 6, 2024 16:15
@reinhapa reinhapa force-pushed the in-memory-rpcfiles-6.x.x branch from ef78b22 to 9971e76 Compare March 13, 2024 19:44
- Use in memory caching for resuls smaller 4 MB adding new
  CachedContentFile and companion test case
- Extended XmlRpcTest to improve coverage of RpcConnection
- Added new QueryResultCacheTest

Signed-off-by: Patrick Reinhart <[email protected]>
@reinhapa reinhapa force-pushed the in-memory-rpcfiles-6.x.x branch from 9971e76 to d89b881 Compare March 13, 2024 21:21
@reinhapa reinhapa marked this pull request as ready for review March 14, 2024 05:15
Replaces direct construction of in memory RPC results with pooled
instances.

Signed-off-by: Patrick Reinhart <[email protected]>
@reinhapa reinhapa force-pushed the in-memory-rpcfiles-6.x.x branch from 31a21b5 to f1d6e02 Compare March 14, 2024 11:10
@reinhapa
Copy link
Member Author

@adamretter PR is ready for review 😊

Copy link
Contributor

@adamretter adamretter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@adamretter adamretter merged commit 2ad390e into eXist-db:develop-6.x.x Mar 15, 2024
7 of 8 checks passed
@reinhapa reinhapa deleted the in-memory-rpcfiles-6.x.x branch March 16, 2024 11:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants