[tarantool-patches] [PATCH v1 1/1] lua: strength in the _collation space

imeevma at tarantool.org imeevma at tarantool.org
Thu Sep 6 21:29:24 MSK 2018


This patch sets "primary" strength as default for collations.

Closes #3573
---
Branch: https://github.com/tarantool/tarantool/tree/imeevma/gh-3573-show-collation-strength
Issue: https://github.com/tarantool/tarantool/issues/3573

 src/box/bootstrap.snap  | Bin 1888 -> 1883 bytes
 src/box/lua/schema.lua  |   5 ++++-
 src/box/lua/upgrade.lua |   2 +-
 3 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/box/bootstrap.snap b/src/box/bootstrap.snap
index 65739384a66d6ba4a538553ccf4677536ba15280..c3e27705897a490b02d1c37f83fa158bcd881177 100644
GIT binary patch
delta 1863
zcmV-N2e|m)4%-fp8Gku6G%aUkG-f$4W-|&&ZgX^DZewLSATl&&Gh#V1IW1;pWMnNg
zGh|{dI59UfEnzh|WMnipWjA6oISN)oY;R+0Iv{&}3JTS_3%bn);sDN6ljNzT00000
z04TLD{QywSHUJ7sC=g1(SWy8eilQhYrYO#$b&K+dis+JNWPhvdCcueh{WqP&ny3+p
zOi58nvUbRpU!>GULa{NyYpdaJX~538v4%eg{!}zNHVQ9ON&)5o;sEymH|J4Xj+1`O
zH&)8 at rIE5PLUU=nJGTwZjLe`8dsum4|MIxKQ5OMs?^}Kr$6jilY2RxX=6b}vDC at Nk
z+xM=>aSyw?Hh)w^KWxP at +%BBZ{2acDcsI9l-#`Cnzu)`8|7 at 0N9J5j=rAkRmFafY<
zkt%?$PExin3~%xF>Ms4ebDYqU94TDT=zpPy^?0L4rkAd(lbp2b5cB=98<MV0a)~N^
z*alsgjdpdCt4Dz=9UT-7>b(=|TdWh9%E>u_EtTq|YJcgdP~fXDWZB>On7!M~<U;4X
z;xcqZ$jO!;TCng~0Z`{qBI~8AlXQK?F}%gx&DZ0$obBEdX at yDuVb^!NZZW(?Thf&S
zqy2nLHR$RjUwynr`}t@~ieiAo(<2zOHfrP2)k%*1ITBBgpe<?5f}@zdQImpw#S+tw
zg8tLk+J7ib0wpnvL}w86``IUy!hx<%Qs2*E*vg*lU*7e~zHjGc(A5}5+wc0W at lE{B
zYfAKwKhJHB$`}B89OE*6i`g5EDbO!$hoH at MGgx*#hMxWMV=zf$mwsCkYojm(x;jbm
z!f3pUVeNWhwu!R7Ujv0DlOrACesc~zi$q at rbbob{RX(=@EFRVl>%`1fS0?7FL^ms1
zkw}e5iAb?fE0hi at gbfIr93mT>8dXiItCJ+EL76_xOgA*A8I6aT4l^8PY+n4nDAdSo
zkkKHMAqGRtg%}I9!kFlchzf<FfvG_0%S=}%`9fjNh^qYfgY{?=`ro}aU8vHLiAJWY
zlYdOgp@(!oanxb%<@F0IIZo2QubBHXetAl|#&>tFL(dig?GyS<=;|b4m)kyF%bND{
zns$^EL_+7apbyh>tJ6~bc5d?zw at 4I7%=i87*YC0%H%TgjLUF)!b&}=m`}Op=yUkIb
z2wk0Ik;{d5w>a7Zp{tV|XBJ0y9>nktEPtGq&WFhPJ{E|3!qG{sPOT3o=k$Fbcw(to
zEgUdMg&_-_nRZ$gE*-Md+3F*N6(j}3=7-70Ob;5vqpOpwFI1_lJE#tE_w)$jDm5~#
zbSy0`U7<O;I!T!Me18n<5r?CzlLSyFH8QPk>=#E~(h4>_oW<Wsw5#zs+%*s9)_*A4
zXr<BBNgB}@_T7 at w8C{)Z2^aVhWjyn|VBvMB;p2g1GCE3p0ras~Y)b0B_({AkFDJC0
zkG0N!bd_`(nNTviI!T@!FlaOcHNM%;$D5m=uoZ<;BU4Qb`oZYxB)=B{W<^1KW<Xrv
zXb+ASJ}hX at iXIhoC&dnmfo!PpTnS{T21F150D+*Bp#&9wj3OIHKmZIv3N(mXFf<d)
zr at EQk=fK>g8aIp8uvx5zZM*q_%+`!lnvPi!TV at a)*T=yy1TaJ<=m`BF$&(~Z#yv#{
zj@=x}3Xq*-8dMuPQ?tXvYjx{Fa#T-amV|4!*>jeq;|cl!Cf^ldu(v6Go5*1V)BA|e
zSX1j?P{XZ%i!Kf~cOlf~=Tcbt;@;@(;HePBr>=yp;^9?YbBz#;yy4V2TL5N*W-B!Q
zx at wZ@+=Ya?hew$t>KT1j)NMH at 1?-t|Ru0 at V<E(tZX3w4<a5kV3bjdtvywDsoU?F9F
z at 62-oPg(~zxs at 6vTOvpcn^_N$xS{`eUlW}OGPA~iY#DTCjcMBcIh%R=-IZV<fMbrU
z+gpvW_fwY0ez(s^-IfTFho1d0+5t#p$@|hGi}0~^2wU*~Z>za^*#TIzn1+=9OlBDq
zvP?8I<t?Sqxy+inFhMTJ at s&2Hzs at VWAokL8TOHyx(DsxNyZTC2-IRPFERKMwD1Fl8
zP>o at KBx!r$X{kN4KR}d<{&5F>oMRpAHhu2=cF=2{fumVYeC^6Ns)P7Z)z?^y66t at d
z^Mx0bEP`94y}{Q$bPK3PIg1>rghC49Fg4KsT7{tfg+y&bvfH||7L at sj%yg7!af-;Q
zxuejox+AUDG97h?d^0*oN}B{PrjvQ<_q;fN-3A5 at qj7rMhSbjV=bZ7T0Y#ZX?tEm#
zkh`^VKZ#5 at i%$UnH^s+I!QzX0jkutAgpqx;@Pjnt6z+P94mY(^^x}}-r5>6L>{hSt
z0r9^)D~%#biC)=BVyfa#QoobCDIK2CPo$LOO=c at Td>|(BXl0^q7=lo)dBq-ax;2zC
zC^10C&^20+^a;`O<0xeKqOH1`{XgxODS?!5vadfwW4OkS9L?9rdy+61I at J)Z?Fz02
Bl2iZy

delta 1884
zcmV-i2c!7g4&V-u8Gkr8F)e2^GcaK>HD+RCWo2XvNp5p=VQyn(Iv_JOH85i~GdV3Y
zFk)gYG&W{4EjTbaH7z(bV=y;4HDfV0VKWL=Lu_wjYdRo%eF_TIx(m9^2IBzE8B5kp
zr2qf`001bpFZ}>e)iwY+OEeHlz*tcMD2k#eiXtk`qKvM%V1EiWL)em3b`#*lvi_S6
zVolVDM5d%DC9y8u`%99#NGLWYcx^TOZG^7Pxv_?GG5Ax_=-4Q{OeqEF0OA1m0NV15
z^dop<rA%KMDf=Nbm(II$o6wBN1nRJdl^6Ce%<YY`2)KLS@<DOzrRE^*d+o|xkGL0Q
zz4m4M_=+6&uz#y-LPYe-Rvg3a!UfF-!`BdeL00bjga6s at _x{#@7L at 56vrZ_bQ;c{n
z0lGR#*}ky6#oMd9^zY7bK^fbl3ZSc#B!c9|2^KW^Ux>3FZ`8<Z>AE_}NvjSs-ygdb
z>FOkt=#(#8pbN9nu1 at mW+_YLasnmDMxhdJOY*wYu#((CfbTZwWQceqnaZoun7_98?
zd<5}r=CRN at sjvt!Nx~7NuT<HQ0-#QzU7e)s!5qt5%w6zeZp+z at UkEEi`VYIl+jWcO
zE!vW*92D*6<EcScC;95*E!xjVTT&B)B3O^Dn6*(Fmaa~6?9Yo}J+^E~XBHU6?2UQ~
z_7%%aGk*g5PiJeRG6{~v>=BJY(C=rLPzndSI!S#W3_})(W&gq#mwn&POQ5SWjJDtP
zUFVzlo!5@&AAO$N9ECCP^Et+4{1&q}`cj}@*bZAZ*9BW;*JFt72YzlL>Fm;PGh%Jj
zg+Ny)DP9<jcQLG89D+7c*7xh5uuNj4!`v?jhJV-|(Ut*Son({;Sr-JyE1gw|nXRfw
zOx1{PMx+vP3ULB)TA5U)91{*risojB1~p?dbL#3Ohh|LPhnZI+Q<}+mi0Kf+A%^C~
z?~B3=%mx?@Fd1Gjyj*y(P^*haXG2h^i;PPJN?T&OI>{Cab2b#^N1v=mThRaRwaG%K
z7=L*(FkPJ_5*Xs6`-!6tb1&R4tmGL<|Gr}G1M>?X={n!txel=%(y~kFH=(POgk5g?
zbPd!rpVu^_n;#N7uK|6T2C_Qs)Nkh&^x^i1`gr-i-~IYsmS-hML`<j+m#$8-oPEDo
zkGtC(?TOIUNfNnSd3TGWJP^7%$#G_JRDb6|EN^ku5~z!F!l_k`38z%0)XJnPp;|aM
zB^JwsDy>jB*py14Fj%28Plr|E(jYpWtvx_iKTbYqdU!lycF-3cU7ciYp;OA5gX%DM
ztj89v(jrfVBPl6~3cb<QNxIDE`(s&;I2&D^B!D_;k*BJ$UmST!E6~6h6n`VpZhyvu
z;jZBfvPRKHYmsM?p)>5eC8aUCI>`~P)=QLeaHoX|++hZf|B=DyCb7lO$6m1~r~Be1
z at xE{_Xg?ooo&V at 6=`8Y0FuFR)of|G_G;HZyv!9POH9#S&38h8e%nSOt=;|cD76E2N
zKYC_9Sl}p+jTJpAC{GF=6jbMgj(>^OPJwHv at nB@A1Vj)300Bq<(FF%F=!ymsV6Z at p
zqcDzv5C}sMib5MlKmZIv3N(mXFmw#X1G+Vsh*mHlY&r++LOo~~s&(K4#;TcCn$8#=
zw#GmV)=Os{5Wo<bU?}v1EDw?}+3*x3IQDW9u3#+D!k4wLHe_70L&s}%>wiLVR5xRm
zglikvbEc)^3I6iQ7eRo4wKc!xbL5^YeZ*<3sro0Vxay)8$E95ewfVU#tk|tLJoG>+
zMDeLB$5vrcRfoS)Btp-b`kO6++Cl#k8h>0hY<6-Xk?!H6ND}prJ`;7fwzC<UM|b=g
zKgDe6&#-Bp at TRsC%t4pflYe}i)G|W^Qr6bCIw$a?)wqpYq3Nt1b6SYuc?j-?K4SXK
zL1s?iE8S=AOdHzp^L{p)`^8p*fDiGkPPaFW at b?>*$bOg4NY$1Il9!$RG1>`8WXbo^
zB8%{$bqHJZ|8J|gfwBXzXfX{b|CtOjCUh~;(3H27LgO-P>Ou;+Ab-bK+M at m<ukL~v
zOV53E$k##HGZ*agm8 at DX`M_8lfm2bM)X1S4!${Khg6UFwV1Ixp6%FG^{P=8**d_Yh
z`OT!)JOf9wocP+4Z&U~ROVxKyixR1StJ8xYhA)C!qjkHlMbZ{f73C~)qzZ+|#9?Z@
z|FsIi_X~-Nf at HTfXMZmzGZC5XDAD2)kyR;2p<QuDTCL?a>JI&8bdZuZ2^UN!^Th9Y
zaiUcWoI>ODx(%tE>Hj(7eFhXY6W;l-fFXBl<$MyEaF%-k0Jp`*ZNcI{^%`+O0SUwU
zXvyEH8KVHvdvv&<oiG-M^e%;HWMH>?MOVcC^{jdnkxBH*o>ioYD*hn#owS?6;c5Pa
zOKII?w&KGFV&V|3Mbr&L5X!Yz%p;DnMjk&-Yt$nN6QbqE1&=eiq^6&i)+qs1`Uid;
WTT(bI7&}6muV?loF^6>35UuT6gN?`l

diff --git a/src/box/lua/schema.lua b/src/box/lua/schema.lua
index 74b7064..dedd072 100644
--- a/src/box/lua/schema.lua
+++ b/src/box/lua/schema.lua
@@ -1988,10 +1988,13 @@ box.internal.collation.create = function(name, coll_type, locale, opts)
         box.error(box.error.ILLEGAL_PARAMS,
         "options (fourth arg) must be a table or nil")
     end
+    local opts_defaults = {
+        strength = "primary",
+    }
+    opts = update_param_table(opts, opts_defaults)
     local lua_opts = {if_not_exists = opts.if_not_exists }
     check_param_table(lua_opts, {if_not_exists = 'boolean'})
     opts.if_not_exists = nil
-    opts = setmap(opts)
 
     local _coll = box.space[box.schema.COLLATION_ID]
     if lua_opts.if_not_exists then
diff --git a/src/box/lua/upgrade.lua b/src/box/lua/upgrade.lua
index d9c2ae4..e09318b 100644
--- a/src/box/lua/upgrade.lua
+++ b/src/box/lua/upgrade.lua
@@ -396,7 +396,7 @@ local function create_collation_space()
     box.space._index:insert{_collation.id, 1, 'name', 'tree', {unique = true}, {{1, 'string'}}}
 
     log.info("create predefined collations")
-    box.space._collation:replace{1, "unicode", ADMIN, "ICU", "", setmap{}}
+    box.space._collation:replace{1, "unicode", ADMIN, "ICU", "", {strength='primary'}}
     box.space._collation:replace{2, "unicode_ci", ADMIN, "ICU", "", {strength='primary'}}
 
     local _priv = box.space[box.schema.PRIV_ID]
-- 
2.7.4





More information about the Tarantool-patches mailing list