Baikal version: 0.7.0
Expected behaviour: Evolution 3.36.2-1 calender sync without errors
Current behaviour: Throwing exception.
Die Fehlermeldung war 禄Fehler bei der Ausgabe von REPORT: HTTP-Fehlercode 500 (Internal Server Error): 4.1.0
ErrorException
Trying to access array offset on value of type bool[sabredav-version][exception][message]芦.
2020/06/07 17:58:40 [error] 796#796: *594 FastCGI sent in stderr: "PHP message: ErrorException: Trying to access array offset on value of type bool in .../vendor/sabre/dav/lib/CalDAV/Backend/PDO.php:791
Stack trace:
#0 .../vendor/sabre/dav/lib/CalDAV/Backend/PDO.php(791): Baikal\Framework::exception_error_handler(8, 'Trying to acces...', '/var/customers/...', 791, Array)
#1 .../vendor/sabre/dav/lib/CalDAV/Calendar.php(354): Sabre\CalDAV\Backend\PDO->calendarQuery(1, Array)
#2 .../vendor/sabre/dav/lib/CalDAV/Plugin.php(598): Sabre\CalDAV\Calendar->calendarQuery(Array)
#3 .../vendor/sabre/dav/lib/CalDAV/Plugin.php(258): Sabre\CalDAV\Plugin->calendarQueryReport(Object(Sabre\CalDAV\Xml\Request\CalendarQueryReport))
#4 .../vendor/sabre/event/lib/WildcardEmitterTrait.php(89): Sabre\CalDAV\Plugin->report('{urn:ietf:param...', Object(Sabre\C" while reading response header from upstream, client: 37.24.77.127, server: dav.domain.tld, request: "REPORT /cal.php/calendars/cscholz/default/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/user-php-fpm.socket:", host: "dav.domain.tld"
Related code section. If uncommented, sync runs without any error.
// If start time OR the end time is not specified, we can do a
// 100% accurate mysql query.
if (!$filters['prop-filters'] && !$filters['comp-filters'][0]['comp-filters'] && !$filters['comp-filters'][0]['prop-filters'] && (!$timeRange['start'] || !$timeRange['end'])) {
$requirePostFilter = false;
}
Do you use php 7.4? If so, try 7.3. Looks like there is still an error, even though I thought that we can finally support 7.4...
Yes I鈥檓 running on php 7.4. I鈥檒l give it a try with 7.3 to crosscheck.
I can confirm that the error does not occur with php7.3.
$ dpkg -l | grep php7.3-fpm
php7.3-fpm 7.3.19-1+0~20200612.60+debian10~1.gbp6c8fe1
The bug still exists with php 7.4. Shouldn't the issue stay open then?
@cscholz does the code in https://github.com/sabre-io/dav/pull/1275 help?
I still get the error. My system won't let me downgrade php to 7.3 so I'm without calendaring at the moment.
@danastasio, you can just comment out the three lines mentioned in the original post. It works for me on Fedora 32 (php 7.4).
Well I feel dumb. I really do try and read the whole post, but I missed that. Thanks @yenya! That fixed it.
Hi,
Thank you for the fix. When I installed Baikal, my FreeBSD package installer updated php to 7.4.11 and I did not know it was an issue
I spent a lot of time before I found this patch. I can confirm I could sync using Outlook CalDav Synchroniser after this patch with php 7.4.11
Can anyone elaborate if there any specific issues to the sync reliability with this patch ? What are the cases a client request could cause fails or events lost/not sync after commenting that part of the code ?
many thanks
Should be fixed now in Baikal 0.8.0. If you still experience the problem, just let me know :)
Most helpful comment
@danastasio, you can just comment out the three lines mentioned in the original post. It works for me on Fedora 32 (php 7.4).
baikal-0.7.1-php74.patch.txt