View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001767 | SOGo | Backend General | public | 2012-04-10 13:05 | 2012-04-23 15:11 |
Reporter | cnaumer | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 1.3.14 | ||||
Fixed in Version | 1.3.15 | ||||
Summary | 0001767: unescaped backslash in the calendar Postgres | ||||
Description | After the update to 1.3.14 from 1.3.12c I get several errors in the logs (see sogo.log). For the users there are some problems. Some users have lost their settings regarding the The system is a Centos 6.2 with all updates. sope49-gdl1-postgresql-4.9-20120323_1664.el6.1.x86_64 | ||||
Additional Information | If I run : I get this error after the update to 1.3.14 from 1.3.12c "CalendarDefaultFilter": "view_today"} | ||||
Tags | No tags attached. | ||||
2012-04-10 13:05
|
sogo.log (2,866 bytes)
Mar 26 15:59:55 sogo-tool [12574]: [ERROR] <0x0x2b330c8[GSCBufferString]> json parser: Object value expected for key: Mail Mar 26 15:59:55 sogo-tool [12574]: [ERROR] <0x0x2b330c8[GSCBufferString]> original string is: {"Mail": {"SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]"}, "CalendarDefaultFilter": "view_next7", "Calendar": {"View": "weekview", "InactiveFolders": ["personal"], "SubscribedFolders": ["sogo:Calendar\\/725B-4C31DB00-235-3C8963C0"]}} Mar 26 15:59:55 sogo-tool [12574]: [ERROR] <0x0x331da38[SOGoSQLUserProfile]> failed to parse property list value for settings profile (error: Parse failed at line 1 (char 8) - unexpected character (wanted '=')): {"Mail": {"SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]"}, "CalendarDefaultFilter": "view_next7", "Calendar": {"View": "weekview", "InactiveFolders": ["personal"], "SubscribedFolders": ["sogo:Calendar\\/725B-4C31DB00-235-3C8963C0"]}} Mar 26 15:59:56 sogo-tool [12574]: [ERROR] <0x0x3205f48[GSCBufferString]> json parser: Object value expected for key: Mail Mar 26 15:59:56 sogo-tool [12574]: [ERROR] <0x0x3205f48[GSCBufferString]> original string is: {"Mail": {"SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]", "folderForExpunge": "imaps:\\/\\/eg@192.168.0.99\\/INBOX\\/"}, "Calendar": {"View": "weekview", "SubscribedFolders": ["sogo:Calendar\\/725B-4C31DB00-235-3C8963C0"]}, "CalendarDefaultFilter": "view_today"} Mar 26 15:59:56 sogo-tool [12574]: [ERROR] <0x0x2c6d528[SOGoSQLUserProfile]> failed to parse property list value for settings profile (error: Parse failed at line 1 (char 8) - unexpected character (wanted '=')): {"Mail": {"SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]", "folderForExpunge": "imaps:\\/\\/eg@192.168.0.99\\/INBOX\\/"}, "Calendar": {"View": "weekview", "SubscribedFolders": ["sogo:Calendar\\/725B-4C31DB00-235-3C8963C0"]}, "CalendarDefaultFilter": "view_today"} Mar 26 15:59:57 sogo-tool [12574]: [ERROR] <0x0x2649578[GSCBufferString]> json parser: Object value expected for key: Mail Mar 26 15:59:57 sogo-tool [12574]: [ERROR] <0x0x2649578[GSCBufferString]> original string is: {"Mail": {"DragHandleHorizontal": "243", "SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]"}, "Calendar": {"View": "weekview"}, "CalendarDefaultFilter": "view_today"} Mar 26 15:59:57 sogo-tool [12574]: [ERROR] <0x0x232dcf8[SOGoSQLUserProfile]> failed to parse property list value for settings profile (error: Parse failed at line 1 (char 8) - unexpected character (wanted '=')): {"Mail": {"DragHandleHorizontal": "243", "SortingState": ["date", "0"], "ExpandedFolders": "[\\"\\/0\\",\\"\\/0\\/folderINBOX\\"]"}, "Calendar": {"View": "weekview"}, "CalendarDefaultFilter": "view_today"} |
On a copy of your database, execute the following commands from a PostgreSQL shell (psql) : <pre> Let us know if it fixes the problem. |
|
Should I do this before the update or afterwards? |
|
After the update. |
|
OK I did the update and tried to run this: begin transaction; After this I got a syntax error. then I tried this: as someone posted in the mailing list. This gave some warnings but did the right thing because it seems to work right now. So thank you. |
|
said to soon... Other errors: Apr 13 16:50:24 sogod [12905]: <0x0x14f74b8[GCSFolderManager]> ERROR(-[GCSFolderManager performSQL:]): cannot execute And: 2012-04-13 16:50:26.590 sogod[12908] <0x0x1b08648[PostgreSQL72Channel]: connection=<0x0x1ceb9e8[PGConnection]: connection=0x0x1d43c40>>: message: WARNUNG: nicht standardkonforme Verwendung von Escape in Zeichenkettenkonstante 2012-04-13 16:50:26.591 sogod[12908] <0x0x1c9fd48[PostgreSQL72Channel]: connection=<0x0x1b1f3c8[PGConnection]: connection=0x0x1d3a780>>: message: WARNUNG: nicht standardkonforme Verwendung von Escape in Zeichenkettenkonstante |
|
The SQL fix will only fix the settings and defaults. For the other error that you are having, we don't have a solution yet, especially since we cannot reproduce it. |
|
SELECT * FROM sogo_folder_info WHERE c_path2= 'df' 32 /Users/df/Contacts/personal Users df Contacts personal Persönliches Adressbuch postgresql://sogo:sogo@localhost:5432/sogo/sogodf001763b3ee8 postgresql://sogo:sogo@localhost:5432/sogo/sogodf001763b3ee8_quick postgresql://sogo:sogo@localhost:5432/sogo/sogodf001763b3ee8_acl Contact 33 /Users/df/Calendar/personal Users df Calendar personal Persönlicher Kalender postgresql://sogo:sogo@localhost:5432/sogo/sogodf0025f541d63 postgresql://sogo:sogo@localhost:5432/sogo/sogodf0025f541d63_quick postgresql://sogo:sogo@localhost:5432/sogo/sogodf0025f541d63_acl Appointment |
|
That's strange.... I would expect a value of "Calendar'" for c_path2 instead of "Calendar". But this is good news. Can you install sogo-dbg (debian) or (sogo-debug), launch gdb on an instance, setup a breakpoint with "b [GCSFolderManager folderAtPath:]", perform a backtrace, and issue a "po _path" where you reached it? Thanks |
|
Will try that. Which debug-info rpm are needed for this? just sogo-debuginfo? I'll have to wait till monday to reproduce though. |
|
2012-04-16 08:48
|
bt.txt (4,569 bytes)
#0 -[GCSFolderManager performSQL:] (self=0x12794b8, _cmd=0x7ff3e9c78050, _sql=0x35725e8) at GCSFolderManager.m:250 Cannot access memory at address 0x7fff8d8ca668 Breakpoint 1, -[GCSFolderManager performSQL:] (self=0x12d7408, _cmd=0x7ff3e9c78050, _sql=0x1e10af8) at GCSFolderManager.m:250 #0 -[GCSFolderManager performSQL:] (self=0x12d7408, _cmd=0x7ff3e9c78050, _sql=0x1e10af8) at GCSFolderManager.m:250 #1 0x00007ff3e9a61ee1 in -[GCSFolderManager folderAtPath:] (self=0x12d7408, _cmd=0x7ff3ea1427c0, _path=0x1de8f38) at GCSFolderManager.m:669 #2 0x00007ff3e9edf6ef in -[SOGoGCSFolder ocsFolderForPath:] (self=0x1de74a8, _cmd=0x7ff3ea142910, _path=0x1de8f38) at SOGoGCSFolder.m:387 #3 0x00007ff3e9edff05 in -[SOGoGCSFolder ocsFolder] (self=0x1de74a8, _cmd=0x7ff3ea142aa0) at SOGoGCSFolder.m:482 #4 0x00007ff3e9ee4509 in -[SOGoGCSFolder _fetchAclsForUser:forObjectAtPath:] (self=0x1de74a8, _cmd=0x7ff3ea143080, uid=0x3a919c8, objectPath=0x2040758) at SOGoGCSFolder.m:1430 #5 0x00007ff3e9ee486f in -[SOGoGCSFolder _realAclsForUser:forObjectAtPath:] (self=0x1de74a8, _cmd=0x7ff3ea1430a0, uid=0x3a919c8, objectPathArray=0x199c948) at SOGoGCSFolder.m:1479 #6 0x00007ff3e9ee492d in -[SOGoGCSFolder aclsForUser:forObjectAtPath:] (self=0x1de74a8, _cmd=0x7ff3ea1431c0, uid=0x3a919c8, objectPathArray=0x199c948) at SOGoGCSFolder.m:1495 #7 0x00007ff3e9ee56b0 in -[SOGoGCSFolder aclsForUser:] (self=0x1de74a8, _cmd=0x7ff3ea16d860, uid=0x3a919c8) at SOGoGCSFolder.m:1634 #8 0x00007ff3e9f1f58d in -[SOGoUser rolesForObject:inContext:] (self=0x1c1e168, _cmd=0x7ff3e91d74e0, object=0x1de74a8, context=0x1727f58) at SOGoUser.m:799 #9 0x00007ff3e8ea4b64 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #10 0x00007ff3e9ee8a25 in -[SOGoParentFolder _appendSubscribedSource:] (self=0x1c16b68, _cmd=0x7ff3ea144af0, sourceKey=0x1c04578) at SOGoParentFolder.m:262 #11 0x00007ff3e9ee8c27 in -[SOGoParentFolder appendSubscribedSources] (self=0x1c16b68, _cmd=0x7ff3ea144b90) at SOGoParentFolder.m:288 #12 0x00007ff3e9ee9260 in -[SOGoParentFolder initSubscribedSubFolders] (self=0x1c16b68, _cmd=0x7ff3ea144bc0) at SOGoParentFolder.m:384 #13 0x00007ff3e9ee9347 in -[SOGoParentFolder lookupName:inContext:acquire:] (self=0x1c16b68, _cmd=0x7ff3e91eb970, name=0x7ff3e91e98c0, lookupContext=0x1727f58, acquire=0 '\000') at SOGoParentFolder.m:406 #14 0x00007ff3e8eb836d in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #15 0x00007ff3e8eb8bef in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #16 0x00007ff3e73a1073 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #17 0x00007ff3e8ebf4a3 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #18 0x00007ff3e8ebf7f7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #19 0x00007ff3e8e96c5f in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #20 0x00007ff3e8e1a717 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #21 0x00007ff3e8dd4b4b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #22 0x00007ff3e8dd4ea7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #23 0x0000000000403101 in -[SOGo dispatchRequest:] (self=0x1494ff8, _cmd=0x7ff3e91b7de0, _request=0x1a8d268) at SOGo.m:451 #24 0x00007ff3e8e83b04 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #25 0x00007ff3e8e83ed6 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #26 0x00007ff3e8e7f57a in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #27 0x00007ff3e8e7f7ce in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #28 0x00007ff3e8e7fc3b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #29 0x00007ff3e8e7ff56 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #30 0x00007ff3e7390717 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #31 0x00007ff3e7390a3a in ?? () from /usr/lib64/libgnustep-base.so.1.23 #32 0x00007ff3e73908c9 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #33 0x00007ff3e823c1da in ?? () from /usr/lib64/libNGExtensions.so.4.9 #34 0x00007ff3e74b0c09 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #35 0x00007ff3e73e08c6 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #36 0x00007ff3e73e0cd5 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #37 0x00007ff3e8dd42df in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #38 0x0000000000402775 in -[SOGo run] (self=0x1494ff8, _cmd=0x7ff3e915d580) at SOGo.m:275 #39 0x00007ff3e8e24a49 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #40 0x00007ff3e8e24ec5 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #41 0x00007ff3e8e25692 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #42 0x00007ff3e8e26876 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #43 0x00007ff3e8e27085 in WOWatchDogApplicationMain () from /usr/lib64/libNGObjWeb.so.4.9 #44 0x0000000000401945 in main (argc=7, argv=0x7fff8d8cc1f8, env=0x7fff8d8cc238) at sogod.m:53 |
Added the backtrace. The first 4 lines were the first I caught. The rest was the second backtrace. Hope it helps. This user doesn't experience any errors. And the error in the logs only shows up with some users. Here is what I did: b GCSFolderManager.m:250 bt For bt2.txt I did this: po _path output was this: /Users/kr/Calendar/personal bt output is in bt2.txt |
|
2012-04-16 09:22
|
bt2.txt (3,453 bytes)
(gdb) b [GCSFolderManager folderAtPath:] Breakpoint 1 at 0x7ff3e9a61bdb: file GCSFolderManager.m, line 644. (gdb) continue Continuing. Breakpoint 1, -[GCSFolderManager folderAtPath:] (self=0x12d7408, _cmd=0x7ff3ea1427c0, _path=0x1f6ec28) at GCSFolderManager.m:644 644 if ((fnames = [self internalNamesFromPath:_path]) == nil) { (gdb) bt #0 -[GCSFolderManager folderAtPath:] (self=0x12d7408, _cmd=0x7ff3ea1427c0, _path=0x1f6ec28) at GCSFolderManager.m:644 #1 0x00007ff3e9edf6ef in -[SOGoGCSFolder ocsFolderForPath:] (self=0x1b63368, _cmd=0x7ff3ea142910, _path=0x1f6ec28) at SOGoGCSFolder.m:387 #2 0x00007ff3e9edff05 in -[SOGoGCSFolder ocsFolder] (self=0x1b63368, _cmd=0x7ff3ea142aa0) at SOGoGCSFolder.m:482 #3 0x00007ff3e9ee3895 in -[SOGoGCSFolder _isValidSyncToken:] (self=0x1b63368, _cmd=0x7ff3ea142f40, syncToken=0x1a10e68) at SOGoGCSFolder.m:1265 #4 0x00007ff3e9ee3b04 in -[SOGoGCSFolder davSyncCollection:] (self=0x1b63368, _cmd=0x1575f40, localContext=0x1727f58) at SOGoGCSFolder.m:1303 #5 0x00007ff3e73a1073 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #6 0x00007ff3e8ea67e8 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #7 0x00007ff3e8ea6f80 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #8 0x00007ff3e8ea6b22 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #9 0x00007ff3e8ebeb4a in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #10 0x00007ff3e73a1073 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #11 0x00007ff3e8ebf4a3 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #12 0x00007ff3e8ebf7f7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #13 0x00007ff3e8e96c5f in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #14 0x00007ff3e8e1a717 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #15 0x00007ff3e8dd4b4b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #16 0x00007ff3e8dd4ea7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #17 0x0000000000403101 in -[SOGo dispatchRequest:] (self=0x1494ff8, _cmd=0x7ff3e91b7de0, _request=0x19efde8) at SOGo.m:451 #18 0x00007ff3e8e83b04 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #19 0x00007ff3e8e83ed6 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #20 0x00007ff3e8e7f57a in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #21 0x00007ff3e8e7f7ce in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #22 0x00007ff3e8e7fc3b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #23 0x00007ff3e8e7ff56 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #24 0x00007ff3e7390717 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #25 0x00007ff3e7390a3a in ?? () from /usr/lib64/libgnustep-base.so.1.23 #26 0x00007ff3e73908c9 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #27 0x00007ff3e823c1da in ?? () from /usr/lib64/libNGExtensions.so.4.9 #28 0x00007ff3e74b0c09 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #29 0x00007ff3e73e08c6 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #30 0x00007ff3e73e0cd5 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #31 0x00007ff3e8dd42df in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #32 0x0000000000402775 in -[SOGo run] (self=0x1494ff8, _cmd=0x7ff3e915d580) at SOGo.m:275 #33 0x00007ff3e8e24a49 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #34 0x00007ff3e8e24ec5 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #35 0x00007ff3e8e25692 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #36 0x00007ff3e8e26876 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #37 0x00007ff3e8e27085 in WOWatchDogApplicationMain () from /usr/lib64/libNGObjWeb.so.4.9 #38 0x0000000000401945 in main (argc=7, argv=0x7fff8d8cc1f8, env=0x7fff8d8cc238) at sogod.m:53 |
We have the same problem with some users, and in fact in sogo_user_info there are \ when there should be a \: popXXXXXX | {"SOGoLanguage": "German"} | {"Mail": {"DragHandleHorizontal": "248", "SortingState": ["date", "0"], "ExpandedFolders": "[\"\/0\",\"\/0\/folderXXXXX\",\"\/0\/folderXXXXX\/folderXXXXXXXX\",\"\/0\/folderXX\",\"\/0\/folderXXXX\"]", "DragHandleVertical": "483", "ColumnsState": {"subjectHeader": "31", "priorityHeader": "5", "fromHeader": "19", "dateHeader": "26"}}, "CalendarDefaultFilter": "view_today", "Calendar": {"FolderColors": {"popXXXXXX:Calendar\/XXXX-XXXXXXXX-XX-XXXXXXXX": "#FF9933"}, "InactiveFolders": ["personal"], "View": "monthview", "FreeBusyExclusions": {"popXXXXXX:Calendar\/XXXX-XXXXXXXX-XX-XXXXXXXX": 0}}} However only a small set of accounts do have these double slashes in this folder. my first guess would be to use the replace command on a snapshot to test it... Addendum: And it becomes worse, example: "XXXXX:Calendar\\/personal", "XXXXXX:Calendar\\/personal", "XXXXXXX:Calendar\\/personal", "XXXXXX:Calendar\\/personal", "XXXXXXX: So the number of backslashes gets or got bigger due to some sort.... |
|
cnaumer: that's good because the bug is not there. Can you launch gdb again, and set a breakpoint on GCSFolderManager.m:250 instead? When it reaches that point, perform a "bt" and a "po _sql" from there. Afterwards do a "f 1" and a "po _path", and then leave gdb. Moreoever, can you list the version numbers for sope-gdl1 as well as sope-gdl1-postgresql? Thank you very much! |
|
gienger: guttentag! I would even suggest to use the sogo nightlies, are they include a fix for that issue... You are using 1.3.14 right now, right? |
|
2012-04-17 14:37
|
tracking.txt (5,376 bytes)
Breakpoint 1, -[GCSFolderManager performSQL:] (self=0x18664b8, _cmd=0x7ff361deb050, _sql=0x2a3b1f8) at GCSFolderManager.m:250 250 [self logWithFormat:@"ERROR(%s): cannot execute\n SQL '%@':\n %@", bt #0 -[GCSFolderManager performSQL:] (self=0x18664b8, _cmd=0x7ff361deb050, _sql=0x2a3b1f8) at GCSFolderManager.m:250 #1 0x00007ff361bd4ee1 in -[GCSFolderManager folderAtPath:] (self=0x18664b8, _cmd=0x7ff3622b57c0, _path=0x27dda68) at GCSFolderManager.m:669 #2 0x00007ff3620526ef in -[SOGoGCSFolder ocsFolderForPath:] (self=0x20963f8, _cmd=0x7ff3622b5910, _path=0x27dda68) at SOGoGCSFolder.m:387 #3 0x00007ff362052f05 in -[SOGoGCSFolder ocsFolder] (self=0x20963f8, _cmd=0x7ff3622b5aa0) at SOGoGCSFolder.m:482 #4 0x00007ff362057509 in -[SOGoGCSFolder _fetchAclsForUser:forObjectAtPath:] (self=0x20963f8, _cmd=0x7ff3622b6080, uid=0x1d07de8, objectPath=0x2c21078) at SOGoGCSFolder.m:1430 #5 0x00007ff36205786f in -[SOGoGCSFolder _realAclsForUser:forObjectAtPath:] (self=0x20963f8, _cmd=0x7ff3622b60a0, uid=0x1d07de8, objectPathArray=0x24f8c38) at SOGoGCSFolder.m:1479 #6 0x00007ff36205792d in -[SOGoGCSFolder aclsForUser:forObjectAtPath:] (self=0x20963f8, _cmd=0x7ff351fbf5d0, uid=0x1d07de8, objectPathArray=0x24f8c38) at SOGoGCSFolder.m:1495 #7 0x00007ff351d945da in -[SOGoAppointmentFolder aclsForUser:forObjectAtPath:] (self=0x20963f8, _cmd=0x7ff3622b61c0, uid=0x1d07de8, objectPathArray=0x24f8c38) at SOGoAppointmentFolder.m:2731 #8 0x00007ff3620586b0 in -[SOGoGCSFolder aclsForUser:] (self=0x20963f8, _cmd=0x7ff3622e0860, uid=0x1d07de8) at SOGoGCSFolder.m:1634 #9 0x00007ff36209258d in -[SOGoUser rolesForObject:inContext:] (self=0x1e4d3f8, _cmd=0x7ff36134a4e0, object=0x20963f8, context=0x1d03118) at SOGoUser.m:799 #10 0x00007ff361017b64 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #11 0x00007ff36205ba25 in -[SOGoParentFolder _appendSubscribedSource:] (self=0x2b16d18, _cmd=0x7ff3622b7af0, sourceKey=0x204be68) at SOGoParentFolder.m:262 #12 0x00007ff36205bc27 in -[SOGoParentFolder appendSubscribedSources] (self=0x2b16d18, _cmd=0x7ff3622b7b90) at SOGoParentFolder.m:288 #13 0x00007ff36205c260 in -[SOGoParentFolder initSubscribedSubFolders] (self=0x2b16d18, _cmd=0x7ff3622b7bc0) at SOGoParentFolder.m:384 #14 0x00007ff36205c70a in -[SOGoParentFolder subFolders] (self=0x2b16d18, _cmd=0x7ff351fc3570) at SOGoParentFolder.m:465 #15 0x00007ff351d97272 in -[SOGoAppointmentFolders folderObjectKeys] (self=0x2b16d18, _cmd=0x7ff351fc3680) at SOGoAppointmentFolders.m:211 #16 0x00007ff351d97704 in -[SOGoAppointmentFolders lookupName:inContext:acquire:] (self=0x2b16d18, _cmd=0x7ff36133f0f0, name=0x1e4ecc8, lookupContext=0x1d03118, acquire=0 '\000') at SOGoAppointmentFolders.m:257 #17 0x00007ff36100313c in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #18 0x00007ff3610033db in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #19 0x00007ff361003c81 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #20 0x00007ff3610089d8 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #21 0x00007ff3610098e7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #22 0x00007ff360f8d717 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #23 0x00007ff360f47b4b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #24 0x00007ff360f47ea7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #25 0x0000000000403101 in -[SOGo dispatchRequest:] (self=0x1a98148, _cmd=0x7ff36132ade0, _request=0x2822a88) at SOGo.m:451 #26 0x00007ff360ff6b04 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #27 0x00007ff360ff6ed6 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #28 0x00007ff360ff257a in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #29 0x00007ff360ff27ce in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #30 0x00007ff360ff2c3b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #31 0x00007ff360ff2f56 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #32 0x00007ff35f503717 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #33 0x00007ff35f503a3a in ?? () from /usr/lib64/libgnustep-base.so.1.23 #34 0x00007ff35f5038c9 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #35 0x00007ff3603af1da in ?? () from /usr/lib64/libNGExtensions.so.4.9 #36 0x00007ff35f623c09 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #37 0x00007ff35f5538c6 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #38 0x00007ff35f553cd5 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #39 0x00007ff360f472df in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #40 0x0000000000402775 in -[SOGo run] (self=0x1a98148, _cmd=0x7ff3612d0580) at SOGo.m:275 #41 0x00007ff360f97a49 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #42 0x00007ff360f97ec5 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #43 0x00007ff360f98692 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #44 0x00007ff360f99876 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #45 0x00007ff360f9a085 in WOWatchDogApplicationMain () from /usr/lib64/libNGObjWeb.so.4.9 #46 0x0000000000401945 in main (argc=7, argv=0x7ffff39551e8, env=0x7ffff3955228) at sogod.m:53 (gdb) po _sql SELECT c_folder_id, c_path, c_location, c_quick_location, c_acl_location, c_folder_type FROM sogo_folder_info WHERE c_path1 = 'Users' AND c_path2 = 'cn' AND c_path3 = 'Calendar\' AND c_path4 = 'DAD-4C458400-1-3E72B000' (gdb) f 1 #1 0x00007ff361bd4ee1 in -[GCSFolderManager folderAtPath:] (self=0x18664b8, _cmd=0x7ff3622b57c0, _path=0x27dda68) at GCSFolderManager.m:669 669 if ((records = [self performSQL:sql]) == nil) { (gdb) po _path /Users/cn/Calendar\/DAD-4C458400-1-3E72B000 |
in tracking.txt and in tracking2.txt is the output of: bt po _sql f 1 po _path this was two separate pids. |
|
2012-04-17 15:07
|
tracking2.txt (5,372 bytes)
Breakpoint 1, -[GCSFolderManager performSQL:] (self=0x18664b8, _cmd=0x7ff361deb050, _sql=0x26761f8) at GCSFolderManager.m:250 250 [self logWithFormat:@"ERROR(%s): cannot execute\n SQL '%@':\n %@", #0 -[GCSFolderManager performSQL:] (self=0x18664b8, _cmd=0x7ff361deb050, _sql=0x26761f8) at GCSFolderManager.m:250 #1 0x00007ff361bd4ee1 in -[GCSFolderManager folderAtPath:] (self=0x18664b8, _cmd=0x7ff3622b57c0, _path=0x25b21d8) at GCSFolderManager.m:669 #2 0x00007ff3620526ef in -[SOGoGCSFolder ocsFolderForPath:] (self=0x2fa5e28, _cmd=0x7ff3622b5910, _path=0x25b21d8) at SOGoGCSFolder.m:387 #3 0x00007ff362052f05 in -[SOGoGCSFolder ocsFolder] (self=0x2fa5e28, _cmd=0x7ff3622b5aa0) at SOGoGCSFolder.m:482 #4 0x00007ff362057509 in -[SOGoGCSFolder _fetchAclsForUser:forObjectAtPath:] (self=0x2fa5e28, _cmd=0x7ff3622b6080, uid=0x2324c28, objectPath=0x26be228) at SOGoGCSFolder.m:1430 #5 0x00007ff36205786f in -[SOGoGCSFolder _realAclsForUser:forObjectAtPath:] (self=0x2fa5e28, _cmd=0x7ff3622b60a0, uid=0x2324c28, objectPathArray=0x2aa1a48) at SOGoGCSFolder.m:1479 #6 0x00007ff36205792d in -[SOGoGCSFolder aclsForUser:forObjectAtPath:] (self=0x2fa5e28, _cmd=0x7ff351fbf5d0, uid=0x2324c28, objectPathArray=0x2aa1a48) at SOGoGCSFolder.m:1495 #7 0x00007ff351d945da in -[SOGoAppointmentFolder aclsForUser:forObjectAtPath:] (self=0x2fa5e28, _cmd=0x7ff3622b61c0, uid=0x2324c28, objectPathArray=0x2aa1a48) at SOGoAppointmentFolder.m:2731 #8 0x00007ff3620586b0 in -[SOGoGCSFolder aclsForUser:] (self=0x2fa5e28, _cmd=0x7ff3622e0860, uid=0x2324c28) at SOGoGCSFolder.m:1634 #9 0x00007ff36209258d in -[SOGoUser rolesForObject:inContext:] (self=0x44815e8, _cmd=0x7ff36134a4e0, object=0x2fa5e28, context=0x232a088) at SOGoUser.m:799 #10 0x00007ff361017b64 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #11 0x00007ff36205ba25 in -[SOGoParentFolder _appendSubscribedSource:] (self=0x25bd288, _cmd=0x7ff3622b7af0, sourceKey=0x2540f98) at SOGoParentFolder.m:262 #12 0x00007ff36205bc27 in -[SOGoParentFolder appendSubscribedSources] (self=0x25bd288, _cmd=0x7ff3622b7b90) at SOGoParentFolder.m:288 #13 0x00007ff36205c260 in -[SOGoParentFolder initSubscribedSubFolders] (self=0x25bd288, _cmd=0x7ff3622b7bc0) at SOGoParentFolder.m:384 #14 0x00007ff36205c70a in -[SOGoParentFolder subFolders] (self=0x25bd288, _cmd=0x7ff351fc3570) at SOGoParentFolder.m:465 #15 0x00007ff351d97272 in -[SOGoAppointmentFolders folderObjectKeys] (self=0x25bd288, _cmd=0x7ff351fc3680) at SOGoAppointmentFolders.m:211 #16 0x00007ff351d97704 in -[SOGoAppointmentFolders lookupName:inContext:acquire:] (self=0x25bd288, _cmd=0x7ff36133f0f0, name=0x2207088, lookupContext=0x232a088, acquire=0 '\000') at SOGoAppointmentFolders.m:257 #17 0x00007ff36100313c in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #18 0x00007ff3610033db in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #19 0x00007ff361003c81 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #20 0x00007ff3610089d8 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #21 0x00007ff3610098e7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #22 0x00007ff360f8d717 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #23 0x00007ff360f47b4b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #24 0x00007ff360f47ea7 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #25 0x0000000000403101 in -[SOGo dispatchRequest:] (self=0x1a98148, _cmd=0x7ff36132ade0, _request=0x448f098) at SOGo.m:451 #26 0x00007ff360ff6b04 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #27 0x00007ff360ff6ed6 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #28 0x00007ff360ff257a in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #29 0x00007ff360ff27ce in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #30 0x00007ff360ff2c3b in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #31 0x00007ff360ff2f56 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #32 0x00007ff35f503717 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #33 0x00007ff35f503a3a in ?? () from /usr/lib64/libgnustep-base.so.1.23 #34 0x00007ff35f5038c9 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #35 0x00007ff3603af1da in ?? () from /usr/lib64/libNGExtensions.so.4.9 #36 0x00007ff35f623c09 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #37 0x00007ff35f5538c6 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #38 0x00007ff35f553cd5 in ?? () from /usr/lib64/libgnustep-base.so.1.23 #39 0x00007ff360f472df in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #40 0x0000000000402775 in -[SOGo run] (self=0x1a98148, _cmd=0x7ff3612d0580) at SOGo.m:275 #41 0x00007ff360f97a49 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #42 0x00007ff360f97ec5 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #43 0x00007ff360f98692 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #44 0x00007ff360f99876 in ?? () from /usr/lib64/libNGObjWeb.so.4.9 #45 0x00007ff360f9a085 in WOWatchDogApplicationMain () from /usr/lib64/libNGObjWeb.so.4.9 #46 0x0000000000401945 in main (argc=7, argv=0x7ffff39551e8, env=0x7ffff3955228) at sogod.m:53 (gdb) po _sql SELECT c_folder_id, c_path, c_location, c_quick_location, c_acl_location, c_folder_type FROM sogo_folder_info WHERE c_path1 = 'Users' AND c_path2 = 'cn' AND c_path3 = 'Calendar\' AND c_path4 = 'DAD-4C458400-1-3E72B000' (gdb) f 1 #1 0x00007ff361bd4ee1 in -[GCSFolderManager folderAtPath:] (self=0x18664b8, _cmd=0x7ff3622b57c0, _path=0x25b21d8) at GCSFolderManager.m:669 669 if ((records = [self performSQL:sql]) == nil) { (gdb) po _path /Users/cn/Calendar\/DAD-4C458400-1-3E72B000 |
cnaumer: yep, it does. This enables me to narrow it down to the subscriptions, which are stored in the sogo_user_profile table. So again, it's likely a matter of fixing the user entries. So the "replace"trick above must work, in its second form indeed, but only with 1.3.14. Does the above fit your situation? |
|
Forgot to mention the versions we are using: sogo-1.3.14-1.centos6.x86_64 We used 1.3.12c in production and I upgraded to 1.3.14 and since then we get those error messages. I tried the SQL commands again. I had to run them several times so that it worked. I checked the DB entries for the users that I know where the error happen and they had "\/" in some entries and now they don't have them anymore. With one of the users I can now say it works! After correction every entry of the subscribed address books were synced as if they were not there at all. |
|
We are also using 1.3.12 now and we had problems after the upgrade to 1.3.14 (and went back to 1.3.12). So this means that the data in the profile is incorrect and we have to do update sogo_user_profile set c_settings = replace(c_settings, '\', '\'); in c_settings and c_profiles after the update to 1.3.14 and everything will be fine? |
|
Related question: should there ever be a double backslash in c_settings or c_profiles? |
|
cnaumer: I don't understand "After correction every entry of the subscribed address books were synced as if they were not there at all." because you mention a "correction" but then that the addressbooks are missing.... You mean that the contacts have disappeared? |
|
mjr: it depoends on the versoin of PostgreSQL you are using. There are versions which acccept the "\" escaping and others do not. The only reason for escaping a character in pg is when the character is a "'", since it has a special meaning, and the proper way to do it is to double it in queries. For example, for a field of value "l'apostrophe" (a good french restaurant). you would need towrite a WHERE clause this way: But the SQL standard version is the first one and it's the one we have been using since 2 releases but it caused migration problems that we did not foresee. |
|
Next thing: Our setup runs on CentOS 5.8 with database on a remote PostgreSQL host, using Version 8.4.11 - all entries are correct (c_defaults and c_settings). When dumping this database (on the 8.4.11 host) and replaying that dump on a CentOS machine with PostgreSQL 8.4.9 all is ok, a "SELECT" in psql just returns the correct fields. But at the moment SOGo 1.3.14 running un CentOS 5.8 connects to the PGsql database on CentOS 5.8 it invalidates some settings (all these where a backslash is in) and for that reason shared calendars and address books vanish and all calendar colors are set back to gray). The same SOGo 1.3.14 running on CentOS 5.8 connecting to the PGsql 8.4.11 remote database behaves just normally - with the same data. |
|
wsourdeau: I cannot say if the contacts were not there as I didn't check that. I just saw (in the logs) after I removed the the backslahes that one address book was synced completely (>2500 contacts). This address book is not used heavily so didn't get reports that is wasn't working. |
|
gienger: can you ensure that the parameter "standard_conforming_strings" is set to "on" in your postgres configuration? |
|
#standard_conforming_strings = off (commented out, so standard "off"). On the 8.4.11 host: the same: #standard_conforming_strings = off Using online retrieval: both are set to off. |
|
gienger: can you try by setting it to 'on'? |
|
gienger: I have rebuild the nightlies with a potential fix. Can you install sope49-gdl1-postgresql-4.9-20120419_1664 from the nigthly repository? (https://inverse.ca/downloads/SOGo/RHEL5/nightly/x86_64/RPMS/sope49-gdl1-postgresql-4.9-20120419_1664.el5.1.x86_64.rpm) Note that the fix is safe and has no side-effect so it's a very low-risk update. |
|
wsourdeau; Yup it works with that patch. Oui ça marche avec cette retouche. ;-) |
|
Super, we finally found the solution. Thanks to everyone. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2012-04-10 13:05 | cnaumer | New Issue | |
2012-04-10 13:05 | cnaumer | File Added: sogo.log | |
2012-04-11 13:51 | francis | Note Added: 0003716 | |
2012-04-13 08:05 | cnaumer | Note Added: 0003729 | |
2012-04-13 12:45 | francis | Note Added: 0003730 | |
2012-04-13 14:42 | cnaumer | Note Added: 0003732 | |
2012-04-13 14:54 | cnaumer | Note Added: 0003733 | |
2012-04-13 14:55 | cnaumer | Note Edited: 0003733 | |
2012-04-13 14:56 | cnaumer | Note Edited: 0003733 | |
2012-04-13 14:56 |
|
Note Added: 0003734 | |
2012-04-13 15:04 | cnaumer | Note Added: 0003735 | |
2012-04-13 15:12 |
|
Note Added: 0003736 | |
2012-04-13 17:40 | cnaumer | Note Added: 0003737 | |
2012-04-16 08:48 | cnaumer | File Added: bt.txt | |
2012-04-16 08:51 | cnaumer | Note Added: 0003742 | |
2012-04-16 09:20 | cnaumer | Note Edited: 0003742 | |
2012-04-16 09:22 | cnaumer | File Added: bt2.txt | |
2012-04-16 09:23 | cnaumer | Note Edited: 0003742 | |
2012-04-16 09:24 | cnaumer | Note Edited: 0003742 | |
2012-04-17 13:01 | gienger | Note Added: 0003752 | |
2012-04-17 13:04 | gienger | Note Edited: 0003752 | |
2012-04-17 13:27 |
|
Note Added: 0003753 | |
2012-04-17 13:33 |
|
Note Added: 0003754 | |
2012-04-17 14:37 | cnaumer | File Added: tracking.txt | |
2012-04-17 14:40 | cnaumer | Note Added: 0003755 | |
2012-04-17 15:07 | cnaumer | File Added: tracking2.txt | |
2012-04-17 15:08 | cnaumer | Note Edited: 0003755 | |
2012-04-17 15:08 |
|
Note Added: 0003756 | |
2012-04-17 15:44 | cnaumer | Note Added: 0003759 | |
2012-04-17 15:52 | casties | Note Added: 0003760 | |
2012-04-17 15:55 | cnaumer | Note Edited: 0003759 | |
2012-04-17 16:02 | cnaumer | Note Edited: 0003759 | |
2012-04-17 16:17 | mjr | Note Added: 0003761 | |
2012-04-18 13:28 |
|
Note Added: 0003764 | |
2012-04-18 13:34 |
|
Note Added: 0003765 | |
2012-04-19 13:09 | gienger | Note Added: 0003776 | |
2012-04-19 13:24 | cnaumer | Note Added: 0003777 | |
2012-04-19 13:26 |
|
Note Added: 0003778 | |
2012-04-19 13:43 | gienger | Note Added: 0003779 | |
2012-04-19 13:44 |
|
Note Added: 0003780 | |
2012-04-19 15:19 |
|
Note Added: 0003785 | |
2012-04-20 08:48 | gienger | Note Added: 0003795 | |
2012-04-23 15:11 |
|
Note Added: 0003806 | |
2012-04-23 15:11 |
|
Status | new => resolved |
2012-04-23 15:11 |
|
Fixed in Version | => 1.3.15 |
2012-04-23 15:11 |
|
Resolution | open => fixed |
2012-04-23 15:11 |
|
Assigned To | => wsourdeau |