Apache OpenOffice (AOO) Bugzilla – Issue 95011
Too many requests for UpdateFeed for extensions
Last modified: 2010-02-09 15:46:21 UTC
The website that is hosting the extensions was brought down by the release of OOo3.0 due to the amount of requests to the update feed. It is solved now by using a proxy, but the load could be decreased in general: 1)General question is when and how often the UpdateFeed is requested: http://updateext.services.openoffice.org/ProductUpdateService/check.Update And if it can be reduced to about once per day/startup? 2)Beside the needed http-GET request there are several others, that are not necessary: OPTIONS/PROPFIND/HEAD Requests Some example logs from the web server: > 142.165.174.193 - - [10/Oct/2008:00:00:00 +0000] "GET /ProductUpdateService/check.Update HTTP/1.1" 200 130504 "-" "OpenOffice.org 3.0 (300m9(Build:9358); Windows; x86; BundledLanguages=en-US)" > 142.165.174.193 - - [10/Oct/2008:00:00:01 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 130504 "-" "OpenOffice.org 3.0 (300m9(Build:9358); Windows; x86; BundledLanguages=en-US)" > 142.165.174.193 - - [10/Oct/2008:00:00:01 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 130504 "-" "OpenOffice.org 3.0 (300m9(Build:9358); Windows; x86; BundledLanguages=en-US)" > 142.165.174.193 - - [10/Oct/2008:00:00:02 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 130504 "-" "OpenOffice.org 3.0 (300m9(Build:9358); Windows; x86; BundledLanguages=en-US)" > 142.165.174.193 - - [10/Oct/2008:00:00:03 +0000] "HEAD /ProductUpdateService/check.Update HTTP/1.1" 200 - "-" "OpenOffice.org 3.0 (300m9(Build:9358); Windows; x86; BundledLanguages=en-US)" > 142.165.174.193 - - [10/Oct/2008:00:00:10 +0000] "PROPFIND /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 405 349 "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:10 +0000] "PROPFIND /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 405 349 "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:10 +0000] "HEAD /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 200 - "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:10 +0000] "HEAD /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 200 - "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:10 +0000] "PROPFIND /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 405 349 "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:11 +0000] "PROPFIND /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 405 349 "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:11 +0000] "PROPFIND /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 405 349 "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:11 +0000] "HEAD /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 200 - "-" "-" > 142.165.174.193 - - [10/Oct/2008:00:00:11 +0000] "GET /files/79/5/sun-report-builder-1.0.5.oxt HTTP/1.1" 200 2541896 "-" "-" Another example, that is executed every hour > 70.102.1.146 - - [10/Oct/2008:21:10:57 +0000] "GET /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:10:58 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:10:59 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:11:00 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:11:01 +0000] "GET /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:11:02 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:11:03 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)" > 70.102.1.146 - - [10/Oct/2008:21:11:04 +0000] "PROPFIND /ProductUpdateService/check.Update HTTP/1.1" 200 133603 "-" "OOo-dev 3.0 Beta (300m25(Build:9330); Windows; x86; BundledLanguages=en-US)"
retargeted
.
Target 3.3
Since it got only pushed to a new target i will raise the priority: p2 Our hoster makes us aware of a huge request in count and size for the extension update feed which he is annoyed of. So I rechecked this issue with OOO320m5 A single click onto the 'Check for updates button' results in the following server request log: There is 1 real get request: ok There are 3 PROPFIND requests for no real use, but which results in delivering the whole update feed 3 times again. And sometimes this is done 2 times alltogether-> 1 get, 3 propfind, 1 get, 3 propfind - which is by far too much So please start eleminating these calls. If you need the server to verify, there is one internal available. (update feed host is configured in program/versionrc: ExtensionUpdateURL=http://updateext.services.openoffice.org/ProductUpdateService/check.Update ) 10.16.64.111 - - [23/Nov/2009:16:00:11 +0100] "GET /drupal-5.17-ext/ProductUpdateService/check.Update HTTP/1.1" 200 277671 "-" "StarOffice 9 (320m5(Build:9458); MacOSX; x86; BundledLanguages=en-US)" 10.16.64.111 - - [23/Nov/2009:16:00:12 +0100] "PROPFIND /drupal-5.17-ext/ProductUpdateService/check.Update HTTP/1.1" 200 277671 "-" "StarOffice 9 (320m5(Build:9458); MacOSX; x86; BundledLanguages=en-US)" 10.16.64.111 - - [23/Nov/2009:16:00:13 +0100] "PROPFIND /drupal-5.17-ext/ProductUpdateService/check.Update HTTP/1.1" 200 277671 "-" "StarOffice 9 (320m5(Build:9458); MacOSX; x86; BundledLanguages=en-US)" 10.16.64.111 - - [23/Nov/2009:16:00:13 +0100] "PROPFIND /drupal-5.17-ext/ProductUpdateService/check.Update HTTP/1.1" 200 277671 "-" "StarOffice 9 (320m5(Build:9458); MacOSX; x86; BundledLanguages=en-US)"
cc'ed kso
Tested OOO320m5 on windows with the bundled dictionary extensions. Wireshark tells me that there is on Get followd by a PropFind. The feed is only delivered as as result of the Get.
Some mailing and analysing from different parties results now in: There are 2 behaviours, depending on the server: 1. Ideal behaviour with 1 GET and delivering the feed + 1 PROPFIND delivering Status 405 with 942 bytes This is for delivering just a text file with apache. The PROPFIND comes due to the OOo WebDAV Client is used to request the feed. 2. When drupal comes in action and the file is delivered through drupal the behaviour is as described: 1 GET delivering the feed + 1 PROPFIND, also delivering the feed, since it is a kind of XML, but not as expected from OOo. Then OOo special behaviour takes place and it sends 2 other PROPFINDS to maybe get another result, each again answered with the full feed. Current status for this on the server is behaviour a) which just results in one PROPFIND request too much, with just delivering a few bytes as error mesage.
tbo: So I take this issue as the request to eliminate the last glitch, the PROPFIND currently following every GET.
Fixed (as a "side-effect" of my fix for #i107150#. :-)
tbo: Please verify.
verified in CWS kso42 on win32: ok fixed
integrated into master dev300m71 - closing