OwnCloud timeout


  • developer

    The reason why I don't just increase the timeout is also that I would have to introduce an "interactive" and "non-interactive" mode for HttpClient. Otherwise, the setup process could take (in the worst case) let's say 10 requests * 5 min = 50 minutes. And nobody wants to wait 50 minutes… even 450 seconds is hard, but it's somehow acceptable.

    Maybe there should be an interactive mode with 30 seconds timeout and a non-interactive mode with 120 seconds timeout or something like that.



  • Again I understand your point... what is worse? Wait 10 min or no functionality at all? πŸ™‚

    I really dont want to convince you to do something... To solve my personal problem, I will find a solution... I will do a personal build of the app with a higher timeout... so I will be happy...


  • developer

    @Tobias said:

    I really dont want to convince you to do something... To solve my personal problem, I will find a solution... I will do a personal build of the app with a higher timeout... so I will be happy...

    Which should be quite simple πŸ™‚ The timeout is in HttpClient (linked above).

    But I think I'll raise the timeout – however, it's also clear that then the servers will never be fixed to work efficiently (because "everything works").



  • Lets say it will take longer, because only people who are aware of such things will write bug reports... but we already have that situation πŸ™‚



  • @Tobias Can you try it with DAVdroid 0.6.1? This works for me. Perhaps it is the same issue like this.


  • developer

    But then you won't have tasks support, and all the other improvements since 0.6.1 …



  • I really wont go for the old version... In case I will recompile with my "own" timeout value and will be happy πŸ™‚


  • developer

    I have now increased the default timeout values and set readTimeout to 120 s.

    In case that there are problems with the setup because it really takes too long, we will have to create "interactive" and "non-interactive" static constructors for HttpClient. The setup process should also be responsively cancelable (if anyone has suggestions or patches for that, you're welcome).



  • Would it be possible to make the timeout configurable?
    There is probably not a global best tradeoff between unwanted failure and loss of patience πŸ™‚

    But the increased timeout value fixed the issue for me, thanks for that.

    Another observation is that the owncloud response time really seems to be depend on the number of calendar entries.
    Using the curl test from above, I reduced the response time in my setup from 47 sec to 10 sec by removing 800 (obsolete) out of 1270 calendar entries.

    So another question: Would it be possible not to synchronize all entries, but only entries up to (for example) 6 months in the past?


  • developer

    @sarcastix said:

    Would it be possible to make the timeout configurable?
    There is probably not a global best tradeoff between unwanted failure and loss of patience πŸ™‚

    I'm not a fan of settings … and I believe that users won't increase the timeout when getting a DAVdroid error message, but instead write a mail or rate it with 1*. So, the default timeout still would have to be high, so there's no real need to decrease it by setting, too.

    But the increased timeout value fixed the issue for me, thanks for that.

    Good to hear that it works around the problem, which is OwnCloud taking a long time.

    Another observation is that the owncloud response time really seems to be depend on the number of calendar entries.
    Using the curl test from above, I reduced the response time in my setup from 47 sec to 10 sec by removing 800 (obsolete) out of 1270 calendar entries.

    So another question: Would it be possible not to synchronize all entries, but only entries up to (for example) 6 months in the past?

    This feature is already planned. However, OwnCloud (assuming that it has no indexes, which is searching takes so long) would still have to scan all entries to see whether they are in the requested time range. So this wouldn't speed up OwnCloud, but rather slow it down.