ranger-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Velmurugan Periasamy <vperias...@hortonworks.com>
Subject Re: Review Request 55565: RANGER-1308 : Remove DEFAULT CHARSET 'latin1' from ranger db schema script to enable support of unicode or any other charset
Date Wed, 18 Jan 2017 17:38:29 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/55565/#review162138
-----------------------------------------------------------


Ship it!




Ship It!

- Velmurugan Periasamy


On Jan. 16, 2017, 11:39 a.m., Pradeep Agrawal wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55565/
> -----------------------------------------------------------
> 
> (Updated Jan. 16, 2017, 11:39 a.m.)
> 
> 
> Review request for ranger, Ankita Sinha, Don Bosco Durai, Gautam Borad, Abhay Kulkarni,
Madhan Neethiraj, Mehul Parikh, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, and
Velmurugan Periasamy.
> 
> 
> Bugs: RANGER-1308
>     https://issues.apache.org/jira/browse/RANGER-1308
> 
> 
> Repository: ranger
> 
> 
> Description
> -------
> 
> **Problem Statement :** 
> 1. Currently ranger db schema script is creating most of the tables with latin1 charset.
if User/Group name with Unicode characters are not accepted in Ranger UI and from REST API
actual unicode character is replaced with "replacement character" (?).
> 
> 2. The InnoDB storage engine has a maximum index length of 767 bytes, so for utf8 or
utf8mb4 columns, we can index a maximum of 255 or 191 characters, respectively. If we currently
have utf8 columns with indexes longer than 191 characters, we will need to index a smaller
number of characters when using utf8mb4.
> 
> **Proposed Solution :** 
> 1. Remove hardcoded CHARSET 'latin1' from ranger db schema script ; so that user table
shall be created with utf8 charset if server charset is utf8.
> 
> 2. Rather reducing width of index key to 191 or 255, we can enable 'innodb_large_prefix'
in my.cnf configuration(mysql server system variable configuration). When the 'innodb_large_prefix'
configuration option is enabled, the index key prefix length limit is raised to 3072 bytes
for InnoDB tables that use DYNAMIC or COMPRESSED row format. Since default ROW_FORMAT is COMPACT
we need to explicity add clause ROW_FORMAT=DYNAMIC in create table schema.
> 
> 
> Diffs
> -----
> 
>   kms/scripts/db/mysql/kms_core_db.sql 1177595 
>   security-admin/db/mysql/patches/008-removeTrailingSlash.sql 2e00f5f 
>   security-admin/db/mysql/patches/009-updated_schema.sql 78c7006 
>   security-admin/db/mysql/patches/013-permissionmodel.sql ffd261b 
>   security-admin/db/mysql/patches/016-updated-schema-for-tag-based-policy.sql b86ae10

>   security-admin/db/mysql/patches/020-datamask-policy.sql ac5f404 
>   security-admin/db/mysql/patches/022-split-service-table.sql d99bfc1 
>   security-admin/db/mysql/patches/025-create-schema-for-plugin-info.sql 85d1f0a 
>   security-admin/db/mysql/xa_core_db.sql dcfce4d 
> 
> Diff: https://reviews.apache.org/r/55565/diff/
> 
> 
> Testing
> -------
> 
> **Steps Performed(with patch):**
> 1. Installed MySQL 5.6 with the help of doc.
> 2. Untar ranger-admin from Build having changes of proposed patch.
> 3. Provided ranger db root and admin db details in install.properties.
> 4. Executed setup.sh script.
> 6. Tried to start ranger admin service.
> 
> **Expected behaviour :** Ranger admin should start normally and User should able to see
Dashboard page after login.
> 
> **Actual behaviour :** Ranger admin was started and was able to login and see Ranger
UI.
> 
> 7. Tried to create user with unicode characters in username field. for example (?,ΕΎ
,??,??	,????	)
> 
> **Expected behaviour :** Ranger user should get created with above mentioned unicode
characters.
> 
> **Actual behaviour :** Ranger user were created successfully.
> 
> 
> Thanks,
> 
> Pradeep Agrawal
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message