From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 43D632A88C for ; Tue, 26 Mar 2019 16:35:14 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Caf504w1B-_j for ; Tue, 26 Mar 2019 16:35:14 -0400 (EDT) Received: from smtp39.i.mail.ru (smtp39.i.mail.ru [94.100.177.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 4F4962A2EC for ; Tue, 26 Mar 2019 16:35:13 -0400 (EDT) From: Ivan Koptelov Subject: [tarantool-patches] [PATCH] sql: set explicit default collation's strength Date: Tue, 26 Mar 2019 23:34:56 +0300 Message-Id: <20190326203456.76617-1-ivan.koptelov@tarantool.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-Help: List-Unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-Subscribe: List-Owner: List-post: List-Archive: To: tarantool-patches@freelists.org Cc: v.shpilevoy@tarantool.org, Ivan Koptelov Before the patch, collations with no strength set used tertiary strength. But it was not easy to understand it, because box.space._collation:select{} would return ... [1, 'unicode', 1, 'ICU', '', {}] ... for such collations. After the patch default value is set explicitly, so user would observe : ... [1, 'unicode', 1, 'ICU', '', {strength='tertiary'}] ... Note that box/stat.test.lua is temporary disabled with this patch. It is done so because the patch is meant for the 2.1.2 release. Current tarantool version is 2.1.2, so upgrade is done (using upgrade.lua) and because of it box/stat is broken (it does not expect changes in upgrade) But after the release would be made, box/stat would work again, because no changing would be done in upgrade.lua. To resume, after we set tarantool version to => 2.1.2 box/stat should be enabled again. Closes #3573 @TarantoolBot document Title: default collation strength is explicit tertiary now Before the patch we already have tertiary strength is default strength for collations, but it was explicit: [1, 'unicode', 1, 'ICU', '', {}] After the patch it's just become explicit: 1, 'unicode', 1, 'ICU', '', {'strength' = 'tertiary'}] Also please fix this https://tarantool.io/en/doc/2.1/book/box/data_model/#collations There is line saying: "unicode collation observes all weights, from L1 to Ln (identical)" It was not true and now this fact would just become obvious. --- Branch https://github.com/tarantool/tarantool/tree/sudobobo/gh-3573-add-explicit-default-coll-strength Issue https://github.com/tarantool/tarantool/issues/3573 src/box/bootstrap.snap | Bin 1834 -> 1840 bytes src/box/lua/schema.lua | 4 ++++ src/box/lua/upgrade.lua | 26 ++++++++++++++++++++++++-- src/lua/utf8.c | 1 + test/app-tap/tarantoolctl.test.lua | 10 +++++----- test/box-py/bootstrap.result | 2 +- test/box/ddl.result | 6 +++--- test/box/suite.ini | 2 +- test/sql/collation.result | 14 ++++++++++++++ test/sql/collation.test.lua | 8 ++++++++ test/unit/coll.cpp | 2 ++ 11 files changed, 63 insertions(+), 12 deletions(-) diff --git a/src/box/bootstrap.snap b/src/box/bootstrap.snap index a6d94673831550d5c122f29de513f017790cfe44..2f4bdb194a4bed10f382d299f79e9f5266041f23 100644 GIT binary patch delta 1836 zcmV+{2h;ef4zLc88GkV`EoU(~WHV!CV`4T6Np5p=VQyn(Iv`^o1HH!v_ZGBpZTLu_wjYdRo%eF_TIx(m9^2Dbpt_18<%r2qf` z001bpFZ}>ebu|E*M^q0<;25U>Kp10;F~$+J5D-{ML*QW(A%7yj1ZAU?V2p`GQD8SB zQ<9aEzBH}eU*u^eW4ks0yBIxRY|l64^jgy*cTs(LoryxGlmglS*8t@JIg8qIZ1iHj zEz+fLY;=8+*r)OCybO9NnLnNNEb_8`)p0wcF9Yu0m;4-xozy(Xyw@M*TBLpG>M{@8 z?{3Ix&$?O`G=D@rY(o*;9}Q@J23JYCn^U##pWn0I@BOOxY<6kfvQ;RhM@+bq0N1`6 zr^+n=3-54-J6lu%Y;}&VeR1F4X{-L}-<{Kdobb4q5u@*c9oFKE5^1O z8#7vz^fjnulZYd2b&i!*4Pw5(HCsZrI>#>b$iw#MvVY1K_d@5?@)E>jgUf!RVM|UH z0CffhVeRJI@v>%n_efHp(LdPr-QTQ*cW6n9BEj}^@#J8ub6j=t!uE5~lGM~-NvB0s z%a*i;!B*!e_UB7FEvhU@Xscw30)nm1 zQQyxXn19Nh>sQ_F$i8pqWZ72E%P*LW6w=dvdH#h&N3Mq>{6JZ^CppSA3a!Wih6 zwLw++-K-+J7QxPX`LW7K<4=Fd#Fn&FV5@TsFDu4-2+D2;<}!5k{n`g4p%7^h_nR}= z*&<3Ju+=$Y`JB1|B!p^4(1@T3vDG;W(VRHbi+=+#WAmE%Amc%%gA9iizbgtgF*Gq7 zVl=>HfWZKBq1KWG`VzWAOI&G&Qc{Jj&XFWDUqV=3?7>Ku(S z*cDwb6g5~|b^WqPj*ay18`ivxS6!2?@!g$ku(L^2RtoiEwmL`F<)x=(S;u-_$B0H0 znSao^?8n2goa(Vtzn$CM!)*~IBEkE9_v`;G$5E`&&=lGOW~*}~U*B)1#ocXKwn%xP^BWQuN|%N9vBfF>)$WLxdY5 zBZR^PA<-kU0-+kjz0;zKRw;}_{pixAi+>jCW2rQBb9^&3-Q0*!+MgDu0y1 zIGP*Ov$54VdNl&PhKkU55!s>989j7%WKf+LIxr~C3mg|WEpBpda9(9av6!e8+iM7= z;*{cq;&j4vV?vos)Rd?RfpDntTx6&OMi77i1Ox&A(FF%F=!zZ^V8B3(qcDzv7>Gj< z2tpeMKmZIv3N(mXFhW?K>aJ!a(0^*+@Y}qe%PHEt9_`=*3L~~osdt4>)8x9tE>G0N zozw+}>O>@iq0kS6)Re?n=_vwm>|aH$3WF<>!zxKNw5r)RY>NeoT?pm;loa;g-y7ARB7YU)?kNCa ztFFH4({vF|ng34xWlMl)(4|6St*dT4@OBYY_xu`@#4n@Sib@xr?##_Hw(6Prr>@>- zY&PpTz&;aZL6^*vuS$tABNZ|>?iM{K_9W*ZCAZN)h(;LFLgwosxHt3>&ufO0S>ji% zzFC*mXvY5cv-#U^TnRuwTz|2uZgn++-cMO#_T9dhXImmbe>}s-=n0UMCE`n%EaG#k z5;o$$+*T9$WXEAqISudqnOHI=+A>kjS#0SKqm)@y7Z}I|Ilj^c^~d?nE=WeWV)Y51 zk+wyy*mWyesa}#8usAVOkx@XCgHIYcuR49UeVAIhVD>Rxsj@Zljenn)01OH3^ssYg z(F?1AOSPQRpvo7jj^pEbcd8-ABEBvHS_HK~et<6^=(eaxFFzBX;mxP1=wuRvP zLRtkvqT9Nc7L=KYuypiqp_Rx{t)n=H+mTjlxsAFfzL^{()h4Kk>0qAzeG_L}#=wa% zPGj3(?M$znGmA8!D1S4^od}BKvT+WGLqbk(VJLUi5UuTRS%p>r delta 1830 zcmV+>2if?r4yq228Gkq}XJchKV>e|mGcgKDZgX^DZewLSAUH8*G-hRFF)cG;GB_j8OV+k*%00000 z04TLD{Qyu!H2``?L=Q;d7^eU*%rL_YbA*6UjsTc;lp8MDB7eUI!);+>n7QatVK*XE zl9iIaG_BlU�TTs4d4t zFXqc4Tl&Vv)+>p98t=|aAlH)V(^tPD@9I?@w=?=O;O>3N&!N~!&2!9q{b8;}+J~(! z^RWHyhMe}RtAAxcLe#@H6v6$`e&%OTrKGzVRr~(=J?s76pL);cmc}ewg;HA7gd+)P z?W-}W+yZQMj;(!Hc!x7p|Mc(9X+OBLLluAz7c*k?J+Q-CoKYAz+O|5!B~OIx$hk42 zMM+4iidSa5Qkq$pWBG zpc%994r@2xj+ZstyHA1wiT=T^@BU^iyhBUU)9AIIizWwKoujIY_qCskmZYTyOgb&5 zShl1!47NH)u|H?hX)$F)>>H9e2J?AOV_VW01x{FYh{`1B*RxV61q552 zqrRU(5Py}s)~mYPk$vCJNuR6nDz^XouJJ7V&Sg&Yi#*S5jm8}4dCcN1K4aM#g)z|Y zYJ;iryE#R6ErOl(^5Ybd#-IMOi7hFqz*grN-c^kE5R}~x%w^c>`*jaULV;-z_nR}= z*&#Y2u+M>Klo!iXA?GP;@!TWyq>;EjrQ7n-*2bI-EEETkhVHU zq3^@HTN>4gu+=$=GFRtf?ktVsKw#k=-aOdq9KR10Q1s$#Na~KgIbt$WQ-mWTGlaqj z+3FnYh!&AG2-P6&ofcEHN?+UwNS7{Mw13baTb(0mKHty6TBP~d>Kp;oNnhNl$No^{ zB(1=s!#Vs-M7JHE!7b}>Mu}lb>x(Pt(0JutlF}Sooui5`r3za-=g^4Jb7ds;Vo zDWuW!EEUU&>8kjL@T$7n&weh-I)Cva>3ne|99x}Zj*l8K3Z^u++0R8A8y^rwg@4i) zM{|REHnuuPuSNiukP#ZLB0DrXqleCp45|}D2L{D?f#c$)#ZAr)j;pLE7W1@Xa|xYP zm{OQfm`;>#N~cnRZm98GWT*s25P$#$Ko9`Y1qU(ciUty3utBR-LaPRKEBAtqG$7DCjeqS$eP}PLf8Ya#tr=2jdOQ+sj3+AbYOl)@8daZ8VWRBu#%zAKbHG7`3G@k$;Ve<75 z3`Ugex11akB5xn<8EcA42s)#>48`p-Erb$&>J`>c*&7f#*c76Usl#Kdy??W+L53%q zCs&?2&lZP_K}!pbIIg-U^>gI0nGA~rUpZfF`|?|;`SG5e06Ny9A>S3RELWAp^b$rABpN*3X{bwEqB11X$nli|qyNZvZ9xLUhgP5P9H}h}j$M5u zt8PA@Q5HuADVlz4a;T({9jY@8+at55md^f|D-})S>iBU9z!Dfw4}W#e0eT@aa5a__ zT1WXN?J#>hRhw!wt?0|lqeW1Q5^zCha)2o6g}`{zO$tZql=&_y_x7B&~cD zJVOFXGOy|pt+z&rk_4a_VWR>`B_aAh4pD|u