[GH-ISSUE #299] Very slow Carddav Sync when a pictures is added at the contact #757

Closed
opened 2026-03-01 17:41:22 +03:00 by kerem · 11 comments
Owner

Originally created by @zeiseiwogn on GitHub (Nov 27, 2020).
Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/299

Hello,

I am synching contacts from opencrx to Outlook with CalDavSynchronizer.
A lot of my contacts have added a picture to the vcf.
Now the Problem is that the CalDavSynchronizer thakes a very long time to sync contacts with pictures.

Without picture (from Logfile): Duration of 'CardDavRepository.Get (1 entitie(s))': 00:00:00.0530099
With picture (from Logfile): Duration of 'CardDavRepository.Get (1 entitie(s))': 00:01:24.2955027

Synching contacts with a piture to a Android or iPhone is not realy slower than a contact without a picture.

Please correct this to make the sync with photos in the VCF faster!

Best Regards,
Christian

Systeminformation:
Windows Version: 10 Pro 1909 (Build 18363.1082)
Outlook Version: Microsoft Office Standard 2016 64-bi (16.0.4266.1001)
CalDavSynchronizer Version: 3.8.2
Cardav Server and Version: opencrx 4.2.0
Outlook Hardware: i7-8700 + 32GB RAM + 1000Mbit Network interface

Originally created by @zeiseiwogn on GitHub (Nov 27, 2020). Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/299 Hello, I am synching contacts from opencrx to Outlook with CalDavSynchronizer. A lot of my contacts have added a picture to the vcf. Now the Problem is that the CalDavSynchronizer thakes a very long time to sync contacts with pictures. Without picture (from Logfile): Duration of 'CardDavRepository.Get (1 entitie(s))': 00:00:00.0530099 With picture (from Logfile): Duration of 'CardDavRepository.Get (1 entitie(s))': 00:01:24.2955027 Synching contacts with a piture to a Android or iPhone is not realy slower than a contact without a picture. Please correct this to make the sync with photos in the VCF faster! Best Regards, Christian Systeminformation: Windows Version: 10 Pro 1909 (Build 18363.1082) Outlook Version: Microsoft Office Standard 2016 64-bi (16.0.4266.1001) CalDavSynchronizer Version: 3.8.2 Cardav Server and Version: opencrx 4.2.0 Outlook Hardware: i7-8700 + 32GB RAM + 1000Mbit Network interface
kerem closed this issue 2026-03-01 17:41:22 +03:00
Author
Owner

@zeiseiwogn commented on GitHub (Dec 1, 2020):

No change after Update to CaldavSynchronizer Version 4.0.0

<!-- gh-comment-id:736294276 --> @zeiseiwogn commented on GitHub (Dec 1, 2020): No change after Update to CaldavSynchronizer Version 4.0.0
Author
Owner

@aluxnimm commented on GitHub (Dec 1, 2020):

Please post an example vcard which causes this. 84 secs for one vcard with picture sounds strange? maybe some networking/proxy issue or timeout on the server side, if it is only when downloading the vcard. Does it only happen in the sync direction from server to outlook?

<!-- gh-comment-id:736495392 --> @aluxnimm commented on GitHub (Dec 1, 2020): Please post an example vcard which causes this. 84 secs for one vcard with picture sounds strange? maybe some networking/proxy issue or timeout on the server side, if it is only when downloading the vcard. Does it only happen in the sync direction from server to outlook?
Author
Owner

@zeiseiwogn commented on GitHub (Dec 1, 2020):

Hello, in the attachment you find a example for a contact with picture how we are using.
I dont think there is any problem with our network (no proxy using) or timeout on the server side.
Our server only supporting reading over caldav, so i dont cant testing the other way.
Feel free to contact me when you a needs more information to resolve this issue.
90MUSOGCHJ8BICQ84DVS28XC0.zip

And what is also strange that the CPU goes to 100% on the Client with Outlook.

Duration of 'Running synchronization profile 'Test_Profile'': 07:05:34.8639785
For synching 184 contacts, and not every contact has a profile picture.
For synching the same 184 contacts to a Samsung XCover 3 it takes about 9 minutes.

<!-- gh-comment-id:736535971 --> @zeiseiwogn commented on GitHub (Dec 1, 2020): Hello, in the attachment you find a example for a contact with picture how we are using. I dont think there is any problem with our network (no proxy using) or timeout on the server side. Our server only supporting reading over caldav, so i dont cant testing the other way. Feel free to contact me when you a needs more information to resolve this issue. [90MUSOGCHJ8BICQ84DVS28XC0.zip](https://github.com/aluxnimm/outlookcaldavsynchronizer/files/5622698/90MUSOGCHJ8BICQ84DVS28XC0.zip) And what is also strange that the CPU goes to 100% on the Client with Outlook. Duration of 'Running synchronization profile 'Test_Profile'': 07:05:34.8639785 For synching 184 contacts, and not every contact has a profile picture. For synching the same 184 contacts to a Samsung XCover 3 it takes about 9 minutes.
Author
Owner

@xelan commented on GitHub (Feb 22, 2021):

Hi! Your vcf file is pretty huge, even the transmission of a 3MB picture (including the necessarybase64 encoding) can easily take the 1,5 seconds you mentioned on an average internet connection.

Could you try to resize the image to a sensible resolution (e.g. 500x500) and try again?

<!-- gh-comment-id:783446892 --> @xelan commented on GitHub (Feb 22, 2021): Hi! Your vcf file is pretty huge, even the transmission of a 3MB picture (including the necessarybase64 encoding) can easily take the 1,5 seconds you mentioned on an average internet connection. Could you try to resize the image to a sensible resolution (e.g. 500x500) and try again?
Author
Owner

@zeiseiwogn commented on GitHub (Feb 23, 2021):

Hello, I am not shure what are you meaning with 1,5 second?
When you are mean the first Post "Duration of 'CardDavRepository.Get (1 entitie(s))': 00:01:24.2955027" it takes 1,5 minutes (not seconds) for one contact.
1,5 second per contact would be fine for me and not a problem!
I am synching only in local Network over 1GBit networkinterface to the server.

When it is realy necessary to try it i can, but it is not simple for me in our production system to test it.
But i know, each smaler the picture is, much faster is the snyc.

<!-- gh-comment-id:784305132 --> @zeiseiwogn commented on GitHub (Feb 23, 2021): Hello, I am not shure what are you meaning with 1,5 second? When you are mean the first Post "Duration of 'CardDavRepository.Get (1 entitie(s))': 00:01:24.2955027" it takes 1,5 minutes (not seconds) for one contact. 1,5 second per contact would be fine for me and not a problem! I am synching only in local Network over 1GBit networkinterface to the server. When it is realy necessary to try it i can, but it is not simple for me in our production system to test it. But i know, each smaler the picture is, much faster is the snyc.
Author
Owner

@xelan commented on GitHub (Feb 24, 2021):

Thanks for your answer. Oh, i misread the duration 😅 Sure, more than a minute is slow especially if the network is definitely not the issue. However, I think also 9 minutes (on your smartphone) is quite a long time for not even 200 contacts.

Could you try to batch-resize your contact images (e.g. with XnView) and see how the performance is with lower-res images?

<!-- gh-comment-id:784925947 --> @xelan commented on GitHub (Feb 24, 2021): Thanks for your answer. Oh, i misread the duration 😅 Sure, more than a minute is slow especially if the network is definitely not the issue. However, I think also 9 minutes (on your smartphone) is quite a long time for not even 200 contacts. Could you try to batch-resize your contact images (e.g. with XnView) and see how the performance is with lower-res images?
Author
Owner

@nertsch commented on GitHub (Feb 24, 2021):

Hi,

This is not a network issue.
The Vcard library, which we are using seems to have serious performance issues, when reading (deserialising) such a large vcf-File. On my machine it took 106 seconds to sync this contact from a file folder (no network involved).
I will investigate it in the next days to fix this issue.

br
Gerhard

<!-- gh-comment-id:784943792 --> @nertsch commented on GitHub (Feb 24, 2021): Hi, This is not a network issue. The Vcard library, which we are using seems to have serious performance issues, when reading (deserialising) such a large vcf-File. On my machine it took 106 seconds to sync this contact from a file folder (no network involved). I will investigate it in the next days to fix this issue. br Gerhard
Author
Owner

@zeiseiwogn commented on GitHub (Feb 27, 2021):

Hi Gerhard,
thanks for your answer. When i can do anything for you please feel free to contact me.

@xelan: I am working on it to resize the pictures anyway on our contacts

Best Regards
Christian

<!-- gh-comment-id:787068294 --> @zeiseiwogn commented on GitHub (Feb 27, 2021): Hi Gerhard, thanks for your answer. When i can do anything for you please feel free to contact me. @xelan: I am working on it to resize the pictures anyway on our contacts Best Regards Christian
Author
Owner

@nertsch commented on GitHub (Feb 27, 2021):

It it fixed and takes now a few milliseconds to deserialize such a big contact.
The fix will be included in the next release.

br
Gerhard

<!-- gh-comment-id:787114347 --> @nertsch commented on GitHub (Feb 27, 2021): It it fixed and takes now a few milliseconds to deserialize such a big contact. The fix will be included in the next release. br Gerhard
Author
Owner

@zeiseiwogn commented on GitHub (Mar 1, 2021):

Thank you for this great information.
When is the next release planned?

Best Regards
Christian

<!-- gh-comment-id:787907180 --> @zeiseiwogn commented on GitHub (Mar 1, 2021): Thank you for this great information. When is the next release planned? Best Regards Christian
Author
Owner

@aluxnimm commented on GitHub (Mar 1, 2021):

There will be a release this month.

<!-- gh-comment-id:788078612 --> @aluxnimm commented on GitHub (Mar 1, 2021): There will be a release this month.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/outlookcaldavsynchronizer#757
No description provided.