treeverse / lakeFS

lakeFS - Data version control for your data lake | Git for data
https://docs.lakefs.io
Apache License 2.0
4.48k stars 359 forks source link

Ristretto lock contention in critical path reduces performance of random reads #1459

Closed ozkatz closed 1 year ago

ozkatz commented 3 years ago

Currently Pyramid openFile spends a considerable amount of time on updating the underlying Ristretto cache, causing a lot of internal lock contention.

To generate such load using the abuse command:

lakectl abuse random-read lakefs://repo1@a67a8fa0cfc598859a46ef652800f9d4e2d70db41a78c27f1500193118156068 --amount 1000000 --from-file ./randomfiles --parallelism $(nproc)

Then, going to /_pprof/mutex?seconds=5 will generate a locking profile that can be examined with go tool pprof to see the time spent on locking.

ozkatz commented 1 year ago

This is very old and most likely irrelevant at this point. Closing for now, will reopen if needed.