On 06/29/2011 04:18 PM, Joe Conway wrote: > 1) COLLATE clause is a new feature in 9.1? > 2) The doc search feature on postgresql.org does not search the 9.1 > documentation? > > I looked in the 9.1 docs in SQL Commands->SELECT and could find no > reference to COLLATE. Can anyone point me to some documentation that > would explain what that error message means and how to resolve it?
A little more information. It seems that sepgsql_restorecon calls GetSecurityLabel in the backend. Here's the backtrace: 8<----------------- #0 errfinish (dummy=0) at elog.c:374 #1 0x00000000007b7c70 in varstr_cmp (arg1=0x7faeb724efa9 "selinux", len1=7, arg2=0x16a1d8c "selinux~", len2=7, collid=0) at varlena.c:1312 #2 0x00000000007b7f01 in text_cmp (arg1=0x7faeb724efa8, arg2=0x16a1d88, collid=0) at varlena.c:1468 #3 0x00000000007b8424 in bttextcmp (fcinfo=0x7ffff08e2b30) at varlena.c:1610 #4 0x0000000000819c93 in FunctionCall2Coll (flinfo=0x7ffff08e30a0, collation=0, arg1=140388373688232, arg2=23731592) at fmgr.c:1319 #5 0x000000000049a905 in _bt_compare (rel=0x7faeb6f71540, keysz=3, scankey=0x7ffff08e3090, page=0x7faeb724cfc0 "", offnum=1) at nbtsearch.c:406 #6 0x000000000049a2c6 in _bt_binsrch (rel=0x7faeb6f71540, buf=74, keysz=3, scankey=0x7ffff08e3000, nextkey=0 '\000') at nbtsearch.c:285 #7 0x000000000049b17b in _bt_first (scan=0x169ce28, dir=ForwardScanDirection) at nbtsearch.c:877 #8 0x0000000000498971 in btgettuple (fcinfo=0x7ffff08e3af0) at nbtree.c:315 #9 0x0000000000819c93 in FunctionCall2Coll (flinfo=0x168e0d8, collation=0, arg1=23711272, arg2=1) at fmgr.c:1319 #10 0x000000000048eeed in index_getnext (scan=0x169ce28, direction=ForwardScanDirection) at indexam.c:487 #11 0x000000000048da81 in systable_getnext (sysscan=0x16a1020) at genam.c:315 #12 0x00000000007fa322 in SearchCatCache (cache=0x1613700, v1=1, v2=1262, v3=23731592, v4=0) at catcache.c:1201 #13 0x00000000008091c0 in SearchSysCache (cacheId=44, key1=1, key2=1262, key3=23731592, key4=0) at syscache.c:859 #14 0x00000000005a7016 in GetSecurityLabel (object=0x7ffff08e43d0, provider=0x7faeb9713830 "selinux") at seclabel.c:157 8<----------------- The third key passed to SearchSysCache is CStringGetTextDatum(provider). Ultimately FunctionCall2Coll gets called with collation == 0 and varstr_cmp fails due to the ambiguity. Is there something new that should be used in place of CStringGetTextDatum that would convey a collation here? Joe -- Joe Conway credativ LLC: http://www.credativ.us Linux, PostgreSQL, and general Open Source Training, Service, Consulting, & 24x7 Support
signature.asc
Description: OpenPGP digital signature