You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Nitiraj Singh Rathore (JIRA)" <ji...@apache.org> on 2016/05/04 08:03:12 UTC

[jira] [Created] (AMBARI-16242) Hive View and Pig View : one user overriding job details of other user in database

Nitiraj Singh Rathore created AMBARI-16242:
----------------------------------------------

             Summary: Hive View and Pig View : one user overriding job details of other user in database
                 Key: AMBARI-16242
                 URL: https://issues.apache.org/jira/browse/AMBARI-16242
             Project: Ambari
          Issue Type: Bug
          Components: ambari-views
    Affects Versions: 2.2.2
            Reporter: Nitiraj Singh Rathore
            Assignee: Nitiraj Singh Rathore
             Fix For: 2.4.0


Steps to reproduce.
0. create a new hive view for better understanding. Note the table names created in DB for this instance.
1. Login with user one (admin).
2. execute one hive query
3. go to database and note the new entries in ds_jobimpl_ and dsf_storedoperationhandle_ tables.
4. Login in with another use say (testUser)
5. execute one hive query
6. go to database and check the entries in ds_jobimpl_ and dsf_storedoperationhandle_ tables.
you will find that the entries of admin were overridden by queries of testUser instead of creating 2 separate entries.
Reason : 
For creating any entity in database. Hive and Pig view are generating the IDs in the code itself.
The code that generates IDs is wrong. It keeps a key for each entity and increments the counter for it for next entity. This key value pair is stored in context.putInstanceData. 
This instance data is inherently User dependent. So there is separate counter for each user. But the tables ds_jobimpl etc of hive and pig assumes unique ID across all users. So the queries of one user are getting overridden by another.
Implications : 
The implications of this can be very bad. The results will be not very visible if users execute queries serially but if they execute queries simultaneously then on the fly the users will keep replacing the entries which have state session data and operation handle of each other and will results in many exceptions and errors. 
Probably, many of the current exceptions of hive view might be because of this bug.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)