Bug 82677 - PERF - Lots of PROPFIND requests when using cursor navigation on WebDAV file access
Summary: PERF - Lots of PROPFIND requests when using cursor navigation on WebDAV file ...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
4.3.0.4 release
Hardware: Other All
: medium normal
Assignee: Giuseppe Castagno (aka beppec56)
URL:
Whiteboard: target:5.3.0 target:7.3.0
Keywords:
Depends on:
Blocks:
 
Reported: 2014-08-15 20:34 UTC by Oleg Burlaca
Modified: 2021-11-01 17:47 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Oleg Burlaca 2014-08-15 20:34:33 UTC
Although WebDAV editing of a file works fine under LO 4.3.0.4 on Windows.
When working with the same file under LO 4.3.0.4 Build ID: 62ad5818884a2fc2e5780dd45466868d41009ec0 on MacOSX, I see a lot of PROPFIND requests in my access_log file. LO does this request when I navigate through the file with cursor keys or when I start typing.


174.243.66.107 - username [15/Aug/2014:21:16:55 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:01 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:01 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:02 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:03 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:04 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:05 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:10 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:11 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:12 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
174.243.66.107 - username [15/Aug/2014:21:17:13 +0200] "PROPFIND /dev/edit-3259/sample.odt HTTP/1.1" 207 470
Comment 1 Robinson Tryon (qubit) 2014-08-17 01:40:54 UTC
(In reply to comment #0)
> Although WebDAV editing of a file works fine under LO 4.3.0.4 on Windows.
> When working with the same file under LO 4.3.0.4 Build ID:
> 62ad5818884a2fc2e5780dd45466868d41009ec0 on MacOSX, I see a lot of PROPFIND
> requests in my access_log file. LO does this request when I navigate through
> the file with cursor keys or when I start typing.
> 

Hi Oleg,
Are you having a specific problem with WebDAV access via OSX? Are there more symptoms than the chatter in the logs?

Thanks,
--R

(Please change status back to 'UNCONFIRMED' if there's a bug or you have an enhancement request)
Comment 2 Oleg Burlaca 2014-08-18 21:21:02 UTC
(In reply to comment #1)
> Are you having a specific problem with WebDAV access via OSX? Are there more
> symptoms than the chatter in the logs?

Hi Robinson,

I'm opening an URL directly in LO, i.e. not from a mounted webDav in MacOSX.
Example: https://mydomain.com/edit/42832/filename.doc

Everything works, but slow, 
because when I type text or just navigate the document using cursor keys,
LO starts to generate a lot of PROPFIND requests, slowing down the editing process.
Comment 3 Oleg Burlaca 2014-08-23 10:50:11 UTC
Hello Robinson,

I'm trying the same on a fresh Ubuntu with LO 4.2.4.2
the same issues, a lot of webDav PROPFIND requests in logs:
when I start typing, navigating with cursor keys. Each keystroke generates PROPFIND requests.
Comment 4 Oleg Burlaca 2014-08-26 22:16:16 UTC
Hello, I continue to research the issue:
- lots of PROPFIND even if a WebDAV resource is mounted in Linux as a folder
- I also found this: https://bugzilla.gnome.org/show_bug.cgi?id=556749

Does it mean it's related to filesystem? 
Would be great if there are suggestions/workarounds for editing a WebDAV document via a direct link in LO on Linux/MAC
Comment 5 Alex Thurgood 2014-10-18 14:13:21 UTC
Multiple OS, and changed title to reflect it is a performance issue
Comment 6 Giuseppe Castagno (aka beppec56) 2016-08-03 16:03:22 UTC
Implementing some sort of short lifetime cache should solve this.
Comment 7 Oleg Burlaca 2016-08-12 11:25:42 UTC
Thanks Giuseppe for letting us know. By 'cache' you mean it will be a fix for LO?
Comment 8 Giuseppe Castagno (aka beppec56) 2016-08-12 13:30:21 UTC
(In reply to Oleg Burlaca from comment #7)
> Thanks Giuseppe for letting us know. By 'cache' you mean it will be a fix
> for LO?

Yes, only for direct WebDAV (e.g. protocols http/https/vnd.sun.star.webdav/vnd.sun.star.webdavs) won't work for mounted WebDAV.

It will cache temporarily PROPFIND (the PROPFIND type that requests the available properties) results for a brief period of time, reducing the number of net accesses.
Comment 9 Oleg Burlaca 2016-08-12 13:49:11 UTC
Cool, got it. I use direct webDav. (mounted doesn't work ok in MacOs for ex).
Comment 10 Commit Notification 2016-08-23 10:37:35 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=98bd24f8b479132ca3f2d884749b738e9e6203e3

Related: tdf#82677, implement a PROPFIND 'propname' request cache

It will be available in 5.3.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 11 Commit Notification 2016-08-23 11:24:24 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=00e1f840be4a1ff202d82377b3cbf233b352b1c3

Related: tdf#82677, add cache use in Content::getProperties()

It will be available in 5.3.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Commit Notification 2016-08-23 11:25:54 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=90ded4cbf1ffbde2ef7926fb225759896ef075bf

Related: tdf#82677, remove cached element when appropriate

It will be available in 5.3.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 13 Giuseppe Castagno (aka beppec56) 2016-08-27 07:03:03 UTC
@Oleg Burlaca

The current daily master available here:
<http://dev-builds.libreoffice.org/daily/master/MacOSX-x86_64@49-TDF/current/>
should contain the fix.

You may install it following this instruction.
<https://wiki.documentfoundation.org/Installing_in_parallel/OS_X>

Keep in mind that daily builds may be unstable.
Comment 14 Oleg Burlaca 2016-08-27 21:29:00 UTC
(In reply to Giuseppe Castagno (aka beppec56) from comment #13)
Just tried on Mac OS Mavericks, the fix works, COOOL!!!
Now I see only a few PROPFIND requests in access_log.

Waiting for the 5.3.0. (should be in January/February)

Thanks!
Comment 15 Xisco Faulí 2016-10-03 10:05:06 UTC
Hello,
Is this bug fixed?
If so, could you please close it as RESOLVED FIXED?
Comment 16 Giuseppe Castagno (aka beppec56) 2016-10-03 15:46:16 UTC
See comment 14.
Comment 17 Commit Notification 2021-11-01 17:46:51 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/7541727dfc5938910ce58c73c4dfbcd727dcb7f1

ucb: webdav-curl: Related: tdf#82677, implement a PROPFIND 'propname' request cache

It will be available in 7.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 18 Commit Notification 2021-11-01 17:47:04 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/e384a009c35542c51e0f991466af40b70a4fdb33

ucb: webdav-curl: Related: tdf#82677, add cache use in Content::getProperties()

It will be available in 7.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 19 Commit Notification 2021-11-01 17:47:18 UTC
Giuseppe Castagno committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/1cb59f9187f6dfd255bb0d47bdb5ca8be09ea47e

ucb: webdav-curl: Related: tdf#82677, remove cached element when appropriate

It will be available in 7.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.