Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

exceptions.NotFoundError(href) when syncing with Zimbra #480

Closed
cmorty opened this issue Jun 28, 2016 · 3 comments
Closed

exceptions.NotFoundError(href) when syncing with Zimbra #480

cmorty opened this issue Jun 28, 2016 · 3 comments

Comments

@cmorty
Copy link

cmorty commented Jun 28, 2016

I wanted to sync eGroupware with Zimbra. eGroupware works fine (tested with Owncloud), but Zimbra makes trouble. So I decided to sync to the file system, but even that fails.

Environment:

  • Zimbra 8.6.0.GA.1153.UBUNTU14.64
  • vdirsyncer, version 0.11.2
  • Up to date Ubuntu Jessie and pipsi

Config:

[pair rh2]
a = rhnew
b = fszi
#metadata = ["color", "displayname"]
collections = null

[storage rhnew]
type = caldav
url = 
username = 
password = 

[storage fszi]
type = filesystem
path = "/home/morty/eg/zi"
fileext = ".txt"

Log:


/vdirsyncer  -vdebug sync rh2
debug: Using 1 maximal workers.
Syncing rh2
debug: Loaded status for rh2
debug: PROPFIND https://mail.example.com/dav/morty@example.com/Calendar/Test/
debug: {'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml; charset=UTF-8', 'Depth': 1}
debug: <?xml version="1.0" encoding="utf-8" ?>
debug:             <D:propfind xmlns:D="DAV:">
debug:                 <D:prop>
debug:                     <D:resourcetype/>
debug:                     <D:getcontenttype/>
debug:                     <D:getetag/>
debug:                 </D:prop>
debug:             </D:propfind>
debug:
debug: Sending request...
debug: 207
debug: {'Connection': 'keep-alive', 'Server': 'nginx', 'Date': 'Tue, 28 Jun 2016 13:35:07 GMT', 'DAV': '1, 2, 3, access-control, calendar-access, calendar-auto-schedule, version-control, addressbook, extended-mkcol, calendar-proxy, calendarserver-principal-property-search', 'Content-Type': 'text/xml; charset="UTF-8"', 'Transfer-Encoding': 'chunked'}
debug: b'<?xml version="1.0" encoding="UTF-8"?>\n\n<D:multistatus xmlns:D="DAV:">\n  <D:response>\n    <D:href>/dav/morty@example.com/Calendar/Test/</D:href>\n    <D:propstat>\n      <D:status>HTTP/1.1 404 Not Found</D:status>\n      <D:prop>\n        <D:getcontenttype/>\n      </D:prop>\n    </D:propstat>\n    <D:propstat>\n      <D:status>HTTP/1.1 200 OK</D:status>\n      <D:prop>\n        <D:resourcetype>\n          <D:collection/>\n          <C:calendar xmlns:C="urn:ietf:params:xml:ns:caldav"/>\n        </D:resourcetype>\n        <D:getetag>"2051-2051"</D:getetag>\n      </D:prop>\n    </D:propstat>\n  </D:response>\n  <D:response>\n    <D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>\n    <D:propstat>\n      <D:status>HTTP/1.1 200 OK</D:status>\n      <D:prop>\n        <D:resourcetype/>\n        <D:getetag>"2054-2054"</D:getetag>\n        <D:getcontenttype>text/calendar</D:getcontenttype>\n      </D:prop>\n    </D:propstat>\n  </D:response>\n</D:multistatus>\n'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/'
warning: Skipping '/dav/morty@example.com/Calendar/Test/', etag property is missing.
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/'
debug: REPORT https://mail.example.com/dav/morty@example.com/Calendar/Test/
debug: {'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml; charset=UTF-8'}
debug: <?xml version="1.0" encoding="utf-8" ?>
debug:         <C:calendar-multiget xmlns:D="DAV:"
debug:             xmlns:C="urn:ietf:params:xml:ns:caldav">
debug:             <D:prop>
debug:                 <D:getetag/>
debug:                 <C:calendar-data/>
debug:             </D:prop>
debug:             <D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>
debug: <D:href>/dav/morty@example.com/Calendar/Test/</D:href>
debug:         </C:calendar-multiget>
debug: Sending request...
debug: 207
debug: {'Connection': 'keep-alive', 'Server': 'nginx', 'Date': 'Tue, 28 Jun 2016 13:35:07 GMT', 'DAV': '1, 2, 3, access-control, calendar-access, calendar-auto-schedule, version-control, addressbook, extended-mkcol, calendar-proxy, calendarserver-principal-property-search', 'Content-Type': 'text/xml; charset="UTF-8"', 'Transfer-Encoding': 'chunked'}
debug: b'<?xml version="1.0" encoding="UTF-8"?>\n\n<D:multistatus xmlns:D="DAV:">\n  <D:response>\n    <D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>\n    <D:propstat>\n      <D:status>HTTP/1.1 200 OK</D:status>\n      <D:prop>\n        <C:calendar-data xmlns:C="urn:ietf:params:xml:ns:caldav">BEGIN:VCALENDAR\r\nPRODID:Zimbra-Calendar-Provider\r\nVERSION:2.0\r\nBEGIN:VTIMEZONE\r\nTZID:Europe/Berlin\r\nBEGIN:STANDARD\r\nDTSTART:16010101T030000\r\nTZOFFSETTO:+0100\r\nTZOFFSETFROM:+0200\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=10;BYDAY=-1SU\r\nTZNAME:CET\r\nEND:STANDARD\r\nBEGIN:DAYLIGHT\r\nDTSTART:16010101T020000\r\nTZOFFSETTO:+0200\r\nTZOFFSETFROM:+0100\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=-1SU\r\nTZNAME:CEST\r\nEND:DAYLIGHT\r\nEND:VTIMEZONE\r\nBEGIN:VEVENT\r\nUID:e28e155d-e493-408c-82c9-3e02eb15618e\r\nSUMMARY:Test\r\nORGANIZER;CN=Moritz Struebe:mailto:morty@example.com\r\nDTSTART;TZID="Europe/Berlin":20160627T093000\r\nDTEND;TZID="Europe/Berlin":20160627T130000\r\nSTATUS:CONFIRMED\r\nCLASS:PUBLIC\r\nTRANSP:OPAQUE\r\nLAST-MODIFIED:20160628T133504Z\r\nDTSTAMP:20160628T133504Z\r\nSEQUENCE:1\r\nBEGIN:VALARM\r\nACTION:DISPLAY\r\nTRIGGER;RELATED=START:-PT5M\r\nDESCRIPTION:Reminder\r\nEND:VALARM\r\nEND:VEVENT\r\nEND:VCALENDAR</C:calendar-data>\n        <D:getetag>"2054-2054"</D:getetag>\n      </D:prop>\n    </D:propstat>\n  </D:response>\n</D:multistatus>\n'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
error: Unknown error occured for rh2: /dav/morty@example.com/Calendar/Test/
error: Use `-vdebug` to see the full traceback.
debug:   File "/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/cli/tasks.py", line 66, in sync_collection
debug:     force_delete=force_delete
debug:   File "/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/sync.py", line 215, in sync
debug:     a_info.prepare_idents()
debug:   File "/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/sync.py", line 124, in prepare_idents
debug:     if prefetch else ()):
debug:   File "/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/storage/dav.py", line 451, in get_multi
debug:     raise exceptions.NotFoundError(href)
error: 1 out of 2 tasks failed.
@untitaker
Copy link
Member

This is a bug in vdirsyncer. I won't be able to fix it anytime soon though. Check back in a month or so.

On 28 June 2016 17:30:16 EEST, "Moritz Strübe" notifications@github.com wrote:

I wanted to sync eGroupware with Zimbra. eGroupware works fine (tested
with Owncloud), but Zimbra makes trouble. So I decided to sync to the
file system, but even that fails.

Environment:

  • Zimbra 8.6.0.GA.1153.UBUNTU14.64
  • vdirsyncer, version 0.11.2
  • Up to date Ubuntu Jessie and pipsi

Config:

[pair rh2]
a = rhnew
b = fszi
#metadata = ["color", "displayname"]
collections = null

[storage rhnew]
type = caldav
url = 
username = 
password = 

[storage fszi]
type = filesystem
path = "/home/morty/eg/zi"
fileext = ".txt"

Log:


/vdirsyncer  -vdebug sync rh2
debug: Using 1 maximal workers.
Syncing rh2
debug: Loaded status for rh2
debug: PROPFIND
https://mail.example.com/dav/morty@example.com/Calendar/Test/
debug: {'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml;
charset=UTF-8', 'Depth': 1}
debug: <?xml version="1.0" encoding="utf-8" ?>
debug:             <D:propfind xmlns:D="DAV:">
debug:                 <D:prop>
debug:                     <D:resourcetype/>
debug:                     <D:getcontenttype/>
debug:                     <D:getetag/>
debug:                 </D:prop>
debug:             </D:propfind>
debug:
debug: Sending request...
debug: 207
debug: {'Connection': 'keep-alive', 'Server': 'nginx', 'Date': 'Tue, 28
Jun 2016 13:35:07 GMT', 'DAV': '1, 2, 3, access-control,
calendar-access, calendar-auto-schedule, version-control, addressbook,
extended-mkcol, calendar-proxy,
calendarserver-principal-property-search', 'Content-Type': 'text/xml;
charset="UTF-8"', 'Transfer-Encoding': 'chunked'}
debug: b'<?xml version="1.0" encoding="UTF-8"?>\n\n<D:multistatus
xmlns:D="DAV:">\n  <D:response>\n   
<D:href>/dav/morty@example.com/Calendar/Test/</D:href>\n   
<D:propstat>\n      <D:status>HTTP/1.1 404 Not Found</D:status>\n     
<D:prop>\n        <D:getcontenttype/>\n      </D:prop>\n   
</D:propstat>\n    <D:propstat>\n      <D:status>HTTP/1.1 200
OK</D:status>\n      <D:prop>\n        <D:resourcetype>\n         
<D:collection/>\n          <C:calendar
xmlns:C="urn:ietf:params:xml:ns:caldav"/>\n        </D:resourcetype>\n 
<D:getetag>"2051-2051"</D:getetag>\n      </D:prop>\n   
</D:propstat>\n  </D:response>\n  <D:response>\n   
<D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>\n
<D:propstat>\n      <D:status>HTTP/1.1 200 OK</D:status>\n     
<D:prop>\n        <D:resourcetype/>\n       
<D:getetag>"2054-2054"</D:getetag>\n       
<D:getcontenttype>text/calendar</D:getcontenttype>\n      </D:prop>\n  
</D:propstat>\n  </D:response>\n</D:multistatus>\n'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/'
warning: Skipping '/dav/morty@example.com/Calendar/Test/', etag
property is missing.
debug: Already normalized:
'/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
debug: Already normalized:
'/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
debug: Already normalized: '/dav/morty@example.com/Calendar/Test/'
debug: REPORT
https://mail.example.com/dav/morty@example.com/Calendar/Test/
debug: {'User-Agent': 'vdirsyncer', 'Content-Type': 'application/xml;
charset=UTF-8'}
debug: <?xml version="1.0" encoding="utf-8" ?>
debug:         <C:calendar-multiget xmlns:D="DAV:"
debug:             xmlns:C="urn:ietf:params:xml:ns:caldav">
debug:             <D:prop>
debug:                 <D:getetag/>
debug:                 <C:calendar-data/>
debug:             </D:prop>
debug:            
<D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>
debug: <D:href>/dav/morty@example.com/Calendar/Test/</D:href>
debug:         </C:calendar-multiget>
debug: Sending request...
debug: 207
debug: {'Connection': 'keep-alive', 'Server': 'nginx', 'Date': 'Tue, 28
Jun 2016 13:35:07 GMT', 'DAV': '1, 2, 3, access-control,
calendar-access, calendar-auto-schedule, version-control, addressbook,
extended-mkcol, calendar-proxy,
calendarserver-principal-property-search', 'Content-Type': 'text/xml;
charset="UTF-8"', 'Transfer-Encoding': 'chunked'}
debug: b'<?xml version="1.0" encoding="UTF-8"?>\n\n<D:multistatus
xmlns:D="DAV:">\n  <D:response>\n   
<D:href>/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics</D:href>\n
<D:propstat>\n      <D:status>HTTP/1.1 200 OK</D:status>\n     
<D:prop>\n        <C:calendar-data
xmlns:C="urn:ietf:params:xml:ns:caldav">BEGIN:VCALENDAR\r\nPRODID:Zimbra-Calendar-Provider\r\nVERSION:2.0\r\nBEGIN:VTIMEZONE\r\nTZID:Europe/Berlin\r\nBEGIN:STANDARD\r\nDTSTART:16010101T030000\r\nTZOFFSETTO:+0100\r\nTZOFFSETFROM:+0200\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=10;BYDAY=-1SU\r\nTZNAME:CET\r\nEND:STANDARD\r\nBEGIN:DAYLIGHT\r\nDTSTART:16010101T020000\r\nTZOFFSETTO:+0200\r\nTZOFFSETFROM:+0100\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=-1SU\r\nTZNAME:CEST\r\nEND:DAYLIGHT\r\nEND:VTIMEZONE\r\nBEGIN:VEVENT\r\nUID:e28e155d-e493-408c-82c9-3e02eb15618e\r\nSUMMARY:Test\r\nORGANIZER;CN=Moritz
Struebe:mailto:morty@example.com\r\nDTSTART;TZID="Europe/Berlin":20160627T093000\r\nDTEND;TZID="Europe/Berlin":20160627T130000\r\nSTATUS:CONFIRMED\r\nCLASS:PUBLIC\r\nTRANSP:OPAQUE\r\nLAST-MODIFIED:20160628T133504Z\r\nDTSTAMP:20160628T133504Z\r\nSEQUENCE:1\r\nBEGIN:VALARM\r\nACTION:DISPLAY\r\nTRIGGER;RELATED=START:-PT5M\r\nDESCRIPTION:Reminder\r\nEND:VALARM\r\nEND:VEVENT\r\nEND:VCALENDAR</C:calendar-data>\n
<D:getetag>"2054-2054"</D:getetag>\n      </D:prop>\n   
</D:propstat>\n  </D:response>\n</D:multistatus>\n'
debug: Already normalized:
'/dav/morty@example.com/Calendar/Test/e28e155d-e493-408c-82c9-3e02eb15618e.ics'
error: Unknown error occured for rh2:
/dav/morty@example.com/Calendar/Test/
error: Use `-vdebug` to see the full traceback.
debug:   File
"/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/cli/tasks.py",
line 66, in sync_collection
debug:     force_delete=force_delete
debug:   File
"/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/sync.py",
line 215, in sync
debug:     a_info.prepare_idents()
debug:   File
"/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/sync.py",
line 124, in prepare_idents
debug:     if prefetch else ()):
debug:   File
"/home/morty/.local/venvs/vdirsyncer/lib/python3.4/site-packages/vdirsyncer/storage/dav.py",
line 451, in get_multi
debug:     raise exceptions.NotFoundError(href)
error: 1 out of 2 tasks failed.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#480

Sent from my Android device with K-9 Mail. Please excuse my brevity.

@untitaker
Copy link
Member

@cmorty This should be fixed, next release will come soon.

untitaker added a commit that referenced this issue Jul 25, 2016
@cmorty
Copy link
Author

cmorty commented Aug 15, 2016

Seems to work. Awesome! Thanks a lot!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants