Mac client sync issues

Hello folks. I got caught out for not having updated enough and my existing pi3 implementation didn’t want to update any longer. I took the opportunity to migrate to a new pi4 and installed the 20 Jul image, duly updated it and restored a fresh backup from the pi3 - all went smoothly until one of the users noted her OSX boxes (x2) wouldn’t upload files. Error given is “Server replied “400 Bad Request” to PUT https://mydomain.tld/remote.php/dav/files/Username/filepath”. The client is the most recent version, and the windows clients work fine. Interestingly the Mac can create and rename folders, but not files. The new box runs NextCloudPi version 1.17.1 and Nextcloud version 16.0.5.1.

I’ve had to go back to the pi3 for the time being, which runs Nextcloud version 15.0.5.3, and complains about the PHP version if I try to update it, it’s version PHP 7.0.33. - all clients sync correctly.

Would be very grateful of some assistance.

I found some details in the log:
{“reqId”:"###################",“level”:4,“time”:“2019-10-13T18:06:27+00:00”,“remoteAddr”:“a.b.c.d”,“user”:“UserName”,“app”:“webdav”,“method”:“PUT”,“url”:"/remote.php/dav/files/UserName/CompanyName%20Management/Employees/employee%20name/filename.docx",“message”:{“Exception”:“Sabre\DAV\Exception\BadRequest”,“Message”:“expected filesize 41151 got 8192”,“Code”:0,“Trace”:[{“file”:"/var/www/nextcloud/apps/dav/lib/Connector/Sabre/Directory.php",“line”:156,“function”:“put”,“class”:“OCA\DAV\Connector\Sabre\File”,“type”:"->",“args”:[null]},{“file”:"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",“line”:1096,“function”:“createFile”,“class”:“OCA\DAV\Connector\Sabre\Directory”,“type”:"->",“args”:[“filename.docx”,null]},{“file”:"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",“line”:525,“function”:“createFile”,“class”:“Sabre\DAV\Server”,“type”:"->",“args”:[“files/UserName/CompanyName Management/Employees/employee name/filename.docx”,null,null]},{“function”:“httpPut”,“class”:“Sabre\DAV\CorePlugin”,“type”:"->",“args”:[{“absoluteUrl”:“https://domain.tld/remote.php/dav/files/UserName/CompanyName%20Management/Employees/employee%20name/filename.docx","class”:“Sabre\HTTP\Request”},{“class”:“Sabre\HTTP\Response”}]},{“file”:"/var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php",“line”:105,“function”:“call_user_func_array”,“args”:[[{“class”:“Sabre\DAV\CorePlugin”},“httpPut”],[{“absoluteUrl”:“https://domain.tld/remote.php/dav/files/UserName/CompanyName%20Management/Employees/employee%20name/filename.docx","class”:“Sabre\HTTP\Request”},{“class”:“Sabre\HTTP\Response”}]]},{“file”:"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",“line”:479,“function”:“emit”,“class”:“Sabre\Event\EventEmitter”,“type”:"->",“args”:[“method:PUT”,[{“absoluteUrl”:“https://domain.tld/remote.php/dav/files/UserName/CompanyName%20Management/Employees/employee%20name/filename.docx","class”:“Sabre\HTTP\Request”},{“class”:“Sabre\HTTP\Response”}]]},{“file”:"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",“line”:254,“function”:“invokeMethod”,“class”:“Sabre\DAV\Server”,“type”:"->",“args”:[{“absoluteUrl”:“https://domain.tld/remote.php/dav/files/UserName/CompanyName%20Management/Employees/employee%20name/filename.docx","class”:“Sabre\HTTP\Request”},{“class”:“Sabre\HTTP\Response”}]},{“file”:"/var/www/nextcloud/apps/dav/lib/Server.php",“line”:316,“function”:“exec”,“class”:“Sabre\DAV\Server”,“type”:"->",“args”:[]},{“file”:"/var/www/nextcloud/apps/dav/appinfo/v2/remote.php",“line”:35,“function”:“exec”,“class”:“OCA\DAV\Server”,“type”:"->",“args”:[]},{“file”:"/var/www/nextcloud/remote.php",“line”:163,“args”:["/var/www/nextcloud/apps/dav/appinfo/v2/remote.php"],“function”:“require_once”}],“File”:"/var/www/nextcloud/apps/dav/lib/Connector/Sabre/File.php",“Line”:228,“CustomMessage”:"–"},“userAgent”:“Mozilla/5.0 (Macintosh) mirall/2.6.0stable (build 20190927) (Nextcloud)”,“version”:“16.0.5.1”,“id”:"###########"}
It looks like the client announces the size of the file and the server understands it, but the client only sends 8,192 bytes. There’s a few entries in the log like this one with different files.
Thanks,
Alex