-
Notifications
You must be signed in to change notification settings - Fork 62
Known limitations
This issue should be fixed. Should you encounter this error, please open a new issue.
- gooddata-java issue: DataStoreService call fails with 500
- GoodData internal issue: WA-6316
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:
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/gooddata/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.
Since the GoodData WebDAV never sends 100 - continue
response, every authenticated request suffers the 3s delay between sending header and body.
There is a possibility to configure shorter delay, which on the other hand can cause a bit more cryptic exception reporting stream closed
.