I'm (was) using SyncML 2.40 Pro on Android 4.1.1 with eGroupware 1.8.004, but this also happened at previous versions of SycML.

Everytime I'm syncing my contacts and *anything* goes wrong, the contact list on the tablet (or phone) *and* the eGroupware egw_addressbook table is truncated to 1 or 2 items instead of the few hundred I have in it. And each time it happens I'm really happy that I have daily backups of my databases. However, it kinda sucks when I cannot login to restore the addressbook and I'm stuck with nothing.
I might be able to understand this if something really went wrong, but it happens even when pressing the suspend button.

This doesn't seem to happen to the calendar.

Is there a reason that this happens?
(Actually, I just updated to 2.41, but right now I've just restored my addressbook and I'm not really in the mood to experiment with it again if I don't have to..)

Yes I understand that if something's wrong at the serverside, the client likely cannot help it. I was just a little p*ssed-off that it happened *again* (just right now I've only got 4 contacts left after a seemingly successful sync) and was wondering if it was me doing something obvious wrong.

Something leads me to believe I've got something wrong with the various addressbooks that are on the device: there's 'Internal Phonebook', Google, Facebook and SySync. All are disabled except for 'Internal Phonebook'.
However, when I restored the addressbook in EGW and synced to the device, all contacts were synced to Google (now 940 contacts in there, 7xx before), although I disabled this addressbook everywhere I could find it: device accounts and withing Synthesis SyncML client. (I don't trust Google or Facebook with all my contacts, hence the personal EGW server, but that seems futile nowadays since they keep ending up at Google anyway.)
Every time I put effort in getting things right (by removing all contacts from all addressbooks and reloading the device having only 'Internal Phonebook' enabled) and I think I succeeded (that means: all contacts in the 'Internal Phonebook', none in others, which I checked) sooner or later things change and I can't understand why, because I'm not changing settings in either SySync or EGW (and no, AFAICT they do *not* change by themselves).

However, I'm using eGroupware community edition because it's free and it's for personal use only. If it's EGW that's fscking-up here, is there any other known good working CALDAV/CARDDAV server solution on *nix, preferably PHP based but could be anything else, you or anyone else can recommend that's free (like I said, it's for personal use only)?

However, when I restored the addressbook in EGW and synced to the device, all contacts were synced to Google (now 940 contacts in there, 7xx before), although I disabled this addressbook everywhere I could find it

To be exact, the situation is this:
- EGW-1.8.004
- Samsung Galaxy S3/Android-4.0.4/SyncML-4.2.1 Std
- Asus Transformer TF-300T/Android-4.1.1/SyncML-4.2.1 Pro
- Sync settings on SGS3 and TF300T are as identical as can be (Andoid 4.0.4 vs 4.1.1). The SyncML Pro has automatic sync disabled.

What shows:
- On the SGS3, SyncML shows 0 Google contacts and 237 Internal contacts.
- On the TF300T, SyncML shows 940 Google contacts and 237 Internal after the last sync from this morning. Right now, there are 1066 Google contacts and 110 Internal.
I didn't do *anything* with it until just now, checking the settings.

If this continues, I can see where this is going: the internal phone book will be empty because all contacts moved to Google. SyncML, set to only sync the Internal Phonebook, wipes EGW's in the process when syncing..

And I really have NO CLUE of what is going on! In Android, the Google, Facebook and SySync accounts are disabled for sync, and I'm only using SyncML to do sync. (The phone seems to behave better, but to be honest I'm not sure anymore.)

The internal phonebook is a relict from Android 1.X times which is still there.

Some device manufacturers support it correctly, some are using it as sim card space and others as a side waggon of the gmail account. This explains why entries of the internal phonebook may appear in the gmail account.

To avoid this problem on your device, I recommend to create a new Synthesis account and use this one for syncing (instead of using the internal addressbook). Such an account will not have any connection to the gmail account.

Thanks for the info.
I'm just stumped that, even though I disabled all syncing using only Synthesis, entries are actually, gradually (so not all at once!), moved from the internal addressbook into the Google addressbook..