View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0004048 | SOGo | sogo-tool | public | 2017-02-22 08:20 | 2017-04-07 18:19 |
| Reporter | netzkommune | Assigned To | ludovic | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | resolved | Resolution | fixed | ||
| OS | FreeBSD | OS Version | 10.3 | ||
| Product Version | 3.2.6 | ||||
| Fixed in Version | 3.2.9 | ||||
| Summary | 0004048: sogo-tool restore core dumps | ||||
| Description | we're trying to migrate a sogo 2.3.8 server on Linux to 3.2.6 on FreeBSD and use sogo-tool backup … ALL to dump and then sogo-tool restore -p and -f to import those backups. With some backups, the sogo-tool restore dies without a usable reason. We tracked it to some corrupted entries, in one case a malformed address book entry. Is there a way to further debug this? I can't share the particular user data on the mailing list, of course, but talking to the user, we could examine the dump together with a developer, maybe? | ||||
| Steps To Reproduce | use sogo-tool restore to import a corrupted file. | ||||
| Tags | No tags attached. | ||||
|
Provide the backup file privately for us to test. |
|
|
badcal_1 (739 bytes)
PRODID:-//Apple Inc.//iOS 8.4//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
DTSTART:19810329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
TZNAME:MESZ
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:19961027T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZNAME:MEZ
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20150722T075640Z
DTEND;TZID=Europe/Berlin:20150722T110000
DTSTAMP:20150722T075657Z
DTSTART;TZID=Europe/Berlin:20150722T100000
LAST-MODIFIED:20150722T075640Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Homeoffice ";
"c_name" = "09326D73-EBBF-4333-831F-92C502F3DB15.ics";
},
{
"c_content" = "BEGIN:VCALENDAR
|
|
|
badcal_2 (733 bytes)
PRODID:-//Apple Inc.//iOS 8.4//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
DTSTART:19810329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
TZNAME:MESZ
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:19961027T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZNAME:MEZ
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20150723T075952Z
DTEND;TZID=Europe/Berlin:20150723T103000
DTSTAMP:20150723T080045Z
DTSTART;TZID=Europe/Berlin:20150723T100000
LAST-MODIFIED:20150723T080017Z
SEQUENCE:0
SUMMARY:Unterwegs ";
"c_name" = "24886DB1-3A86-46D2-9431-78E043E8546C.ics";
},
{
"c_content" = "BEGIN:VCALENDAR
|
|
|
I attached 2 malformed calendar entries that let sogo-tool choke, I hope we extracted it correctly. The contents aren't something that needs to be kept privately as it's fortunately pretty generic. How do I share that privately? |
|
|
Send privately to support@inverse.ca ONLY the backup file of the user(s) for which sogo-tool fails to restore. |
|
|
I've imported succesfully all the data you sent privately. Try to produce a stack trace with sogo-tool: https://sogo.nu/nc/support/faq/article/how-do-i-debug-sogo.html Run it like this: gdb --args sogo-tool restore ... |
|
|
there you go: Program received signal SIGABRT, Aborted. |
|
|
Install the debugging symbols for SOPE and GNUstep. |
|
|
2017-02-24 09:57:25.162 sogo-tool[24279:100434] No local time zone specified. Program received signal SIGSEGV, Segmentation fault. Does that help? |
|
|
Are you sure you're using the GNUstep packages we provide? |
|
|
no, this is running on FreeBSD and we use the FreeBSD port http://www.freshports.org/www/sogo3 and its dependencies |
|
|
IMO, it's a GNUstep/FFI issue under FreeBSD. |
|
|
okay, but this only happened with particular backups of particular users which then imported fine when we removed the offending entries? |
|
|
I talked to the GNUStep port maintainer and he wrote me this: It looks as if the issue is calling a selector when the receiving object has a selector with the same name and different types. Doing this can result in stack corruption, so the GNUstep runtime turns this into an error. If you look at GCSFolder.m:1037 and see if the static and dynamic types of the object match. Normally you’ll get a compiler warning if they don’t. Does this ring a bell? |
|
|
Run sogo-tool in gdb. Set a breakpoint to GCSFolder.m:1037 When the breakpoint is raised, do "po _name" Paste the output here. |
|
|
Output: Breakpoint 1, -[GCSFolder writeContent:fromComponent:container:toName:baseVersion:] ( |
|
|
oops. I meant to do: "po quickRow" |
|
|
Output: Program received signal SIGBUS, Bus error. |
|
|
humm.. how about "p quickRow" and "p *quickRow" |
|
|
Breakpoint 1, -[GCSFolder writeContent:fromComponent:container:toName:baseVersion:] (self=0x80b6eed10, _cmd=0x633b20 <.objc_selector_list+1504>, |
|
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2017-02-22 08:20 | netzkommune | New Issue | |
| 2017-02-22 11:51 | ludovic | Note Added: 0011348 | |
| 2017-02-22 12:03 | netzkommune | File Added: badcal_1 | |
| 2017-02-22 12:03 | netzkommune | File Added: badcal_2 | |
| 2017-02-22 12:07 | netzkommune | Note Added: 0011349 | |
| 2017-02-22 12:10 | ludovic | Note Added: 0011350 | |
| 2017-02-22 13:47 | ludovic | Note Added: 0011353 | |
| 2017-02-22 13:54 | ludovic | Priority | urgent => normal |
| 2017-02-22 13:54 | ludovic | Severity | crash => minor |
| 2017-02-22 14:31 | netzkommune | Note Added: 0011357 | |
| 2017-02-22 14:47 | ludovic | Note Added: 0011358 | |
| 2017-02-24 09:59 | netzkommune | Note Added: 0011377 | |
| 2017-02-28 13:26 | ludovic | Note Added: 0011386 | |
| 2017-02-28 13:36 | netzkommune | Note Added: 0011387 | |
| 2017-02-28 19:54 | ludovic | Note Added: 0011389 | |
| 2017-02-28 21:32 | netzkommune | Note Added: 0011390 | |
| 2017-03-08 13:26 | netzkommune | Note Added: 0011457 | |
| 2017-03-31 19:46 | ludovic | Note Added: 0011648 | |
| 2017-04-04 07:08 | netzkommune | Note Added: 0011671 | |
| 2017-04-06 20:06 | ludovic | Note Added: 0011689 | |
| 2017-04-07 13:16 | netzkommune | Note Added: 0011691 | |
| 2017-04-07 13:20 | ludovic | Note Added: 0011692 | |
| 2017-04-07 13:28 | netzkommune | Note Added: 0011693 | |
| 2017-04-07 18:17 | ludovic | Changeset attached | => sogo master c4ad338a |
| 2017-04-07 18:17 | ludovic | Assigned To | => ludovic |
| 2017-04-07 18:17 | ludovic | Resolution | open => fixed |
| 2017-04-07 18:19 | ludovic | Status | new => resolved |
| 2017-04-07 18:19 | ludovic | Fixed in Version | => 3.2.9 |