You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The GoodData WebDAV Server unfortunately doesn't follow the specification - section 8.2.3. After receiving the header part of the PUT request it should send either 100 - continue or final response (i.e. 401 in case of yet unauthenticated request). Instead of that it doesn't send anything, but waits to receive the request body. The body is sent by GoodData Java SDK with 3s delay implemented in Http client. This has following results:
Upload fails when called first after GoodData object creation
In case the PUT on WebDAV is the first request, the client is not yet authenticated. The PUT with delay causes internal error on WebDAV (status 500). Unfortunately the InputStream passed to upload method has been read. Such a case is signalized with DataStoreException and message similar to
Got 500 while uploading to https://secure.gooddata.com/uploads/path_of_the_uploaded_file.
This can be known limitation, see https://github.com/martiner/gooddata-java/wiki/Known-limitations
If you met this, please change your code to do some other request first in order to get authenticated properly.
Upload waits for 3s when already authenticated
Since the GoodData WebDAV never sends 100 - continue response, every authenticated request suffers the 3s delay between sending header and body.