Not all vcard entries are synced

Open
#279 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
python
Domain
backend, databases

Research direction

Start by tracing how the CardDAV vCard download selects items from the Etebase collection; the report compares 224 non-deleted entries in Etebase with 18 in the downloaded file and 18 rows where deleted=0 in etebase_data.db. Check the synchronization path and its cache handling, then reproduce the count mismatch. Done means the download includes all non-deleted contacts while calendar sync remains unaffected.

Written by the indexing model from the issue text.

Description

Start etesync, and download My Contacts vcf file. This file contains only 18 items.

Etebase python says there are 777 items, and 224 items that are not deleted. The PIM web interface and the iPhone client confirm 224 items are there and not deleted.

Executing a select * from itementity on etebase_data.db (with where collection_id=...) returns 432 items. With deleted=0, there are 18 items.

I have deleted the etesync-dav folder and recreated the setup, same results. The same 18 items. If I create a new item on either client, It will be one more item. I assume many older items don't get pulled. Perhaps there is something wrong with cache.

The logs (etesync-dav -D) contain nothing interesting, and consistent mainly on private information. I will not attach them.

This could be related to #276, but in my case the calendar seems just fine.

Dominant language
Python
Stars
332
Forks
61
PR merge metrics
No merged PRs in 30d

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from etesync/etesync-dav

All issues in etesync/etesync-dav

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.