The function in this commit
resulted in a 1500% increase in mysql select traffic after our upgrade from 8.2.3 to 8.2.5.
We are using CentOS 6.7 with apache 2.2.15 on our web servers. Percona mysql galera cluster 5.6.28-76.1-56 with 3 nodes (also CentOS 6.7) and HAProxy 1.5.4 on CentOS 6.7 for failover. We have all traffic go to one node to avoid deadlocks.
After commenting out the function in this commit we saw traffic drop from ~15k queries/sec to 1000 queries/sec, almost entirely selects. But at times we'd seen select query loads as high as 45k/sec.
This function appears to cause some kind of looping for propfinds from the client during the discovery phase when processing shares. We turned logging of sql queries and saw the same shares looping over and over. Our user base is global so as time went on, users were going to bed and other users were starting work and so the names of the shares in the sql queries changed, but the pattern of looping remained.
cc @PVince81 @icewind1991
@icewind1991 didn't we find a workaround for 9.0 for this?
@icewind1991 would also be good to check whether this performance regression affects 9.0+ or is a side-effect of older code in 8.2.x. Because if it's only 8.2.x then we might want to revert that fix, which seemed to be there mostly to fix image orientation issues.
I can confirm this issue. We've upgraded from 8.1.6 to 8.2.5 a few hours ago and see a massive increase of queries: https://cs.uol.de/index.php/s/cR3o0LfzH5ncKTu.
nginx 1.10 + PHP 5.6.21
MySQL 5.6.29 (percona galera cluster)
I believe this is no longer a problem with master/9.1 with the reworking of the SharedStorage
Will look into a sollution for 8.2/9.0
9.0 fix is here #24839
I'll try to come up with a proper fix for 8.2 but it might be best to just revert the original isLocal fix
Patch seems to mitigate the issue 👍
This is fixed now I guess?
for me: yes. Amount of queries of ownCloud 8.2.5 reduces after I've applied this patch.