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

Review request for ranger, Ankita Sinha, Don Bosco Durai, Gautam Borad, Abhay 
Kulkarni, Madhan Neethiraj, Mehul Parikh, Ramesh Mani, Selvamohan Neethiraj, 
and Velmurugan Periasamy.


Bugs: RANGER-1018
    https://issues.apache.org/jira/browse/RANGER-1018


Repository: ranger


Description
-------

**Problem Statement:** As there is unique key constraint on email column of 
x_portal_user table; after removal of Auto generation of Email address 
code(RANGER-978); Ranger user creation is failing with SQLAnywhere and MS SQL 
Server DB Flavor.

**Proposed Solution:**
If any column in SQL Anywhere DB is having UNIQUE constraint then during schema 
creation it set 'nulls' flag to 'N' though it is defined to accept NULL in 
schema. (for example : email varchar(512) DEFAULT NULL NULL). This way SQL 
Anywhere DB engine does not allow NULL insertion on columns having UNIQUE 
constraint.

In order to fix this issue we need to drop unique constraint from email column 
and allow NULL value on email column; below given sql statements can be used to 
fix this issue.

alter table x_portal_user drop constraint x_portal_user_UK_email;
alter table x_portal_user alter email varchar(512) DEFAULT NULL NULL;


Diffs
-----

  security-admin/db/mysql/create_dbversion_catalog.sql 9c90633 
  security-admin/db/sqlanywhere/patches/018-createtagsyncuser.sql 9b1ab09 
  security-admin/db/sqlserver/patches/018-createtagsyncuser.sql b3c466b 
  security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java d3befbe 

Diff: https://reviews.apache.org/r/48411/diff/


Testing
-------

**Steps Performed(With patch):**
1. Installed and started Ranger-Admin with SQL Anywhere DB flavor.
2. Installed and started Ranger-Usersync with sync_source property 'unix'
3. Visited Ranger-admin user/group page to check whether linux users are 
appearing or not.

**Expected Behavior:**
Ranger-usersync should able to sync users from linux machine; user should be 
visible in Ranger-UI and x_portal_user table should have null value in email 
column of all synced users.

**Actual Behavior:**
Ranger-usersync was able to sync users from linux machine; synced users were 
visible in Ranger-UI and x_portal_user table was having null value in email 
column of all synced users.

Note : Similar behaviour was observed while testing this patch with MS-SQL 
Server and other DB flavors.


Thanks,

Pradeep Agrawal

Reply via email to