Closed corsac-s closed 5 days ago
I'm unsure where the error 500 comes
Logging in Radicale 1.x.x was unreliable. It probably wrote the error message to stderr
. Try to update to version 2.x.x.
Upgrading is not really an option here. I tried to run radicale using: radicale -f -D
but nothing happens on stdout/stderr. Is there something more I need to do?
Is there something more I need to do?
No, that should be enough. Did A server error occurred. Please contact the administrator.
appear in the client log, again?
I just had this problem of evolution not being able to change a calendar entry on Debian as well
Evolution 3.26.0-1 Radicale: 1.1.1+20160115-4 (I'm guessing Debian backported some patches)
My apache error logs may have a useful error:
[client 131.215.54.62:49808] Received request requiring chunked transfer encoding, but optional support for chunked transfer encoding has not been enabled.: /var/lib/radicale/radicale.wsgi
I do see chunked mentioned in the logs above, and found some other web posts that chunked mode doesn't work well with WSGI.
I don't think I'm using WSGI, I'm using radicale directly so it handles everything HTTP related, afaict. But maybe the issue is still related to chunked encoding.
I do see chunked mentioned in the logs above, and found some other web posts that chunked mode doesn't work well with WSGI.
I haven't noticed that.
Radicale's built-in web server uses the WSGI reference implementation from Python's standard library. It only supports HTTP/1.0, Transfer-Encoding
was introduced in HTTP/1.1.
The client shouldn't use it, unless it made sure that the server supports HTTP/1.1.
You have to use another WSGI server, that supports HTTP/1.1.
Radicale's built-in web server uses the WSGI reference implementation from Python's standard library. It only supports HTTP/1.0, Transfer-Encoding was introduced in HTTP/1.1. The client shouldn't use it, unless it made sure that the server supports HTTP/1.1.
Well, I guess I can work with that and report that to evolution (actually I think it might be to glib-networking or libcurl, not sure).
I got some logging out of evolution and here's the put when I tried to update an event.
> PUT /user/calendar.ics/12345678-1234-1234-1234-1234567890ab.ics HTTP/1.1
> Soup-Debug-Timestamp: 1506551337
> Soup-Debug: EWebDAVSession 1 (0x56386cf95dd0), SoupMessage 4 (0x7f77947a14a0),
SoupSocket 5 (0x7f77946bf370)
> Host: cal.example.com
> User-Agent: Evolution/3.26.0
> Connection: close
> Cache-Control: no-cache
> Pragma: no-cache
> If-Match: "4793972f593deb0487268e53f599ccc7"
> Content-Type: text/calendar; charset="utf-8"
> Transfer-Encoding: chunked
> Accept-Language: en-us, en;q=0.9
> Authorization: Basic [user:********]
<Then new vcard data>
< HTTP/1.1 411 Length Required
< Soup-Debug-Timestamp: 1506551337
< Soup-Debug: SoupMessage 4 (0x7f77947a14a0)
< Date: Wed, 27 Sep 2017 22:28:58 GMT
< Server: Apache/2.4.25 (Debian)
< Content-Length: 317
< Connection: close
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>411 Length Required</title>
</head><body>
<h1>Length Required</h1>
<p>A request of the requested method PUT requires a valid Content-length.<br />
</p>
<hr>
<address>Apache/2.4.25 (Debian) Server at cal.example.com Port 443</address>
</body></html>
Technically Transfer-Encoding: chunked is part of the HTTP/1.1 spec.
WSGI (or its replacement) probably should be updated to support it. On the other hand evolution seems like it should know the content-length, so why isn't it setting it?
I'm not really fluent enough in HTTP protocol, but evolution (or libsoup) starts with OPTIONS /foo.ics HTTP/1.1
and radicale always reply with HTTP/1.0 200 OK
so maybe at one point libsoup should understand that the server can't do HTTP/1.1 and fall back to 1.0
I dug a bit more and found https://bugzilla.gnome.org/show_bug.cgi?id=787656 which is now fixed in evolution-data-server git tree (85543d3993a24e41c8b7fdaac53799a9cca71fe2)
@corsac-s Hi, I forwarded the gnome bugzilla link to Debian, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877145 I'll see if I I can get a release incorporating it.
On Fri, 2017-09-29 at 15:15 +0000, Diane Trout wrote:
@corsac-s Hi, I forwarded the gnome bugzilla link to Debian, https://bugs.de bian.org/cgi-bin/bugreport.cgi?bug=877145 I'll see if I I can get a release incorporating it.
Thanks @detrout / Diane. I actually talked to Jeremy about that and e-d-s 3.26.1 release (including the fix) is expected next Monday, and he should be able to do an upload to Debian sid in the same timeframe.
Regards, -- Yves-Alexis
Awesome. Thank you.
closed because of very old version
Hi, I'm using radicale server 1.1.1+20160115-4 (from Debian stretch) and an evolution client (3.26.0 from Debian sid).
Following the evolution upgrade, I can successfully read calendars and address books, but I can't write to them. When trying that, evolution reports an error 500 from the server. I assume there's something fishy on the client side, but trying to debug on the radicale side, I find no trace of the error.
Example debug log on the client side:
On the server side, I get:
And nothing after the last line. I can't spot anything wrong there so I'm unsure where the error 500 comes from, which would really help in debugging the client part.