View Issue Details

IDProjectCategoryView StatusLast Update
0005420SOGoBackend Address Bookpublic2022-01-24 13:38
Reporterblackips Assigned Tofrancis  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
PlatformServerOSUbuntuOS Version20.04 LTS
Product Version5.2.0 
Fixed in Version5.5.1 
Summary0005420: CardDAV sync failed - failed status for getetag
Description

Since updating SOGo from 5.1 to 5.2 we had a lot of issues. Besides heavy usage of MySQL connections due to failed workers (we need to allow around 600 connections for 40 people, no active sync), we observed another issue regarding CardDAV sync operations.

Since upgrading, the request for a specific VCARD failed because there will be no ETag within the response and the status for this request is "HTTP/1.1 404 Not Found", while the VCARD is returned correctly with status "HTTP/1.1 200 OK". Please see the attached example named vcard_failed_response.txt. After restoring our 5.1 VM I'd created before upgrading, the same sync request succeeded as shown in vcard_succeeded_response.txt. Both logfiles are created by TbSync which is our ThunderBird DAV client.

Synchronization issues can be observed by using Apple Contacts as well, but unfortunatly I can not provide any further details because I lag of a suitable device.

There are no configuration file changes, neither for SOGo, NGiNX nor MySQL (except for max_connections)

Steps To Reproduce

Upgrade a 5.1 installation to 5.2 and try to synchronize CardDAV accounts, which are offered by SoGoUserSources

Additional Information

This issue seems to apply to SoGoUserSources sources only. Synchronizing personal address books will work in any scenario.

TagsNo tags attached.

Relationships

related to 0004896 resolvedfrancis SOGoDomainsVisibility and GAL Address Book broken 

Activities

blackips

blackips

2021-11-01 14:06

reporter  

vcard_failed_response.txt (2,941 bytes)   
** Mon Nov 01 2021 14:50:12 GMT+0100 (Mitteleuropäische Normalzeit) **
[URL Request #1] : https://groupware.mydomain.de/SOGo/dav/USERNAME/Contacts/resources/

** Mon Nov 01 2021 14:50:12 GMT+0100 (Mitteleuropäische Normalzeit) **
[REQUEST] : REPORT :
<card:addressbook-multiget xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav">
    <d:prop>
        <d:getetag />
        <card:address-data />
    </d:prop>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf1</d:href>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf2</d:href>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf3</d:href>
</card:addressbook-multiget>


** Mon Nov 01 2021 14:50:12 GMT+0100 (Mitteleuropäische Normalzeit) **
[RESPONSE] : 207 (Multi-Status) :
<?xml version="1.0" encoding="utf-8"?>
<D:multistatus xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav">
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf1</D:href>
        <D:propstat>
            <D:prop>
                <C:address-data>BEGIN:VCARD
UID:meetinggf1
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.2.0//EN
FN:Besprechungsraum GF\, 1. OG
EMAIL;TYPE=work:meetingraumgf1@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
        <D:propstat>
            <D:prop>
                <D:getetag />
            </D:prop>
            <D:status>HTTP/1.1 404 Not Found</D:status>
        </D:propstat>
    </D:response>
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf2</D:href>
        <D:propstat>
            <D:prop>
                <C:address-data>BEGIN:VCARD
UID:meetinggf2
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.2.0//EN
FN:Besprechungsraum GF\, 2. OG
EMAIL;TYPE=work:meetingraumgf2@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
        <D:propstat>
            <D:prop>
                <D:getetag />
            </D:prop>
            <D:status>HTTP/1.1 404 Not Found</D:status>
        </D:propstat>
    </D:response>
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf3</D:href>
        <D:propstat>
            <D:prop>
                <C:address-data>BEGIN:VCARD
UID:meetinggf3
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.2.0//EN
FN:Besprechungsraum GF\, 3. OG
EMAIL;TYPE=work:meetingraumgf3@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
        <D:propstat>
            <D:prop>
                <D:getetag />
            </D:prop>
            <D:status>HTTP/1.1 404 Not Found</D:status>
        </D:propstat>
    </D:response>
</D:multistatus>
vcard_failed_response.txt (2,941 bytes)   
vcard_succeeded_response.txt (2,570 bytes)   
** Mon Nov 01 2021 14:18:37 GMT+0100 (Mitteleuropäische Normalzeit) **
[URL Request #1] : https://groupware.mydomain.de/SOGo/dav/USERNAME/Contacts/resources/

** Mon Nov 01 2021 14:18:37 GMT+0100 (Mitteleuropäische Normalzeit) **
[REQUEST] : REPORT : 
<card:addressbook-multiget xmlns:d="DAV:" xmlns:card="urn:ietf:params:xml:ns:carddav">
    <d:prop>
        <d:getetag />
        <card:address-data />
    </d:prop>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf1</d:href>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf2</d:href>
    <d:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf3</d:href>
</card:addressbook-multiget>


** Mon Nov 01 2021 14:18:37 GMT+0100 (Mitteleuropäische Normalzeit) **
[RESPONSE] : 207 (Multi-Status) :
<?xml version="1.0" encoding="utf-8"?>
<D:multistatus xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav">
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf1</D:href>
        <D:propstat>
            <D:prop>
                <D:getetag>hash113347299</D:getetag>
                <C:address-data>BEGIN:VCARD
UID:meetinggf1
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.1.0//EN
FN:Besprechungsraum GF\, 1. OG
EMAIL;TYPE=work:meetingraumgf1@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
    </D:response>
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf2</D:href>
        <D:propstat>
            <D:prop>
                <D:getetag>hash243192582</D:getetag>
                <C:address-data>BEGIN:VCARD
UID:meetinggf2
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.1.0//EN
FN:Besprechungsraum GF\, 2. OG
EMAIL;TYPE=work:meetingraumgf2@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
    </D:response>
    <D:response>
        <D:href>/SOGo/dav/USERNAME/Contacts/resources/meetinggf3</D:href>
        <D:propstat>
            <D:prop>
                <D:getetag>hash104602409</D:getetag>
                <C:address-data>BEGIN:VCARD
UID:meetinggf3
VERSION:3.0
CLASS:PUBLIC
PROFILE:VCARD
PRODID:-//Inverse inc./SOGo 5.1.0//EN
FN:Besprechungsraum GF\, 3. OG
EMAIL;TYPE=work:meetingraumgf3@mydomain.de
END:VCARD</C:address-data>
            </D:prop>
            <D:status>HTTP/1.1 200 OK</D:status>
        </D:propstat>
    </D:response>
</D:multistatus>
vcard_succeeded_response.txt (2,570 bytes)   
francis

francis

2022-01-13 15:51

administrator   ~0015767

Last edited: 2022-01-13 15:51

Did the fix for 0004896 also solve this issue?

blackips

blackips

2022-01-13 16:02

reporter   ~0015768

I will update later today and come back to you :)

francis

francis

2022-01-18 19:02

administrator   ~0015778

Can I close this ticket?

blackips

blackips

2022-01-23 02:54

reporter   ~0015811

Sorry for the late reply, but it was a quite busy week in office.

After setting up a new SOGo server with the latest SOGo 5.5.0 and same configuration I'm glad to confirm that the bug is fixed. All contacts will be synced smoothly. :)

Issue History

Date Modified Username Field Change
2021-11-01 14:06 blackips New Issue
2021-11-01 14:06 blackips File Added: vcard_failed_response.txt
2021-11-01 14:06 blackips File Added: vcard_succeeded_response.txt
2022-01-13 15:51 francis Note Added: 0015767
2022-01-13 15:51 francis Note Edited: 0015767
2022-01-13 15:51 francis Relationship added related to 0004896
2022-01-13 16:02 blackips Note Added: 0015768
2022-01-18 19:02 francis Note Added: 0015778
2022-01-23 02:54 blackips Note Added: 0015811
2022-01-24 13:38 francis Assigned To => francis
2022-01-24 13:38 francis Status new => resolved
2022-01-24 13:38 francis Resolution open => fixed
2022-01-24 13:38 francis Fixed in Version => 5.5.1