From: Stanislav Zudin <szudin@tarantool.org> To: tarantool-patches@freelists.org, kostja@tarantool.org Cc: Stanislav Zudin <szudin@tarantool.org> Subject: [tarantool-patches] [PATCH v4] Feature request for a new collation Date: Tue, 5 Mar 2019 14:44:31 +0300 [thread overview] Message-ID: <20190305114431.31311-1-szudin@tarantool.org> (raw) Adds a new set of default collations. The collation 'unicode_ky_s1' supports the difference between Cyrillic letters 'Е' and 'Ё'. The standard case insensitive collation ('unicode_ci') doesn't distinguish these letters. Closes #4007 --- Branch: https://github.com/tarantool/tarantool/tree/stanztt/gh-4007-new-default-collation-2.1 Issue: https://github.com/tarantool/tarantool/issues/4007 src/box/bootstrap.snap | Bin 1867 -> 4485 bytes src/box/lua/upgrade.lua | 109 ++++++- src/coll_def.h | 2 +- test/box-py/bootstrap.result | 2 +- test/box/ddl.result | 560 +++++++++++++++++++++++++++++++- test/box/net.box.result | 2 +- test/sql-tap/collation.test.lua | 280 +++++++++++++++- test/sql/collation.result | 4 +- test/sql/collation.test.lua | 4 +- 9 files changed, 943 insertions(+), 20 deletions(-) diff --git a/src/box/bootstrap.snap b/src/box/bootstrap.snap index a0c436d0dac9593d88e87fefe5084e833d8bed2f..35ab86f01b3e6f6936a26b6441ed196caa730064 100644 GIT binary patch delta 4476 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 O=H$0fEz<|p5UuUun{2QE delta 1838 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 diff --git a/src/box/lua/upgrade.lua b/src/box/lua/upgrade.lua index 09af2e20d..58b5d47cc 100644 --- a/src/box/lua/upgrade.lua +++ b/src/box/lua/upgrade.lua @@ -615,7 +615,114 @@ local function upgrade_to_2_1_0() end local function upgrade_to_2_1_2() - box.space._collation:replace{4, "unicode_ru_s2", ADMIN, "ICU", "ru_RU", {strength='secondary'}} + local coll_lst = { + {name="af", loc_str="af"}, -- Afrikaans + {name="am", loc_str="am"}, -- Amharic (no character changes, just re-ordering) + {name="ar", loc_str="ar"}, -- Arabic (use only "standard") + {name="as", loc_str="as"}, -- Assamese + {name="az", loc_str="az"}, -- Azerbaijani (Azeri) + {name="be", loc_str="be"}, -- Belarusian + {name="bn", loc_str="bn"}, -- Bengali (Bangla actually) + {name="bs", loc_str="bs"}, -- Bosnian (tailored as Croatian) + {name="bs_Cyrl", loc_str="bs_Cyrl"}, -- Bosnian in Cyrillic (tailored as Serbian) + {name="ca", loc_str="ca"}, -- Catalan + {name="cs", loc_str="cs"}, -- Czech + {name="cy", loc_str="cy"}, -- Welsh + {name="da", loc_str="da"}, -- Danish + {name="de__phonebook", loc_str="de_DE_u_co_phonebk"}, -- German (umlaut as 'ae', 'oe', 'ue') + {name="de_AT_phonebook", loc_str="de_AT_u_co_phonebk"}, -- Austrian German (umlaut primary greater) + {name="dsb", loc_str="dsb"}, -- Lower Sorbian + {name="ee", loc_str="ee"}, -- Ewe + {name="eo", loc_str="eo"}, -- Esperanto + {name="es", loc_str="es"}, -- Spanish + {name="es__traditional", loc_str="es_u_co_trad"}, -- Spanish ('ch' and 'll' as a grapheme) + {name="et", loc_str="et"}, -- Estonian + {name="fa", loc_str="fa"}, -- Persian + {name="fi", loc_str="fi"}, -- Finnish (v and w are primary equal) + {name="fi__phonebook", loc_str="fi_u_co_phonebk"}, -- Finnish (v and w as separate characters) + {name="fil", loc_str="fil"}, -- Filipino + {name="fo", loc_str="fo"}, -- Faroese + {name="fr_CA", loc_str="fr_CA"}, -- Canadian French + {name="gu", loc_str="gu"}, -- Gujarati + {name="ha", loc_str="ha"}, -- Hausa + {name="haw", loc_str="haw"}, -- Hawaiian + {name="he", loc_str="he"}, -- Hebrew + {name="hi", loc_str="hi"}, -- Hindi + {name="hr", loc_str="hr"}, -- Croatian + {name="hu", loc_str="hu"}, -- Hungarian + {name="hy", loc_str="hy"}, -- Armenian + {name="ig", loc_str="ig"}, -- Igbo + {name="is", loc_str="is"}, -- Icelandic + {name="ja", loc_str="ja"}, -- Japanese + {name="kk", loc_str="kk"}, -- Kazakh + {name="kl", loc_str="kl"}, -- Kalaallisut + {name="kn", loc_str="kn"}, -- Kannada + {name="ko", loc_str="ko"}, -- Korean + {name="kok", loc_str="kok"}, -- Konkani + {name="ky", loc_str="ky"}, -- Kyrgyz + {name="lkt", loc_str="lkt"}, -- Lakota + {name="ln", loc_str="ln"}, -- Lingala + {name="lt", loc_str="lt"}, -- Lithuanian + {name="lv", loc_str="lv"}, -- Latvian + {name="mk", loc_str="mk"}, -- Macedonian + {name="ml", loc_str="ml"}, -- Malayalam + {name="mr", loc_str="mr"}, -- Marathi + {name="mt", loc_str="mt"}, -- Maltese + {name="nb", loc_str="nb"}, -- Norwegian Bokmal + {name="nn", loc_str="nn"}, -- Norwegian Nynorsk + {name="nso", loc_str="nso"}, -- Northern Sotho + {name="om", loc_str="om"}, -- Oromo + {name="or", loc_str="or"}, -- Oriya (Odia) + {name="pa", loc_str="pa"}, -- Punjabi + {name="pl", loc_str="pl"}, -- Polish + {name="ro", loc_str="ro"}, -- Romanian + {name="sa", loc_str="sa"}, -- Sanskrit + {name="se", loc_str="se"}, -- Northern Sami + {name="si", loc_str="si"}, -- Sinhala + {name="si__dictionary", loc_str="si_u_co_dict"}, -- Sinhala (U+0DA5 = U+0DA2,0DCA,0DA4) + {name="sk", loc_str="sk"}, -- Slovak + {name="sl", loc_str="sl"}, -- Slovenian + {name="sq", loc_str="sq"}, -- Albanian (just "standard") + {name="sr", loc_str="sr"}, -- Serbian + {name="sr_Latn", loc_str="sr_Latn"}, -- Serbian in Latin (tailored as Croatian) + {name="sv", loc_str="sv"}, -- Swedish (v and w are primary equal) + {name="sv__reformed", loc_str="sv_u_co_reformed"}, -- Swedish (v and w as separate characters) + {name="ta", loc_str="ta"}, -- Tamil + {name="te", loc_str="te"}, -- Telugu + {name="th", loc_str="th"}, -- Thai + {name="tn", loc_str="tn"}, -- Tswana + {name="to", loc_str="to"}, -- Tonga + {name="tr", loc_str="tr"}, -- Turkish + {name="ug_Cyrl", loc_str="ug"}, -- Uyghur in Cyrillic - is there such locale? + {name="uk", loc_str="uk"}, -- Ukrainian + {name="ur", loc_str="ur"}, -- Urdu + {name="vi", loc_str="vi"}, -- Vietnamese + {name="vo", loc_str="vo"}, -- Volapük + {name="wae", loc_str="wae"}, -- Walser + {name="wo", loc_str="wo"}, -- Wolof + {name="yo", loc_str="yo"}, -- Yoruba + {name="zh", loc_str="zh"}, -- Chinese + {name="zh__big5han", loc_str="zh_u_co_big5han"}, -- Chinese (ideographs: big5 order) + {name="zh__gb2312han", loc_str="zh_u_co_gb2312"}, -- Chinese (ideographs: GB-2312 order) + {name="zh__pinyin", loc_str="zh_u_co_pinyin"}, -- Chinese (ideographs: pinyin order) + {name="zh__stroke", loc_str="zh_u_co_stroke"}, -- Chinese (ideographs: stroke order) + {name="zh__zhuyin", loc_str="zh_u_co_zhuyin"}, -- Chinese (ideographs: zhuyin order) + } + local coll_strengths = { + {s="s1", opt={strength='primary'}}, + {s="s2", opt={strength='secondary'}}, + {s="s3", opt={strength='tertiary'}} + } + + local id = 4 + for _, collation in ipairs(coll_lst) do + for i, strength in ipairs(coll_strengths) do + local coll_name = 'unicode_' .. collation.name .. "_" .. strength.s + log.info("creating collation %s", coll_name) + box.space._collation:replace{id, coll_name, ADMIN, "ICU", collation.loc_str, strength.opt } + id = id + 1 + end + end end local function get_version() diff --git a/src/coll_def.h b/src/coll_def.h index d3af89802..18ed606ad 100644 --- a/src/coll_def.h +++ b/src/coll_def.h @@ -44,7 +44,7 @@ extern const char *coll_type_strs[]; /** Maximal length of locale name. */ enum { - COLL_LOCALE_LEN_MAX = 16, + COLL_LOCALE_LEN_MAX = 1024, }; /* diff --git a/test/box-py/bootstrap.result b/test/box-py/bootstrap.result index 3e4394557..69fbded6d 100644 --- a/test/box-py/bootstrap.result +++ b/test/box-py/bootstrap.result @@ -4,7 +4,7 @@ box.internal.bootstrap() box.space._schema:select{} --- - - ['max_id', 511] - - ['version', 2, 1, 0] + - ['version', 2, 1, 2] ... box.space._cluster:select{} --- diff --git a/test/box/ddl.result b/test/box/ddl.result index bffa19a8c..6f0d09120 100644 --- a/test/box/ddl.result +++ b/test/box/ddl.result @@ -350,7 +350,7 @@ box.space._collation:auto_increment{'test', 0, 'ICU', 42} ... box.space._collation:auto_increment{'test', 0, 'ICU', 'ru_RU', setmap{}} --ok --- -- [5, 'test', 0, 'ICU', 'ru_RU', {}] +- [277, 'test', 0, 'ICU', 'ru_RU', {}] ... box.space._collation:auto_increment{'test', 0, 'ICU', 'ru_RU', setmap{}} --- @@ -358,7 +358,7 @@ box.space._collation:auto_increment{'test', 0, 'ICU', 'ru_RU', setmap{}} ... box.space._collation.index.name:delete{'test'} -- ok --- -- [5, 'test', 0, 'ICU', 'ru_RU', {}] +- [277, 'test', 0, 'ICU', 'ru_RU', {}] ... box.space._collation.index.name:delete{'nothing'} -- allowed --- @@ -474,7 +474,7 @@ _ = box.space._collation.index.name:delete{'test'} -- ok ... box.space._collation:auto_increment{'test', 0, 'ICU', 'ru_RU', setmap{}} --- -- [5, 'test', 0, 'ICU', 'ru_RU', {}] +- [277, 'test', 0, 'ICU', 'ru_RU', {}] ... box.space._collation:select{} --- @@ -482,8 +482,280 @@ box.space._collation:select{} - [1, 'unicode', 1, 'ICU', '', {}] - [2, 'unicode_ci', 1, 'ICU', '', {'strength': 'primary'}] - [3, 'binary', 1, 'BINARY', '', {}] - - [4, 'unicode_ru_s2', 1, 'ICU', 'ru_RU', {'strength': 'secondary'}] - - [5, 'test', 0, 'ICU', 'ru_RU', {}] + - [4, 'unicode_af_s1', 1, 'ICU', 'af', {'strength': 'primary'}] + - [5, 'unicode_af_s2', 1, 'ICU', 'af', {'strength': 'secondary'}] + - [6, 'unicode_af_s3', 1, 'ICU', 'af', {'strength': 'tertiary'}] + - [7, 'unicode_am_s1', 1, 'ICU', 'am', {'strength': 'primary'}] + - [8, 'unicode_am_s2', 1, 'ICU', 'am', {'strength': 'secondary'}] + - [9, 'unicode_am_s3', 1, 'ICU', 'am', {'strength': 'tertiary'}] + - [10, 'unicode_ar_s1', 1, 'ICU', 'ar', {'strength': 'primary'}] + - [11, 'unicode_ar_s2', 1, 'ICU', 'ar', {'strength': 'secondary'}] + - [12, 'unicode_ar_s3', 1, 'ICU', 'ar', {'strength': 'tertiary'}] + - [13, 'unicode_as_s1', 1, 'ICU', 'as', {'strength': 'primary'}] + - [14, 'unicode_as_s2', 1, 'ICU', 'as', {'strength': 'secondary'}] + - [15, 'unicode_as_s3', 1, 'ICU', 'as', {'strength': 'tertiary'}] + - [16, 'unicode_az_s1', 1, 'ICU', 'az', {'strength': 'primary'}] + - [17, 'unicode_az_s2', 1, 'ICU', 'az', {'strength': 'secondary'}] + - [18, 'unicode_az_s3', 1, 'ICU', 'az', {'strength': 'tertiary'}] + - [19, 'unicode_be_s1', 1, 'ICU', 'be', {'strength': 'primary'}] + - [20, 'unicode_be_s2', 1, 'ICU', 'be', {'strength': 'secondary'}] + - [21, 'unicode_be_s3', 1, 'ICU', 'be', {'strength': 'tertiary'}] + - [22, 'unicode_bn_s1', 1, 'ICU', 'bn', {'strength': 'primary'}] + - [23, 'unicode_bn_s2', 1, 'ICU', 'bn', {'strength': 'secondary'}] + - [24, 'unicode_bn_s3', 1, 'ICU', 'bn', {'strength': 'tertiary'}] + - [25, 'unicode_bs_s1', 1, 'ICU', 'bs', {'strength': 'primary'}] + - [26, 'unicode_bs_s2', 1, 'ICU', 'bs', {'strength': 'secondary'}] + - [27, 'unicode_bs_s3', 1, 'ICU', 'bs', {'strength': 'tertiary'}] + - [28, 'unicode_bs_Cyrl_s1', 1, 'ICU', 'bs_Cyrl', {'strength': 'primary'}] + - [29, 'unicode_bs_Cyrl_s2', 1, 'ICU', 'bs_Cyrl', {'strength': 'secondary'}] + - [30, 'unicode_bs_Cyrl_s3', 1, 'ICU', 'bs_Cyrl', {'strength': 'tertiary'}] + - [31, 'unicode_ca_s1', 1, 'ICU', 'ca', {'strength': 'primary'}] + - [32, 'unicode_ca_s2', 1, 'ICU', 'ca', {'strength': 'secondary'}] + - [33, 'unicode_ca_s3', 1, 'ICU', 'ca', {'strength': 'tertiary'}] + - [34, 'unicode_cs_s1', 1, 'ICU', 'cs', {'strength': 'primary'}] + - [35, 'unicode_cs_s2', 1, 'ICU', 'cs', {'strength': 'secondary'}] + - [36, 'unicode_cs_s3', 1, 'ICU', 'cs', {'strength': 'tertiary'}] + - [37, 'unicode_cy_s1', 1, 'ICU', 'cy', {'strength': 'primary'}] + - [38, 'unicode_cy_s2', 1, 'ICU', 'cy', {'strength': 'secondary'}] + - [39, 'unicode_cy_s3', 1, 'ICU', 'cy', {'strength': 'tertiary'}] + - [40, 'unicode_da_s1', 1, 'ICU', 'da', {'strength': 'primary'}] + - [41, 'unicode_da_s2', 1, 'ICU', 'da', {'strength': 'secondary'}] + - [42, 'unicode_da_s3', 1, 'ICU', 'da', {'strength': 'tertiary'}] + - [43, 'unicode_de__phonebook_s1', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'primary'}] + - [44, 'unicode_de__phonebook_s2', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'secondary'}] + - [45, 'unicode_de__phonebook_s3', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'tertiary'}] + - [46, 'unicode_de_AT_phonebook_s1', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'primary'}] + - [47, 'unicode_de_AT_phonebook_s2', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'secondary'}] + - [48, 'unicode_de_AT_phonebook_s3', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'tertiary'}] + - [49, 'unicode_dsb_s1', 1, 'ICU', 'dsb', {'strength': 'primary'}] + - [50, 'unicode_dsb_s2', 1, 'ICU', 'dsb', {'strength': 'secondary'}] + - [51, 'unicode_dsb_s3', 1, 'ICU', 'dsb', {'strength': 'tertiary'}] + - [52, 'unicode_ee_s1', 1, 'ICU', 'ee', {'strength': 'primary'}] + - [53, 'unicode_ee_s2', 1, 'ICU', 'ee', {'strength': 'secondary'}] + - [54, 'unicode_ee_s3', 1, 'ICU', 'ee', {'strength': 'tertiary'}] + - [55, 'unicode_eo_s1', 1, 'ICU', 'eo', {'strength': 'primary'}] + - [56, 'unicode_eo_s2', 1, 'ICU', 'eo', {'strength': 'secondary'}] + - [57, 'unicode_eo_s3', 1, 'ICU', 'eo', {'strength': 'tertiary'}] + - [58, 'unicode_es_s1', 1, 'ICU', 'es', {'strength': 'primary'}] + - [59, 'unicode_es_s2', 1, 'ICU', 'es', {'strength': 'secondary'}] + - [60, 'unicode_es_s3', 1, 'ICU', 'es', {'strength': 'tertiary'}] + - [61, 'unicode_es__traditional_s1', 1, 'ICU', 'es_u_co_trad', {'strength': 'primary'}] + - [62, 'unicode_es__traditional_s2', 1, 'ICU', 'es_u_co_trad', {'strength': 'secondary'}] + - [63, 'unicode_es__traditional_s3', 1, 'ICU', 'es_u_co_trad', {'strength': 'tertiary'}] + - [64, 'unicode_et_s1', 1, 'ICU', 'et', {'strength': 'primary'}] + - [65, 'unicode_et_s2', 1, 'ICU', 'et', {'strength': 'secondary'}] + - [66, 'unicode_et_s3', 1, 'ICU', 'et', {'strength': 'tertiary'}] + - [67, 'unicode_fa_s1', 1, 'ICU', 'fa', {'strength': 'primary'}] + - [68, 'unicode_fa_s2', 1, 'ICU', 'fa', {'strength': 'secondary'}] + - [69, 'unicode_fa_s3', 1, 'ICU', 'fa', {'strength': 'tertiary'}] + - [70, 'unicode_fi_s1', 1, 'ICU', 'fi', {'strength': 'primary'}] + - [71, 'unicode_fi_s2', 1, 'ICU', 'fi', {'strength': 'secondary'}] + - [72, 'unicode_fi_s3', 1, 'ICU', 'fi', {'strength': 'tertiary'}] + - [73, 'unicode_fi__phonebook_s1', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'primary'}] + - [74, 'unicode_fi__phonebook_s2', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'secondary'}] + - [75, 'unicode_fi__phonebook_s3', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'tertiary'}] + - [76, 'unicode_fil_s1', 1, 'ICU', 'fil', {'strength': 'primary'}] + - [77, 'unicode_fil_s2', 1, 'ICU', 'fil', {'strength': 'secondary'}] + - [78, 'unicode_fil_s3', 1, 'ICU', 'fil', {'strength': 'tertiary'}] + - [79, 'unicode_fo_s1', 1, 'ICU', 'fo', {'strength': 'primary'}] + - [80, 'unicode_fo_s2', 1, 'ICU', 'fo', {'strength': 'secondary'}] + - [81, 'unicode_fo_s3', 1, 'ICU', 'fo', {'strength': 'tertiary'}] + - [82, 'unicode_fr_CA_s1', 1, 'ICU', 'fr_CA', {'strength': 'primary'}] + - [83, 'unicode_fr_CA_s2', 1, 'ICU', 'fr_CA', {'strength': 'secondary'}] + - [84, 'unicode_fr_CA_s3', 1, 'ICU', 'fr_CA', {'strength': 'tertiary'}] + - [85, 'unicode_gu_s1', 1, 'ICU', 'gu', {'strength': 'primary'}] + - [86, 'unicode_gu_s2', 1, 'ICU', 'gu', {'strength': 'secondary'}] + - [87, 'unicode_gu_s3', 1, 'ICU', 'gu', {'strength': 'tertiary'}] + - [88, 'unicode_ha_s1', 1, 'ICU', 'ha', {'strength': 'primary'}] + - [89, 'unicode_ha_s2', 1, 'ICU', 'ha', {'strength': 'secondary'}] + - [90, 'unicode_ha_s3', 1, 'ICU', 'ha', {'strength': 'tertiary'}] + - [91, 'unicode_haw_s1', 1, 'ICU', 'haw', {'strength': 'primary'}] + - [92, 'unicode_haw_s2', 1, 'ICU', 'haw', {'strength': 'secondary'}] + - [93, 'unicode_haw_s3', 1, 'ICU', 'haw', {'strength': 'tertiary'}] + - [94, 'unicode_he_s1', 1, 'ICU', 'he', {'strength': 'primary'}] + - [95, 'unicode_he_s2', 1, 'ICU', 'he', {'strength': 'secondary'}] + - [96, 'unicode_he_s3', 1, 'ICU', 'he', {'strength': 'tertiary'}] + - [97, 'unicode_hi_s1', 1, 'ICU', 'hi', {'strength': 'primary'}] + - [98, 'unicode_hi_s2', 1, 'ICU', 'hi', {'strength': 'secondary'}] + - [99, 'unicode_hi_s3', 1, 'ICU', 'hi', {'strength': 'tertiary'}] + - [100, 'unicode_hr_s1', 1, 'ICU', 'hr', {'strength': 'primary'}] + - [101, 'unicode_hr_s2', 1, 'ICU', 'hr', {'strength': 'secondary'}] + - [102, 'unicode_hr_s3', 1, 'ICU', 'hr', {'strength': 'tertiary'}] + - [103, 'unicode_hu_s1', 1, 'ICU', 'hu', {'strength': 'primary'}] + - [104, 'unicode_hu_s2', 1, 'ICU', 'hu', {'strength': 'secondary'}] + - [105, 'unicode_hu_s3', 1, 'ICU', 'hu', {'strength': 'tertiary'}] + - [106, 'unicode_hy_s1', 1, 'ICU', 'hy', {'strength': 'primary'}] + - [107, 'unicode_hy_s2', 1, 'ICU', 'hy', {'strength': 'secondary'}] + - [108, 'unicode_hy_s3', 1, 'ICU', 'hy', {'strength': 'tertiary'}] + - [109, 'unicode_ig_s1', 1, 'ICU', 'ig', {'strength': 'primary'}] + - [110, 'unicode_ig_s2', 1, 'ICU', 'ig', {'strength': 'secondary'}] + - [111, 'unicode_ig_s3', 1, 'ICU', 'ig', {'strength': 'tertiary'}] + - [112, 'unicode_is_s1', 1, 'ICU', 'is', {'strength': 'primary'}] + - [113, 'unicode_is_s2', 1, 'ICU', 'is', {'strength': 'secondary'}] + - [114, 'unicode_is_s3', 1, 'ICU', 'is', {'strength': 'tertiary'}] + - [115, 'unicode_ja_s1', 1, 'ICU', 'ja', {'strength': 'primary'}] + - [116, 'unicode_ja_s2', 1, 'ICU', 'ja', {'strength': 'secondary'}] + - [117, 'unicode_ja_s3', 1, 'ICU', 'ja', {'strength': 'tertiary'}] + - [118, 'unicode_kk_s1', 1, 'ICU', 'kk', {'strength': 'primary'}] + - [119, 'unicode_kk_s2', 1, 'ICU', 'kk', {'strength': 'secondary'}] + - [120, 'unicode_kk_s3', 1, 'ICU', 'kk', {'strength': 'tertiary'}] + - [121, 'unicode_kl_s1', 1, 'ICU', 'kl', {'strength': 'primary'}] + - [122, 'unicode_kl_s2', 1, 'ICU', 'kl', {'strength': 'secondary'}] + - [123, 'unicode_kl_s3', 1, 'ICU', 'kl', {'strength': 'tertiary'}] + - [124, 'unicode_kn_s1', 1, 'ICU', 'kn', {'strength': 'primary'}] + - [125, 'unicode_kn_s2', 1, 'ICU', 'kn', {'strength': 'secondary'}] + - [126, 'unicode_kn_s3', 1, 'ICU', 'kn', {'strength': 'tertiary'}] + - [127, 'unicode_ko_s1', 1, 'ICU', 'ko', {'strength': 'primary'}] + - [128, 'unicode_ko_s2', 1, 'ICU', 'ko', {'strength': 'secondary'}] + - [129, 'unicode_ko_s3', 1, 'ICU', 'ko', {'strength': 'tertiary'}] + - [130, 'unicode_kok_s1', 1, 'ICU', 'kok', {'strength': 'primary'}] + - [131, 'unicode_kok_s2', 1, 'ICU', 'kok', {'strength': 'secondary'}] + - [132, 'unicode_kok_s3', 1, 'ICU', 'kok', {'strength': 'tertiary'}] + - [133, 'unicode_ky_s1', 1, 'ICU', 'ky', {'strength': 'primary'}] + - [134, 'unicode_ky_s2', 1, 'ICU', 'ky', {'strength': 'secondary'}] + - [135, 'unicode_ky_s3', 1, 'ICU', 'ky', {'strength': 'tertiary'}] + - [136, 'unicode_lkt_s1', 1, 'ICU', 'lkt', {'strength': 'primary'}] + - [137, 'unicode_lkt_s2', 1, 'ICU', 'lkt', {'strength': 'secondary'}] + - [138, 'unicode_lkt_s3', 1, 'ICU', 'lkt', {'strength': 'tertiary'}] + - [139, 'unicode_ln_s1', 1, 'ICU', 'ln', {'strength': 'primary'}] + - [140, 'unicode_ln_s2', 1, 'ICU', 'ln', {'strength': 'secondary'}] + - [141, 'unicode_ln_s3', 1, 'ICU', 'ln', {'strength': 'tertiary'}] + - [142, 'unicode_lt_s1', 1, 'ICU', 'lt', {'strength': 'primary'}] + - [143, 'unicode_lt_s2', 1, 'ICU', 'lt', {'strength': 'secondary'}] + - [144, 'unicode_lt_s3', 1, 'ICU', 'lt', {'strength': 'tertiary'}] + - [145, 'unicode_lv_s1', 1, 'ICU', 'lv', {'strength': 'primary'}] + - [146, 'unicode_lv_s2', 1, 'ICU', 'lv', {'strength': 'secondary'}] + - [147, 'unicode_lv_s3', 1, 'ICU', 'lv', {'strength': 'tertiary'}] + - [148, 'unicode_mk_s1', 1, 'ICU', 'mk', {'strength': 'primary'}] + - [149, 'unicode_mk_s2', 1, 'ICU', 'mk', {'strength': 'secondary'}] + - [150, 'unicode_mk_s3', 1, 'ICU', 'mk', {'strength': 'tertiary'}] + - [151, 'unicode_ml_s1', 1, 'ICU', 'ml', {'strength': 'primary'}] + - [152, 'unicode_ml_s2', 1, 'ICU', 'ml', {'strength': 'secondary'}] + - [153, 'unicode_ml_s3', 1, 'ICU', 'ml', {'strength': 'tertiary'}] + - [154, 'unicode_mr_s1', 1, 'ICU', 'mr', {'strength': 'primary'}] + - [155, 'unicode_mr_s2', 1, 'ICU', 'mr', {'strength': 'secondary'}] + - [156, 'unicode_mr_s3', 1, 'ICU', 'mr', {'strength': 'tertiary'}] + - [157, 'unicode_mt_s1', 1, 'ICU', 'mt', {'strength': 'primary'}] + - [158, 'unicode_mt_s2', 1, 'ICU', 'mt', {'strength': 'secondary'}] + - [159, 'unicode_mt_s3', 1, 'ICU', 'mt', {'strength': 'tertiary'}] + - [160, 'unicode_nb_s1', 1, 'ICU', 'nb', {'strength': 'primary'}] + - [161, 'unicode_nb_s2', 1, 'ICU', 'nb', {'strength': 'secondary'}] + - [162, 'unicode_nb_s3', 1, 'ICU', 'nb', {'strength': 'tertiary'}] + - [163, 'unicode_nn_s1', 1, 'ICU', 'nn', {'strength': 'primary'}] + - [164, 'unicode_nn_s2', 1, 'ICU', 'nn', {'strength': 'secondary'}] + - [165, 'unicode_nn_s3', 1, 'ICU', 'nn', {'strength': 'tertiary'}] + - [166, 'unicode_nso_s1', 1, 'ICU', 'nso', {'strength': 'primary'}] + - [167, 'unicode_nso_s2', 1, 'ICU', 'nso', {'strength': 'secondary'}] + - [168, 'unicode_nso_s3', 1, 'ICU', 'nso', {'strength': 'tertiary'}] + - [169, 'unicode_om_s1', 1, 'ICU', 'om', {'strength': 'primary'}] + - [170, 'unicode_om_s2', 1, 'ICU', 'om', {'strength': 'secondary'}] + - [171, 'unicode_om_s3', 1, 'ICU', 'om', {'strength': 'tertiary'}] + - [172, 'unicode_or_s1', 1, 'ICU', 'or', {'strength': 'primary'}] + - [173, 'unicode_or_s2', 1, 'ICU', 'or', {'strength': 'secondary'}] + - [174, 'unicode_or_s3', 1, 'ICU', 'or', {'strength': 'tertiary'}] + - [175, 'unicode_pa_s1', 1, 'ICU', 'pa', {'strength': 'primary'}] + - [176, 'unicode_pa_s2', 1, 'ICU', 'pa', {'strength': 'secondary'}] + - [177, 'unicode_pa_s3', 1, 'ICU', 'pa', {'strength': 'tertiary'}] + - [178, 'unicode_pl_s1', 1, 'ICU', 'pl', {'strength': 'primary'}] + - [179, 'unicode_pl_s2', 1, 'ICU', 'pl', {'strength': 'secondary'}] + - [180, 'unicode_pl_s3', 1, 'ICU', 'pl', {'strength': 'tertiary'}] + - [181, 'unicode_ro_s1', 1, 'ICU', 'ro', {'strength': 'primary'}] + - [182, 'unicode_ro_s2', 1, 'ICU', 'ro', {'strength': 'secondary'}] + - [183, 'unicode_ro_s3', 1, 'ICU', 'ro', {'strength': 'tertiary'}] + - [184, 'unicode_sa_s1', 1, 'ICU', 'sa', {'strength': 'primary'}] + - [185, 'unicode_sa_s2', 1, 'ICU', 'sa', {'strength': 'secondary'}] + - [186, 'unicode_sa_s3', 1, 'ICU', 'sa', {'strength': 'tertiary'}] + - [187, 'unicode_se_s1', 1, 'ICU', 'se', {'strength': 'primary'}] + - [188, 'unicode_se_s2', 1, 'ICU', 'se', {'strength': 'secondary'}] + - [189, 'unicode_se_s3', 1, 'ICU', 'se', {'strength': 'tertiary'}] + - [190, 'unicode_si_s1', 1, 'ICU', 'si', {'strength': 'primary'}] + - [191, 'unicode_si_s2', 1, 'ICU', 'si', {'strength': 'secondary'}] + - [192, 'unicode_si_s3', 1, 'ICU', 'si', {'strength': 'tertiary'}] + - [193, 'unicode_si__dictionary_s1', 1, 'ICU', 'si_u_co_dict', {'strength': 'primary'}] + - [194, 'unicode_si__dictionary_s2', 1, 'ICU', 'si_u_co_dict', {'strength': 'secondary'}] + - [195, 'unicode_si__dictionary_s3', 1, 'ICU', 'si_u_co_dict', {'strength': 'tertiary'}] + - [196, 'unicode_sk_s1', 1, 'ICU', 'sk', {'strength': 'primary'}] + - [197, 'unicode_sk_s2', 1, 'ICU', 'sk', {'strength': 'secondary'}] + - [198, 'unicode_sk_s3', 1, 'ICU', 'sk', {'strength': 'tertiary'}] + - [199, 'unicode_sl_s1', 1, 'ICU', 'sl', {'strength': 'primary'}] + - [200, 'unicode_sl_s2', 1, 'ICU', 'sl', {'strength': 'secondary'}] + - [201, 'unicode_sl_s3', 1, 'ICU', 'sl', {'strength': 'tertiary'}] + - [202, 'unicode_sq_s1', 1, 'ICU', 'sq', {'strength': 'primary'}] + - [203, 'unicode_sq_s2', 1, 'ICU', 'sq', {'strength': 'secondary'}] + - [204, 'unicode_sq_s3', 1, 'ICU', 'sq', {'strength': 'tertiary'}] + - [205, 'unicode_sr_s1', 1, 'ICU', 'sr', {'strength': 'primary'}] + - [206, 'unicode_sr_s2', 1, 'ICU', 'sr', {'strength': 'secondary'}] + - [207, 'unicode_sr_s3', 1, 'ICU', 'sr', {'strength': 'tertiary'}] + - [208, 'unicode_sr_Latn_s1', 1, 'ICU', 'sr_Latn', {'strength': 'primary'}] + - [209, 'unicode_sr_Latn_s2', 1, 'ICU', 'sr_Latn', {'strength': 'secondary'}] + - [210, 'unicode_sr_Latn_s3', 1, 'ICU', 'sr_Latn', {'strength': 'tertiary'}] + - [211, 'unicode_sv_s1', 1, 'ICU', 'sv', {'strength': 'primary'}] + - [212, 'unicode_sv_s2', 1, 'ICU', 'sv', {'strength': 'secondary'}] + - [213, 'unicode_sv_s3', 1, 'ICU', 'sv', {'strength': 'tertiary'}] + - [214, 'unicode_sv__reformed_s1', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'primary'}] + - [215, 'unicode_sv__reformed_s2', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'secondary'}] + - [216, 'unicode_sv__reformed_s3', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'tertiary'}] + - [217, 'unicode_ta_s1', 1, 'ICU', 'ta', {'strength': 'primary'}] + - [218, 'unicode_ta_s2', 1, 'ICU', 'ta', {'strength': 'secondary'}] + - [219, 'unicode_ta_s3', 1, 'ICU', 'ta', {'strength': 'tertiary'}] + - [220, 'unicode_te_s1', 1, 'ICU', 'te', {'strength': 'primary'}] + - [221, 'unicode_te_s2', 1, 'ICU', 'te', {'strength': 'secondary'}] + - [222, 'unicode_te_s3', 1, 'ICU', 'te', {'strength': 'tertiary'}] + - [223, 'unicode_th_s1', 1, 'ICU', 'th', {'strength': 'primary'}] + - [224, 'unicode_th_s2', 1, 'ICU', 'th', {'strength': 'secondary'}] + - [225, 'unicode_th_s3', 1, 'ICU', 'th', {'strength': 'tertiary'}] + - [226, 'unicode_tn_s1', 1, 'ICU', 'tn', {'strength': 'primary'}] + - [227, 'unicode_tn_s2', 1, 'ICU', 'tn', {'strength': 'secondary'}] + - [228, 'unicode_tn_s3', 1, 'ICU', 'tn', {'strength': 'tertiary'}] + - [229, 'unicode_to_s1', 1, 'ICU', 'to', {'strength': 'primary'}] + - [230, 'unicode_to_s2', 1, 'ICU', 'to', {'strength': 'secondary'}] + - [231, 'unicode_to_s3', 1, 'ICU', 'to', {'strength': 'tertiary'}] + - [232, 'unicode_tr_s1', 1, 'ICU', 'tr', {'strength': 'primary'}] + - [233, 'unicode_tr_s2', 1, 'ICU', 'tr', {'strength': 'secondary'}] + - [234, 'unicode_tr_s3', 1, 'ICU', 'tr', {'strength': 'tertiary'}] + - [235, 'unicode_ug_Cyrl_s1', 1, 'ICU', 'ug', {'strength': 'primary'}] + - [236, 'unicode_ug_Cyrl_s2', 1, 'ICU', 'ug', {'strength': 'secondary'}] + - [237, 'unicode_ug_Cyrl_s3', 1, 'ICU', 'ug', {'strength': 'tertiary'}] + - [238, 'unicode_uk_s1', 1, 'ICU', 'uk', {'strength': 'primary'}] + - [239, 'unicode_uk_s2', 1, 'ICU', 'uk', {'strength': 'secondary'}] + - [240, 'unicode_uk_s3', 1, 'ICU', 'uk', {'strength': 'tertiary'}] + - [241, 'unicode_ur_s1', 1, 'ICU', 'ur', {'strength': 'primary'}] + - [242, 'unicode_ur_s2', 1, 'ICU', 'ur', {'strength': 'secondary'}] + - [243, 'unicode_ur_s3', 1, 'ICU', 'ur', {'strength': 'tertiary'}] + - [244, 'unicode_vi_s1', 1, 'ICU', 'vi', {'strength': 'primary'}] + - [245, 'unicode_vi_s2', 1, 'ICU', 'vi', {'strength': 'secondary'}] + - [246, 'unicode_vi_s3', 1, 'ICU', 'vi', {'strength': 'tertiary'}] + - [247, 'unicode_vo_s1', 1, 'ICU', 'vo', {'strength': 'primary'}] + - [248, 'unicode_vo_s2', 1, 'ICU', 'vo', {'strength': 'secondary'}] + - [249, 'unicode_vo_s3', 1, 'ICU', 'vo', {'strength': 'tertiary'}] + - [250, 'unicode_wae_s1', 1, 'ICU', 'wae', {'strength': 'primary'}] + - [251, 'unicode_wae_s2', 1, 'ICU', 'wae', {'strength': 'secondary'}] + - [252, 'unicode_wae_s3', 1, 'ICU', 'wae', {'strength': 'tertiary'}] + - [253, 'unicode_wo_s1', 1, 'ICU', 'wo', {'strength': 'primary'}] + - [254, 'unicode_wo_s2', 1, 'ICU', 'wo', {'strength': 'secondary'}] + - [255, 'unicode_wo_s3', 1, 'ICU', 'wo', {'strength': 'tertiary'}] + - [256, 'unicode_yo_s1', 1, 'ICU', 'yo', {'strength': 'primary'}] + - [257, 'unicode_yo_s2', 1, 'ICU', 'yo', {'strength': 'secondary'}] + - [258, 'unicode_yo_s3', 1, 'ICU', 'yo', {'strength': 'tertiary'}] + - [259, 'unicode_zh_s1', 1, 'ICU', 'zh', {'strength': 'primary'}] + - [260, 'unicode_zh_s2', 1, 'ICU', 'zh', {'strength': 'secondary'}] + - [261, 'unicode_zh_s3', 1, 'ICU', 'zh', {'strength': 'tertiary'}] + - [262, 'unicode_zh__big5han_s1', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'primary'}] + - [263, 'unicode_zh__big5han_s2', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'secondary'}] + - [264, 'unicode_zh__big5han_s3', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'tertiary'}] + - [265, 'unicode_zh__gb2312han_s1', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'primary'}] + - [266, 'unicode_zh__gb2312han_s2', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'secondary'}] + - [267, 'unicode_zh__gb2312han_s3', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'tertiary'}] + - [268, 'unicode_zh__pinyin_s1', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'primary'}] + - [269, 'unicode_zh__pinyin_s2', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'secondary'}] + - [270, 'unicode_zh__pinyin_s3', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'tertiary'}] + - [271, 'unicode_zh__stroke_s1', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'primary'}] + - [272, 'unicode_zh__stroke_s2', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'secondary'}] + - [273, 'unicode_zh__stroke_s3', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'tertiary'}] + - [274, 'unicode_zh__zhuyin_s1', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'primary'}] + - [275, 'unicode_zh__zhuyin_s2', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'secondary'}] + - [276, 'unicode_zh__zhuyin_s3', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'tertiary'}] + - [277, 'test', 0, 'ICU', 'ru_RU', {}] ... test_run:cmd('restart server default') box.space._collation:select{} @@ -492,12 +764,284 @@ box.space._collation:select{} - [1, 'unicode', 1, 'ICU', '', {}] - [2, 'unicode_ci', 1, 'ICU', '', {'strength': 'primary'}] - [3, 'binary', 1, 'BINARY', '', {}] - - [4, 'unicode_ru_s2', 1, 'ICU', 'ru_RU', {'strength': 'secondary'}] - - [5, 'test', 0, 'ICU', 'ru_RU', {}] + - [4, 'unicode_af_s1', 1, 'ICU', 'af', {'strength': 'primary'}] + - [5, 'unicode_af_s2', 1, 'ICU', 'af', {'strength': 'secondary'}] + - [6, 'unicode_af_s3', 1, 'ICU', 'af', {'strength': 'tertiary'}] + - [7, 'unicode_am_s1', 1, 'ICU', 'am', {'strength': 'primary'}] + - [8, 'unicode_am_s2', 1, 'ICU', 'am', {'strength': 'secondary'}] + - [9, 'unicode_am_s3', 1, 'ICU', 'am', {'strength': 'tertiary'}] + - [10, 'unicode_ar_s1', 1, 'ICU', 'ar', {'strength': 'primary'}] + - [11, 'unicode_ar_s2', 1, 'ICU', 'ar', {'strength': 'secondary'}] + - [12, 'unicode_ar_s3', 1, 'ICU', 'ar', {'strength': 'tertiary'}] + - [13, 'unicode_as_s1', 1, 'ICU', 'as', {'strength': 'primary'}] + - [14, 'unicode_as_s2', 1, 'ICU', 'as', {'strength': 'secondary'}] + - [15, 'unicode_as_s3', 1, 'ICU', 'as', {'strength': 'tertiary'}] + - [16, 'unicode_az_s1', 1, 'ICU', 'az', {'strength': 'primary'}] + - [17, 'unicode_az_s2', 1, 'ICU', 'az', {'strength': 'secondary'}] + - [18, 'unicode_az_s3', 1, 'ICU', 'az', {'strength': 'tertiary'}] + - [19, 'unicode_be_s1', 1, 'ICU', 'be', {'strength': 'primary'}] + - [20, 'unicode_be_s2', 1, 'ICU', 'be', {'strength': 'secondary'}] + - [21, 'unicode_be_s3', 1, 'ICU', 'be', {'strength': 'tertiary'}] + - [22, 'unicode_bn_s1', 1, 'ICU', 'bn', {'strength': 'primary'}] + - [23, 'unicode_bn_s2', 1, 'ICU', 'bn', {'strength': 'secondary'}] + - [24, 'unicode_bn_s3', 1, 'ICU', 'bn', {'strength': 'tertiary'}] + - [25, 'unicode_bs_s1', 1, 'ICU', 'bs', {'strength': 'primary'}] + - [26, 'unicode_bs_s2', 1, 'ICU', 'bs', {'strength': 'secondary'}] + - [27, 'unicode_bs_s3', 1, 'ICU', 'bs', {'strength': 'tertiary'}] + - [28, 'unicode_bs_Cyrl_s1', 1, 'ICU', 'bs_Cyrl', {'strength': 'primary'}] + - [29, 'unicode_bs_Cyrl_s2', 1, 'ICU', 'bs_Cyrl', {'strength': 'secondary'}] + - [30, 'unicode_bs_Cyrl_s3', 1, 'ICU', 'bs_Cyrl', {'strength': 'tertiary'}] + - [31, 'unicode_ca_s1', 1, 'ICU', 'ca', {'strength': 'primary'}] + - [32, 'unicode_ca_s2', 1, 'ICU', 'ca', {'strength': 'secondary'}] + - [33, 'unicode_ca_s3', 1, 'ICU', 'ca', {'strength': 'tertiary'}] + - [34, 'unicode_cs_s1', 1, 'ICU', 'cs', {'strength': 'primary'}] + - [35, 'unicode_cs_s2', 1, 'ICU', 'cs', {'strength': 'secondary'}] + - [36, 'unicode_cs_s3', 1, 'ICU', 'cs', {'strength': 'tertiary'}] + - [37, 'unicode_cy_s1', 1, 'ICU', 'cy', {'strength': 'primary'}] + - [38, 'unicode_cy_s2', 1, 'ICU', 'cy', {'strength': 'secondary'}] + - [39, 'unicode_cy_s3', 1, 'ICU', 'cy', {'strength': 'tertiary'}] + - [40, 'unicode_da_s1', 1, 'ICU', 'da', {'strength': 'primary'}] + - [41, 'unicode_da_s2', 1, 'ICU', 'da', {'strength': 'secondary'}] + - [42, 'unicode_da_s3', 1, 'ICU', 'da', {'strength': 'tertiary'}] + - [43, 'unicode_de__phonebook_s1', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'primary'}] + - [44, 'unicode_de__phonebook_s2', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'secondary'}] + - [45, 'unicode_de__phonebook_s3', 1, 'ICU', 'de_DE_u_co_phonebk', {'strength': 'tertiary'}] + - [46, 'unicode_de_AT_phonebook_s1', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'primary'}] + - [47, 'unicode_de_AT_phonebook_s2', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'secondary'}] + - [48, 'unicode_de_AT_phonebook_s3', 1, 'ICU', 'de_AT_u_co_phonebk', {'strength': 'tertiary'}] + - [49, 'unicode_dsb_s1', 1, 'ICU', 'dsb', {'strength': 'primary'}] + - [50, 'unicode_dsb_s2', 1, 'ICU', 'dsb', {'strength': 'secondary'}] + - [51, 'unicode_dsb_s3', 1, 'ICU', 'dsb', {'strength': 'tertiary'}] + - [52, 'unicode_ee_s1', 1, 'ICU', 'ee', {'strength': 'primary'}] + - [53, 'unicode_ee_s2', 1, 'ICU', 'ee', {'strength': 'secondary'}] + - [54, 'unicode_ee_s3', 1, 'ICU', 'ee', {'strength': 'tertiary'}] + - [55, 'unicode_eo_s1', 1, 'ICU', 'eo', {'strength': 'primary'}] + - [56, 'unicode_eo_s2', 1, 'ICU', 'eo', {'strength': 'secondary'}] + - [57, 'unicode_eo_s3', 1, 'ICU', 'eo', {'strength': 'tertiary'}] + - [58, 'unicode_es_s1', 1, 'ICU', 'es', {'strength': 'primary'}] + - [59, 'unicode_es_s2', 1, 'ICU', 'es', {'strength': 'secondary'}] + - [60, 'unicode_es_s3', 1, 'ICU', 'es', {'strength': 'tertiary'}] + - [61, 'unicode_es__traditional_s1', 1, 'ICU', 'es_u_co_trad', {'strength': 'primary'}] + - [62, 'unicode_es__traditional_s2', 1, 'ICU', 'es_u_co_trad', {'strength': 'secondary'}] + - [63, 'unicode_es__traditional_s3', 1, 'ICU', 'es_u_co_trad', {'strength': 'tertiary'}] + - [64, 'unicode_et_s1', 1, 'ICU', 'et', {'strength': 'primary'}] + - [65, 'unicode_et_s2', 1, 'ICU', 'et', {'strength': 'secondary'}] + - [66, 'unicode_et_s3', 1, 'ICU', 'et', {'strength': 'tertiary'}] + - [67, 'unicode_fa_s1', 1, 'ICU', 'fa', {'strength': 'primary'}] + - [68, 'unicode_fa_s2', 1, 'ICU', 'fa', {'strength': 'secondary'}] + - [69, 'unicode_fa_s3', 1, 'ICU', 'fa', {'strength': 'tertiary'}] + - [70, 'unicode_fi_s1', 1, 'ICU', 'fi', {'strength': 'primary'}] + - [71, 'unicode_fi_s2', 1, 'ICU', 'fi', {'strength': 'secondary'}] + - [72, 'unicode_fi_s3', 1, 'ICU', 'fi', {'strength': 'tertiary'}] + - [73, 'unicode_fi__phonebook_s1', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'primary'}] + - [74, 'unicode_fi__phonebook_s2', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'secondary'}] + - [75, 'unicode_fi__phonebook_s3', 1, 'ICU', 'fi_u_co_phonebk', {'strength': 'tertiary'}] + - [76, 'unicode_fil_s1', 1, 'ICU', 'fil', {'strength': 'primary'}] + - [77, 'unicode_fil_s2', 1, 'ICU', 'fil', {'strength': 'secondary'}] + - [78, 'unicode_fil_s3', 1, 'ICU', 'fil', {'strength': 'tertiary'}] + - [79, 'unicode_fo_s1', 1, 'ICU', 'fo', {'strength': 'primary'}] + - [80, 'unicode_fo_s2', 1, 'ICU', 'fo', {'strength': 'secondary'}] + - [81, 'unicode_fo_s3', 1, 'ICU', 'fo', {'strength': 'tertiary'}] + - [82, 'unicode_fr_CA_s1', 1, 'ICU', 'fr_CA', {'strength': 'primary'}] + - [83, 'unicode_fr_CA_s2', 1, 'ICU', 'fr_CA', {'strength': 'secondary'}] + - [84, 'unicode_fr_CA_s3', 1, 'ICU', 'fr_CA', {'strength': 'tertiary'}] + - [85, 'unicode_gu_s1', 1, 'ICU', 'gu', {'strength': 'primary'}] + - [86, 'unicode_gu_s2', 1, 'ICU', 'gu', {'strength': 'secondary'}] + - [87, 'unicode_gu_s3', 1, 'ICU', 'gu', {'strength': 'tertiary'}] + - [88, 'unicode_ha_s1', 1, 'ICU', 'ha', {'strength': 'primary'}] + - [89, 'unicode_ha_s2', 1, 'ICU', 'ha', {'strength': 'secondary'}] + - [90, 'unicode_ha_s3', 1, 'ICU', 'ha', {'strength': 'tertiary'}] + - [91, 'unicode_haw_s1', 1, 'ICU', 'haw', {'strength': 'primary'}] + - [92, 'unicode_haw_s2', 1, 'ICU', 'haw', {'strength': 'secondary'}] + - [93, 'unicode_haw_s3', 1, 'ICU', 'haw', {'strength': 'tertiary'}] + - [94, 'unicode_he_s1', 1, 'ICU', 'he', {'strength': 'primary'}] + - [95, 'unicode_he_s2', 1, 'ICU', 'he', {'strength': 'secondary'}] + - [96, 'unicode_he_s3', 1, 'ICU', 'he', {'strength': 'tertiary'}] + - [97, 'unicode_hi_s1', 1, 'ICU', 'hi', {'strength': 'primary'}] + - [98, 'unicode_hi_s2', 1, 'ICU', 'hi', {'strength': 'secondary'}] + - [99, 'unicode_hi_s3', 1, 'ICU', 'hi', {'strength': 'tertiary'}] + - [100, 'unicode_hr_s1', 1, 'ICU', 'hr', {'strength': 'primary'}] + - [101, 'unicode_hr_s2', 1, 'ICU', 'hr', {'strength': 'secondary'}] + - [102, 'unicode_hr_s3', 1, 'ICU', 'hr', {'strength': 'tertiary'}] + - [103, 'unicode_hu_s1', 1, 'ICU', 'hu', {'strength': 'primary'}] + - [104, 'unicode_hu_s2', 1, 'ICU', 'hu', {'strength': 'secondary'}] + - [105, 'unicode_hu_s3', 1, 'ICU', 'hu', {'strength': 'tertiary'}] + - [106, 'unicode_hy_s1', 1, 'ICU', 'hy', {'strength': 'primary'}] + - [107, 'unicode_hy_s2', 1, 'ICU', 'hy', {'strength': 'secondary'}] + - [108, 'unicode_hy_s3', 1, 'ICU', 'hy', {'strength': 'tertiary'}] + - [109, 'unicode_ig_s1', 1, 'ICU', 'ig', {'strength': 'primary'}] + - [110, 'unicode_ig_s2', 1, 'ICU', 'ig', {'strength': 'secondary'}] + - [111, 'unicode_ig_s3', 1, 'ICU', 'ig', {'strength': 'tertiary'}] + - [112, 'unicode_is_s1', 1, 'ICU', 'is', {'strength': 'primary'}] + - [113, 'unicode_is_s2', 1, 'ICU', 'is', {'strength': 'secondary'}] + - [114, 'unicode_is_s3', 1, 'ICU', 'is', {'strength': 'tertiary'}] + - [115, 'unicode_ja_s1', 1, 'ICU', 'ja', {'strength': 'primary'}] + - [116, 'unicode_ja_s2', 1, 'ICU', 'ja', {'strength': 'secondary'}] + - [117, 'unicode_ja_s3', 1, 'ICU', 'ja', {'strength': 'tertiary'}] + - [118, 'unicode_kk_s1', 1, 'ICU', 'kk', {'strength': 'primary'}] + - [119, 'unicode_kk_s2', 1, 'ICU', 'kk', {'strength': 'secondary'}] + - [120, 'unicode_kk_s3', 1, 'ICU', 'kk', {'strength': 'tertiary'}] + - [121, 'unicode_kl_s1', 1, 'ICU', 'kl', {'strength': 'primary'}] + - [122, 'unicode_kl_s2', 1, 'ICU', 'kl', {'strength': 'secondary'}] + - [123, 'unicode_kl_s3', 1, 'ICU', 'kl', {'strength': 'tertiary'}] + - [124, 'unicode_kn_s1', 1, 'ICU', 'kn', {'strength': 'primary'}] + - [125, 'unicode_kn_s2', 1, 'ICU', 'kn', {'strength': 'secondary'}] + - [126, 'unicode_kn_s3', 1, 'ICU', 'kn', {'strength': 'tertiary'}] + - [127, 'unicode_ko_s1', 1, 'ICU', 'ko', {'strength': 'primary'}] + - [128, 'unicode_ko_s2', 1, 'ICU', 'ko', {'strength': 'secondary'}] + - [129, 'unicode_ko_s3', 1, 'ICU', 'ko', {'strength': 'tertiary'}] + - [130, 'unicode_kok_s1', 1, 'ICU', 'kok', {'strength': 'primary'}] + - [131, 'unicode_kok_s2', 1, 'ICU', 'kok', {'strength': 'secondary'}] + - [132, 'unicode_kok_s3', 1, 'ICU', 'kok', {'strength': 'tertiary'}] + - [133, 'unicode_ky_s1', 1, 'ICU', 'ky', {'strength': 'primary'}] + - [134, 'unicode_ky_s2', 1, 'ICU', 'ky', {'strength': 'secondary'}] + - [135, 'unicode_ky_s3', 1, 'ICU', 'ky', {'strength': 'tertiary'}] + - [136, 'unicode_lkt_s1', 1, 'ICU', 'lkt', {'strength': 'primary'}] + - [137, 'unicode_lkt_s2', 1, 'ICU', 'lkt', {'strength': 'secondary'}] + - [138, 'unicode_lkt_s3', 1, 'ICU', 'lkt', {'strength': 'tertiary'}] + - [139, 'unicode_ln_s1', 1, 'ICU', 'ln', {'strength': 'primary'}] + - [140, 'unicode_ln_s2', 1, 'ICU', 'ln', {'strength': 'secondary'}] + - [141, 'unicode_ln_s3', 1, 'ICU', 'ln', {'strength': 'tertiary'}] + - [142, 'unicode_lt_s1', 1, 'ICU', 'lt', {'strength': 'primary'}] + - [143, 'unicode_lt_s2', 1, 'ICU', 'lt', {'strength': 'secondary'}] + - [144, 'unicode_lt_s3', 1, 'ICU', 'lt', {'strength': 'tertiary'}] + - [145, 'unicode_lv_s1', 1, 'ICU', 'lv', {'strength': 'primary'}] + - [146, 'unicode_lv_s2', 1, 'ICU', 'lv', {'strength': 'secondary'}] + - [147, 'unicode_lv_s3', 1, 'ICU', 'lv', {'strength': 'tertiary'}] + - [148, 'unicode_mk_s1', 1, 'ICU', 'mk', {'strength': 'primary'}] + - [149, 'unicode_mk_s2', 1, 'ICU', 'mk', {'strength': 'secondary'}] + - [150, 'unicode_mk_s3', 1, 'ICU', 'mk', {'strength': 'tertiary'}] + - [151, 'unicode_ml_s1', 1, 'ICU', 'ml', {'strength': 'primary'}] + - [152, 'unicode_ml_s2', 1, 'ICU', 'ml', {'strength': 'secondary'}] + - [153, 'unicode_ml_s3', 1, 'ICU', 'ml', {'strength': 'tertiary'}] + - [154, 'unicode_mr_s1', 1, 'ICU', 'mr', {'strength': 'primary'}] + - [155, 'unicode_mr_s2', 1, 'ICU', 'mr', {'strength': 'secondary'}] + - [156, 'unicode_mr_s3', 1, 'ICU', 'mr', {'strength': 'tertiary'}] + - [157, 'unicode_mt_s1', 1, 'ICU', 'mt', {'strength': 'primary'}] + - [158, 'unicode_mt_s2', 1, 'ICU', 'mt', {'strength': 'secondary'}] + - [159, 'unicode_mt_s3', 1, 'ICU', 'mt', {'strength': 'tertiary'}] + - [160, 'unicode_nb_s1', 1, 'ICU', 'nb', {'strength': 'primary'}] + - [161, 'unicode_nb_s2', 1, 'ICU', 'nb', {'strength': 'secondary'}] + - [162, 'unicode_nb_s3', 1, 'ICU', 'nb', {'strength': 'tertiary'}] + - [163, 'unicode_nn_s1', 1, 'ICU', 'nn', {'strength': 'primary'}] + - [164, 'unicode_nn_s2', 1, 'ICU', 'nn', {'strength': 'secondary'}] + - [165, 'unicode_nn_s3', 1, 'ICU', 'nn', {'strength': 'tertiary'}] + - [166, 'unicode_nso_s1', 1, 'ICU', 'nso', {'strength': 'primary'}] + - [167, 'unicode_nso_s2', 1, 'ICU', 'nso', {'strength': 'secondary'}] + - [168, 'unicode_nso_s3', 1, 'ICU', 'nso', {'strength': 'tertiary'}] + - [169, 'unicode_om_s1', 1, 'ICU', 'om', {'strength': 'primary'}] + - [170, 'unicode_om_s2', 1, 'ICU', 'om', {'strength': 'secondary'}] + - [171, 'unicode_om_s3', 1, 'ICU', 'om', {'strength': 'tertiary'}] + - [172, 'unicode_or_s1', 1, 'ICU', 'or', {'strength': 'primary'}] + - [173, 'unicode_or_s2', 1, 'ICU', 'or', {'strength': 'secondary'}] + - [174, 'unicode_or_s3', 1, 'ICU', 'or', {'strength': 'tertiary'}] + - [175, 'unicode_pa_s1', 1, 'ICU', 'pa', {'strength': 'primary'}] + - [176, 'unicode_pa_s2', 1, 'ICU', 'pa', {'strength': 'secondary'}] + - [177, 'unicode_pa_s3', 1, 'ICU', 'pa', {'strength': 'tertiary'}] + - [178, 'unicode_pl_s1', 1, 'ICU', 'pl', {'strength': 'primary'}] + - [179, 'unicode_pl_s2', 1, 'ICU', 'pl', {'strength': 'secondary'}] + - [180, 'unicode_pl_s3', 1, 'ICU', 'pl', {'strength': 'tertiary'}] + - [181, 'unicode_ro_s1', 1, 'ICU', 'ro', {'strength': 'primary'}] + - [182, 'unicode_ro_s2', 1, 'ICU', 'ro', {'strength': 'secondary'}] + - [183, 'unicode_ro_s3', 1, 'ICU', 'ro', {'strength': 'tertiary'}] + - [184, 'unicode_sa_s1', 1, 'ICU', 'sa', {'strength': 'primary'}] + - [185, 'unicode_sa_s2', 1, 'ICU', 'sa', {'strength': 'secondary'}] + - [186, 'unicode_sa_s3', 1, 'ICU', 'sa', {'strength': 'tertiary'}] + - [187, 'unicode_se_s1', 1, 'ICU', 'se', {'strength': 'primary'}] + - [188, 'unicode_se_s2', 1, 'ICU', 'se', {'strength': 'secondary'}] + - [189, 'unicode_se_s3', 1, 'ICU', 'se', {'strength': 'tertiary'}] + - [190, 'unicode_si_s1', 1, 'ICU', 'si', {'strength': 'primary'}] + - [191, 'unicode_si_s2', 1, 'ICU', 'si', {'strength': 'secondary'}] + - [192, 'unicode_si_s3', 1, 'ICU', 'si', {'strength': 'tertiary'}] + - [193, 'unicode_si__dictionary_s1', 1, 'ICU', 'si_u_co_dict', {'strength': 'primary'}] + - [194, 'unicode_si__dictionary_s2', 1, 'ICU', 'si_u_co_dict', {'strength': 'secondary'}] + - [195, 'unicode_si__dictionary_s3', 1, 'ICU', 'si_u_co_dict', {'strength': 'tertiary'}] + - [196, 'unicode_sk_s1', 1, 'ICU', 'sk', {'strength': 'primary'}] + - [197, 'unicode_sk_s2', 1, 'ICU', 'sk', {'strength': 'secondary'}] + - [198, 'unicode_sk_s3', 1, 'ICU', 'sk', {'strength': 'tertiary'}] + - [199, 'unicode_sl_s1', 1, 'ICU', 'sl', {'strength': 'primary'}] + - [200, 'unicode_sl_s2', 1, 'ICU', 'sl', {'strength': 'secondary'}] + - [201, 'unicode_sl_s3', 1, 'ICU', 'sl', {'strength': 'tertiary'}] + - [202, 'unicode_sq_s1', 1, 'ICU', 'sq', {'strength': 'primary'}] + - [203, 'unicode_sq_s2', 1, 'ICU', 'sq', {'strength': 'secondary'}] + - [204, 'unicode_sq_s3', 1, 'ICU', 'sq', {'strength': 'tertiary'}] + - [205, 'unicode_sr_s1', 1, 'ICU', 'sr', {'strength': 'primary'}] + - [206, 'unicode_sr_s2', 1, 'ICU', 'sr', {'strength': 'secondary'}] + - [207, 'unicode_sr_s3', 1, 'ICU', 'sr', {'strength': 'tertiary'}] + - [208, 'unicode_sr_Latn_s1', 1, 'ICU', 'sr_Latn', {'strength': 'primary'}] + - [209, 'unicode_sr_Latn_s2', 1, 'ICU', 'sr_Latn', {'strength': 'secondary'}] + - [210, 'unicode_sr_Latn_s3', 1, 'ICU', 'sr_Latn', {'strength': 'tertiary'}] + - [211, 'unicode_sv_s1', 1, 'ICU', 'sv', {'strength': 'primary'}] + - [212, 'unicode_sv_s2', 1, 'ICU', 'sv', {'strength': 'secondary'}] + - [213, 'unicode_sv_s3', 1, 'ICU', 'sv', {'strength': 'tertiary'}] + - [214, 'unicode_sv__reformed_s1', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'primary'}] + - [215, 'unicode_sv__reformed_s2', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'secondary'}] + - [216, 'unicode_sv__reformed_s3', 1, 'ICU', 'sv_u_co_reformed', {'strength': 'tertiary'}] + - [217, 'unicode_ta_s1', 1, 'ICU', 'ta', {'strength': 'primary'}] + - [218, 'unicode_ta_s2', 1, 'ICU', 'ta', {'strength': 'secondary'}] + - [219, 'unicode_ta_s3', 1, 'ICU', 'ta', {'strength': 'tertiary'}] + - [220, 'unicode_te_s1', 1, 'ICU', 'te', {'strength': 'primary'}] + - [221, 'unicode_te_s2', 1, 'ICU', 'te', {'strength': 'secondary'}] + - [222, 'unicode_te_s3', 1, 'ICU', 'te', {'strength': 'tertiary'}] + - [223, 'unicode_th_s1', 1, 'ICU', 'th', {'strength': 'primary'}] + - [224, 'unicode_th_s2', 1, 'ICU', 'th', {'strength': 'secondary'}] + - [225, 'unicode_th_s3', 1, 'ICU', 'th', {'strength': 'tertiary'}] + - [226, 'unicode_tn_s1', 1, 'ICU', 'tn', {'strength': 'primary'}] + - [227, 'unicode_tn_s2', 1, 'ICU', 'tn', {'strength': 'secondary'}] + - [228, 'unicode_tn_s3', 1, 'ICU', 'tn', {'strength': 'tertiary'}] + - [229, 'unicode_to_s1', 1, 'ICU', 'to', {'strength': 'primary'}] + - [230, 'unicode_to_s2', 1, 'ICU', 'to', {'strength': 'secondary'}] + - [231, 'unicode_to_s3', 1, 'ICU', 'to', {'strength': 'tertiary'}] + - [232, 'unicode_tr_s1', 1, 'ICU', 'tr', {'strength': 'primary'}] + - [233, 'unicode_tr_s2', 1, 'ICU', 'tr', {'strength': 'secondary'}] + - [234, 'unicode_tr_s3', 1, 'ICU', 'tr', {'strength': 'tertiary'}] + - [235, 'unicode_ug_Cyrl_s1', 1, 'ICU', 'ug', {'strength': 'primary'}] + - [236, 'unicode_ug_Cyrl_s2', 1, 'ICU', 'ug', {'strength': 'secondary'}] + - [237, 'unicode_ug_Cyrl_s3', 1, 'ICU', 'ug', {'strength': 'tertiary'}] + - [238, 'unicode_uk_s1', 1, 'ICU', 'uk', {'strength': 'primary'}] + - [239, 'unicode_uk_s2', 1, 'ICU', 'uk', {'strength': 'secondary'}] + - [240, 'unicode_uk_s3', 1, 'ICU', 'uk', {'strength': 'tertiary'}] + - [241, 'unicode_ur_s1', 1, 'ICU', 'ur', {'strength': 'primary'}] + - [242, 'unicode_ur_s2', 1, 'ICU', 'ur', {'strength': 'secondary'}] + - [243, 'unicode_ur_s3', 1, 'ICU', 'ur', {'strength': 'tertiary'}] + - [244, 'unicode_vi_s1', 1, 'ICU', 'vi', {'strength': 'primary'}] + - [245, 'unicode_vi_s2', 1, 'ICU', 'vi', {'strength': 'secondary'}] + - [246, 'unicode_vi_s3', 1, 'ICU', 'vi', {'strength': 'tertiary'}] + - [247, 'unicode_vo_s1', 1, 'ICU', 'vo', {'strength': 'primary'}] + - [248, 'unicode_vo_s2', 1, 'ICU', 'vo', {'strength': 'secondary'}] + - [249, 'unicode_vo_s3', 1, 'ICU', 'vo', {'strength': 'tertiary'}] + - [250, 'unicode_wae_s1', 1, 'ICU', 'wae', {'strength': 'primary'}] + - [251, 'unicode_wae_s2', 1, 'ICU', 'wae', {'strength': 'secondary'}] + - [252, 'unicode_wae_s3', 1, 'ICU', 'wae', {'strength': 'tertiary'}] + - [253, 'unicode_wo_s1', 1, 'ICU', 'wo', {'strength': 'primary'}] + - [254, 'unicode_wo_s2', 1, 'ICU', 'wo', {'strength': 'secondary'}] + - [255, 'unicode_wo_s3', 1, 'ICU', 'wo', {'strength': 'tertiary'}] + - [256, 'unicode_yo_s1', 1, 'ICU', 'yo', {'strength': 'primary'}] + - [257, 'unicode_yo_s2', 1, 'ICU', 'yo', {'strength': 'secondary'}] + - [258, 'unicode_yo_s3', 1, 'ICU', 'yo', {'strength': 'tertiary'}] + - [259, 'unicode_zh_s1', 1, 'ICU', 'zh', {'strength': 'primary'}] + - [260, 'unicode_zh_s2', 1, 'ICU', 'zh', {'strength': 'secondary'}] + - [261, 'unicode_zh_s3', 1, 'ICU', 'zh', {'strength': 'tertiary'}] + - [262, 'unicode_zh__big5han_s1', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'primary'}] + - [263, 'unicode_zh__big5han_s2', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'secondary'}] + - [264, 'unicode_zh__big5han_s3', 1, 'ICU', 'zh_u_co_big5han', {'strength': 'tertiary'}] + - [265, 'unicode_zh__gb2312han_s1', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'primary'}] + - [266, 'unicode_zh__gb2312han_s2', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'secondary'}] + - [267, 'unicode_zh__gb2312han_s3', 1, 'ICU', 'zh_u_co_gb2312', {'strength': 'tertiary'}] + - [268, 'unicode_zh__pinyin_s1', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'primary'}] + - [269, 'unicode_zh__pinyin_s2', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'secondary'}] + - [270, 'unicode_zh__pinyin_s3', 1, 'ICU', 'zh_u_co_pinyin', {'strength': 'tertiary'}] + - [271, 'unicode_zh__stroke_s1', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'primary'}] + - [272, 'unicode_zh__stroke_s2', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'secondary'}] + - [273, 'unicode_zh__stroke_s3', 1, 'ICU', 'zh_u_co_stroke', {'strength': 'tertiary'}] + - [274, 'unicode_zh__zhuyin_s1', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'primary'}] + - [275, 'unicode_zh__zhuyin_s2', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'secondary'}] + - [276, 'unicode_zh__zhuyin_s3', 1, 'ICU', 'zh_u_co_zhuyin', {'strength': 'tertiary'}] + - [277, 'test', 0, 'ICU', 'ru_RU', {}] ... box.space._collation.index.name:delete{'test'} --- -- [5, 'test', 0, 'ICU', 'ru_RU', {}] +- [277, 'test', 0, 'ICU', 'ru_RU', {}] ... -- -- gh-3290: expose ICU into Lua. It uses built-in collations, that diff --git a/test/box/net.box.result b/test/box/net.box.result index 67bb29a39..7959a3035 100644 --- a/test/box/net.box.result +++ b/test/box/net.box.result @@ -2666,7 +2666,7 @@ c.space.test.index.sk.parts --- - - type: string is_nullable: false - collation_id: 5 + collation_id: 277 fieldno: 1 ... c:close() diff --git a/test/sql-tap/collation.test.lua b/test/sql-tap/collation.test.lua index cec980423..158036f33 100755 --- a/test/sql-tap/collation.test.lua +++ b/test/sql-tap/collation.test.lua @@ -21,10 +21,282 @@ test:do_execsql_test( 1,"unicode", 2,"unicode_ci", 3,"binary", - 4,"unicode_ru_s2", - 5,"unicode_numeric", - 6,"unicode_numeric_s2", - 7,"unicode_tur_s2" + 4,"unicode_af_s1", + 5,"unicode_af_s2", + 6,"unicode_af_s3", + 7,"unicode_am_s1", + 8,"unicode_am_s2", + 9,"unicode_am_s3", + 10,"unicode_ar_s1", + 11,"unicode_ar_s2", + 12,"unicode_ar_s3", + 13,"unicode_as_s1", + 14,"unicode_as_s2", + 15,"unicode_as_s3", + 16,"unicode_az_s1", + 17,"unicode_az_s2", + 18,"unicode_az_s3", + 19,"unicode_be_s1", + 20,"unicode_be_s2", + 21,"unicode_be_s3", + 22,"unicode_bn_s1", + 23,"unicode_bn_s2", + 24,"unicode_bn_s3", + 25,"unicode_bs_s1", + 26,"unicode_bs_s2", + 27,"unicode_bs_s3", + 28,"unicode_bs_Cyrl_s1", + 29,"unicode_bs_Cyrl_s2", + 30,"unicode_bs_Cyrl_s3", + 31,"unicode_ca_s1", + 32,"unicode_ca_s2", + 33,"unicode_ca_s3", + 34,"unicode_cs_s1", + 35,"unicode_cs_s2", + 36,"unicode_cs_s3", + 37,"unicode_cy_s1", + 38,"unicode_cy_s2", + 39,"unicode_cy_s3", + 40,"unicode_da_s1", + 41,"unicode_da_s2", + 42,"unicode_da_s3", + 43,"unicode_de__phonebook_s1", + 44,"unicode_de__phonebook_s2", + 45,"unicode_de__phonebook_s3", + 46,"unicode_de_AT_phonebook_s1", + 47,"unicode_de_AT_phonebook_s2", + 48,"unicode_de_AT_phonebook_s3", + 49,"unicode_dsb_s1", + 50,"unicode_dsb_s2", + 51,"unicode_dsb_s3", + 52,"unicode_ee_s1", + 53,"unicode_ee_s2", + 54,"unicode_ee_s3", + 55,"unicode_eo_s1", + 56,"unicode_eo_s2", + 57,"unicode_eo_s3", + 58,"unicode_es_s1", + 59,"unicode_es_s2", + 60,"unicode_es_s3", + 61,"unicode_es__traditional_s1", + 62,"unicode_es__traditional_s2", + 63,"unicode_es__traditional_s3", + 64,"unicode_et_s1", + 65,"unicode_et_s2", + 66,"unicode_et_s3", + 67,"unicode_fa_s1", + 68,"unicode_fa_s2", + 69,"unicode_fa_s3", + 70,"unicode_fi_s1", + 71,"unicode_fi_s2", + 72,"unicode_fi_s3", + 73,"unicode_fi__phonebook_s1", + 74,"unicode_fi__phonebook_s2", + 75,"unicode_fi__phonebook_s3", + 76,"unicode_fil_s1", + 77,"unicode_fil_s2", + 78,"unicode_fil_s3", + 79,"unicode_fo_s1", + 80,"unicode_fo_s2", + 81,"unicode_fo_s3", + 82,"unicode_fr_CA_s1", + 83,"unicode_fr_CA_s2", + 84,"unicode_fr_CA_s3", + 85,"unicode_gu_s1", + 86,"unicode_gu_s2", + 87,"unicode_gu_s3", + 88,"unicode_ha_s1", + 89,"unicode_ha_s2", + 90,"unicode_ha_s3", + 91,"unicode_haw_s1", + 92,"unicode_haw_s2", + 93,"unicode_haw_s3", + 94,"unicode_he_s1", + 95,"unicode_he_s2", + 96,"unicode_he_s3", + 97,"unicode_hi_s1", + 98,"unicode_hi_s2", + 99,"unicode_hi_s3", + 100,"unicode_hr_s1", + 101,"unicode_hr_s2", + 102,"unicode_hr_s3", + 103,"unicode_hu_s1", + 104,"unicode_hu_s2", + 105,"unicode_hu_s3", + 106,"unicode_hy_s1", + 107,"unicode_hy_s2", + 108,"unicode_hy_s3", + 109,"unicode_ig_s1", + 110,"unicode_ig_s2", + 111,"unicode_ig_s3", + 112,"unicode_is_s1", + 113,"unicode_is_s2", + 114,"unicode_is_s3", + 115,"unicode_ja_s1", + 116,"unicode_ja_s2", + 117,"unicode_ja_s3", + 118,"unicode_kk_s1", + 119,"unicode_kk_s2", + 120,"unicode_kk_s3", + 121,"unicode_kl_s1", + 122,"unicode_kl_s2", + 123,"unicode_kl_s3", + 124,"unicode_kn_s1", + 125,"unicode_kn_s2", + 126,"unicode_kn_s3", + 127,"unicode_ko_s1", + 128,"unicode_ko_s2", + 129,"unicode_ko_s3", + 130,"unicode_kok_s1", + 131,"unicode_kok_s2", + 132,"unicode_kok_s3", + 133,"unicode_ky_s1", + 134,"unicode_ky_s2", + 135,"unicode_ky_s3", + 136,"unicode_lkt_s1", + 137,"unicode_lkt_s2", + 138,"unicode_lkt_s3", + 139,"unicode_ln_s1", + 140,"unicode_ln_s2", + 141,"unicode_ln_s3", + 142,"unicode_lt_s1", + 143,"unicode_lt_s2", + 144,"unicode_lt_s3", + 145,"unicode_lv_s1", + 146,"unicode_lv_s2", + 147,"unicode_lv_s3", + 148,"unicode_mk_s1", + 149,"unicode_mk_s2", + 150,"unicode_mk_s3", + 151,"unicode_ml_s1", + 152,"unicode_ml_s2", + 153,"unicode_ml_s3", + 154,"unicode_mr_s1", + 155,"unicode_mr_s2", + 156,"unicode_mr_s3", + 157,"unicode_mt_s1", + 158,"unicode_mt_s2", + 159,"unicode_mt_s3", + 160,"unicode_nb_s1", + 161,"unicode_nb_s2", + 162,"unicode_nb_s3", + 163,"unicode_nn_s1", + 164,"unicode_nn_s2", + 165,"unicode_nn_s3", + 166,"unicode_nso_s1", + 167,"unicode_nso_s2", + 168,"unicode_nso_s3", + 169,"unicode_om_s1", + 170,"unicode_om_s2", + 171,"unicode_om_s3", + 172,"unicode_or_s1", + 173,"unicode_or_s2", + 174,"unicode_or_s3", + 175,"unicode_pa_s1", + 176,"unicode_pa_s2", + 177,"unicode_pa_s3", + 178,"unicode_pl_s1", + 179,"unicode_pl_s2", + 180,"unicode_pl_s3", + 181,"unicode_ro_s1", + 182,"unicode_ro_s2", + 183,"unicode_ro_s3", + 184,"unicode_sa_s1", + 185,"unicode_sa_s2", + 186,"unicode_sa_s3", + 187,"unicode_se_s1", + 188,"unicode_se_s2", + 189,"unicode_se_s3", + 190,"unicode_si_s1", + 191,"unicode_si_s2", + 192,"unicode_si_s3", + 193,"unicode_si__dictionary_s1", + 194,"unicode_si__dictionary_s2", + 195,"unicode_si__dictionary_s3", + 196,"unicode_sk_s1", + 197,"unicode_sk_s2", + 198,"unicode_sk_s3", + 199,"unicode_sl_s1", + 200,"unicode_sl_s2", + 201,"unicode_sl_s3", + 202,"unicode_sq_s1", + 203,"unicode_sq_s2", + 204,"unicode_sq_s3", + 205,"unicode_sr_s1", + 206,"unicode_sr_s2", + 207,"unicode_sr_s3", + 208,"unicode_sr_Latn_s1", + 209,"unicode_sr_Latn_s2", + 210,"unicode_sr_Latn_s3", + 211,"unicode_sv_s1", + 212,"unicode_sv_s2", + 213,"unicode_sv_s3", + 214,"unicode_sv__reformed_s1", + 215,"unicode_sv__reformed_s2", + 216,"unicode_sv__reformed_s3", + 217,"unicode_ta_s1", + 218,"unicode_ta_s2", + 219,"unicode_ta_s3", + 220,"unicode_te_s1", + 221,"unicode_te_s2", + 222,"unicode_te_s3", + 223,"unicode_th_s1", + 224,"unicode_th_s2", + 225,"unicode_th_s3", + 226,"unicode_tn_s1", + 227,"unicode_tn_s2", + 228,"unicode_tn_s3", + 229,"unicode_to_s1", + 230,"unicode_to_s2", + 231,"unicode_to_s3", + 232,"unicode_tr_s1", + 233,"unicode_tr_s2", + 234,"unicode_tr_s3", + 235,"unicode_ug_Cyrl_s1", + 236,"unicode_ug_Cyrl_s2", + 237,"unicode_ug_Cyrl_s3", + 238,"unicode_uk_s1", + 239,"unicode_uk_s2", + 240,"unicode_uk_s3", + 241,"unicode_ur_s1", + 242,"unicode_ur_s2", + 243,"unicode_ur_s3", + 244,"unicode_vi_s1", + 245,"unicode_vi_s2", + 246,"unicode_vi_s3", + 247,"unicode_vo_s1", + 248,"unicode_vo_s2", + 249,"unicode_vo_s3", + 250,"unicode_wae_s1", + 251,"unicode_wae_s2", + 252,"unicode_wae_s3", + 253,"unicode_wo_s1", + 254,"unicode_wo_s2", + 255,"unicode_wo_s3", + 256,"unicode_yo_s1", + 257,"unicode_yo_s2", + 258,"unicode_yo_s3", + 259,"unicode_zh_s1", + 260,"unicode_zh_s2", + 261,"unicode_zh_s3", + 262,"unicode_zh__big5han_s1", + 263,"unicode_zh__big5han_s2", + 264,"unicode_zh__big5han_s3", + 265,"unicode_zh__gb2312han_s1", + 266,"unicode_zh__gb2312han_s2", + 267,"unicode_zh__gb2312han_s3", + 268,"unicode_zh__pinyin_s1", + 269,"unicode_zh__pinyin_s2", + 270,"unicode_zh__pinyin_s3", + 271,"unicode_zh__stroke_s1", + 272,"unicode_zh__stroke_s2", + 273,"unicode_zh__stroke_s3", + 274,"unicode_zh__zhuyin_s1", + 275,"unicode_zh__zhuyin_s2", + 276,"unicode_zh__zhuyin_s3", + 277,"unicode_numeric", + 278,"unicode_numeric_s2", + 279,"unicode_tur_s2" } ) diff --git a/test/sql/collation.result b/test/sql/collation.result index 8337dde0e..23dc4e80d 100644 --- a/test/sql/collation.result +++ b/test/sql/collation.result @@ -506,10 +506,10 @@ s:drop() s = box.schema.space.create('t1') --- ... -s:format({{name='s1', type='string', collation = 'unicode_ru_s2'}}) +s:format({{name='s1', type='string', collation = 'unicode_ky_s1'}}) --- ... -idx = s:create_index('pk', {unique = true, type='tree', parts={{'s1', collation = 'unicode_ru_s2'}}}) +idx = s:create_index('pk', {unique = true, type='tree', parts={{'s1', collation = 'unicode_ky_s1'}}}) --- ... s:insert{'Ё'} diff --git a/test/sql/collation.test.lua b/test/sql/collation.test.lua index 6f4ef08f3..37de9a951 100644 --- a/test/sql/collation.test.lua +++ b/test/sql/collation.test.lua @@ -203,8 +203,8 @@ s:drop() -- unicode_s2 collation does distinguish russian letters 'Е' and 'Ё' s = box.schema.space.create('t1') -s:format({{name='s1', type='string', collation = 'unicode_ru_s2'}}) -idx = s:create_index('pk', {unique = true, type='tree', parts={{'s1', collation = 'unicode_ru_s2'}}}) +s:format({{name='s1', type='string', collation = 'unicode_ky_s1'}}) +idx = s:create_index('pk', {unique = true, type='tree', parts={{'s1', collation = 'unicode_ky_s1'}}}) s:insert{'Ё'} s:insert{'е'} -- the following calls should fail -- 2.17.1
next reply other threads:[~2019-03-05 11:44 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-03-05 11:44 Stanislav Zudin [this message] 2019-03-05 14:40 ` Vladimir Davydov 2019-03-06 6:32 ` Stanislav Zudin 2019-03-06 8:10 ` Konstantin Osipov 2019-03-05 15:41 ` [tarantool-patches] " Konstantin Osipov 2019-03-06 6:36 ` Stanislav Zudin 2019-03-06 8:11 ` Konstantin Osipov 2019-03-06 8:23 ` Stanislav Zudin 2019-03-06 9:48 ` Konstantin Osipov 2019-03-20 15:53 ` Stanislav Zudin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190305114431.31311-1-szudin@tarantool.org \ --to=szudin@tarantool.org \ --cc=kostja@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v4] Feature request for a new collation' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox