You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Namit Jain (JIRA)" <ji...@apache.org> on 2011/04/05 22:35:05 UTC

[jira] [Created] (HIVE-2093) inputs are outputs should be populated for create/drop database

inputs are outputs should be populated for create/drop database
---------------------------------------------------------------

                 Key: HIVE-2093
                 URL: https://issues.apache.org/jira/browse/HIVE-2093
             Project: Hive
          Issue Type: Bug
            Reporter: Namit Jain
            Assignee: Siying Dong


This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017327#comment-13017327 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------


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

(Updated 2011-04-08 07:19:12.088932)


Review request for hive, Yongqiang He and namit jain.


Summary
-------

Still need to change some old tests' outputs.


This addresses bug HIVE-2093.
    https://issues.apache.org/jira/browse/HIVE-2093


Diffs (updated)
-----

  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1089697 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg6.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg7.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg8.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg9.q PRE-CREATION 
  trunk/ql/src/test/queries/clientpositive/database.q 1089697 
  trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/lockneg6.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg7.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg8.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg9.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter1.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter2.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter3.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter4.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/database.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/database_properties.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_01_nonpart.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_02_part.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_04_all_part.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_05_some_part.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_06_one_part.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_10_external_managed.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_11_managed_external.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_12_external_location.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_13_managed_location.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_15_external_part.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_16_part_external.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_17_part_managed.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_18_part_external.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_19_part_external_location.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/lock1.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/lock2.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/lock3.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/rename_column.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/show_tables.q.out 1089697 

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


Testing
-------


Thanks,

Siying



> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.3.patch

fix test outputs.

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017034#comment-13017034 ] 

Namit Jain commented on HIVE-2093:
----------------------------------

The changes to inputs/outputs look good - 
Yongqiang, can you confirm the authorization changes ?

If we are supporting this, we should also support
LOCK DATABASE <DB_NAME> in the same patch.

Also, can you add a negative test with LOCK DATABASE <..> ?


> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE-2093.6.patch

rebase

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE-2093.6.patch, HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.4.patch

address Carl's comments.

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.4.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Status: Patch Available  (was: Open)

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carl Steinbach updated HIVE-2093:
---------------------------------

    Component/s: Security
                 Metastore

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment:     (was: HIVE.2093.4.patch)

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Status: Patch Available  (was: Open)

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carl Steinbach updated HIVE-2093:
---------------------------------

    Status: Open  (was: Patch Available)

@Siying: Looks good for the most part. Please see my comments on RB. Thanks.

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "He Yongqiang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13043046#comment-13043046 ] 

He Yongqiang commented on HIVE-2093:
------------------------------------

any update on this one?

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE-2093.6.patch, HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.1.patch

1.ReadEntity and WriteEntity to support database as an entity
2.acquire locks for database in inputs and outputs
3.if database in outputs, user must have All permission to execute the query.
4.fix a small bug in security code that querying user-level privilege always returns null.

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017097#comment-13017097 ] 

Siying Dong commented on HIVE-2093:
-----------------------------------

Namit, do you mean we should add LOCK DATABASE? Looks like we don't have the syntax at all.

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022959#comment-13022959 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------


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

(Updated 2011-04-21 22:21:03.518662)


Review request for hive, Yongqiang He and namit jain.


Changes
-------

addressing most of Carl's comments except incline.


Summary
-------

Still need to change some old tests' outputs.


This addresses bug HIVE-2093.
    https://issues.apache.org/jira/browse/HIVE-2093


Diffs (updated)
-----

  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/LockDatabaseDesc.java PRE-CREATION 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1095795 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/UnlockDatabaseDesc.java PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg_query_tbl_in_locked_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg_try_db_lock_conflict.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg_try_drop_locked_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg_try_lock_db_in_use.q PRE-CREATION 
  trunk/ql/src/test/queries/clientpositive/database.q 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_2.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_3.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_4.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_5.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_6.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_7.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/authorization_part.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_22_export_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/load_exist_part_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/load_nonpart_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/load_part_authfail.q.out 1095795 
  trunk/ql/src/test/results/clientnegative/lockneg_query_tbl_in_locked_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg_try_db_lock_conflict.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg_try_drop_locked_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg_try_lock_db_in_use.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/alter1.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/alter2.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/alter3.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/alter4.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/database.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/database_properties.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_01_nonpart.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_02_part.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_04_all_part.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_05_some_part.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_06_one_part.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_10_external_managed.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_11_managed_external.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_12_external_location.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_13_managed_location.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_15_external_part.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_16_part_external.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_17_part_managed.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_18_part_external.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_19_part_external_location.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/lock1.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/lock2.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/lock3.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/rename_column.q.out 1095795 
  trunk/ql/src/test/results/clientpositive/show_tables.q.out 1095795 

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


Testing
-------


Thanks,

Siying



> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022670#comment-13022670 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------


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



trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
<https://reviews.apache.org/r/566/#comment1053>

    Spelling



trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
<https://reviews.apache.org/r/566/#comment1058>

    Why not make this a boolean function? I understand that the convention in this class is to have functions that return 0, or something more than 0, but it looks like all of the other functions can be boolean valued as well. Returning an integer in this situation is confusing.



trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
<https://reviews.apache.org/r/566/#comment1059>

    Same deal here. Can you change this to return a boolean value?



trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
<https://reviews.apache.org/r/566/#comment1061>

    You can eliminate a couple lines of code by using foreach syntax instead of an explicit iterator.



trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java
<https://reviews.apache.org/r/566/#comment1062>

    I draw the line at nested ternary statements. Can you please use if/else instead?



trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java
<https://reviews.apache.org/r/566/#comment1063>

    Nice to have: move DATABASE to the beginning of the list.



trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
<https://reviews.apache.org/r/566/#comment1064>

    Why do you need to initialize the lock manager here, but not above in analyzeLockDatabase()?



trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g
<https://reviews.apache.org/r/566/#comment1065>

    should be "unlock database statement"
    
    



trunk/ql/src/test/queries/clientnegative/lockneg6.q
<https://reviews.apache.org/r/566/#comment1066>

    Please add some comments explaining what it is you're trying to test so that I can quickly tell how this differs from lockneg5, lockneg7, etc, etc. Please also consider changing the name of the file to something more descriptive so that I don't even have to read the comments.



trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out
<https://reviews.apache.org/r/566/#comment1067>

    Please make this less ambiguous and easier to parse by capitalizing SHOW GRANT.



trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out
<https://reviews.apache.org/r/566/#comment1068>

    Any chance I can get a look at closed-source-hive? ;)


- Carl


On 2011-04-19 19:25:22, Siying Dong wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/566/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-04-19 19:25:22)
bq.  
bq.  
bq.  Review request for hive, Yongqiang He and namit jain.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Still need to change some old tests' outputs.
bq.  
bq.  
bq.  This addresses bug HIVE-2093.
bq.      https://issues.apache.org/jira/browse/HIVE-2093
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/LockDatabaseDesc.java PRE-CREATION 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/UnlockDatabaseDesc.java PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg6.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg7.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg8.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg9.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientpositive/database.q 1095164 
bq.    trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/lockneg6.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg7.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg8.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg9.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter1.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter2.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter3.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter4.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/database.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/database_properties.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_01_nonpart.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_02_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_04_all_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_05_some_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_06_one_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_10_external_managed.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_11_managed_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_12_external_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_13_managed_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_15_external_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_16_part_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_17_part_managed.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_18_part_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_19_part_external_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock1.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock2.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock3.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/rename_column.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/show_tables.q.out 1095164 
bq.  
bq.  Diff: https://reviews.apache.org/r/566/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Siying
bq.  
bq.



> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "He Yongqiang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017115#comment-13017115 ] 

He Yongqiang commented on HIVE-2093:
------------------------------------

Siying, can you add cleanup of db/user privilege in QTestUtils?

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Description: concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE  (was: This is needed for many other things: concurrency, authorization etc. to work)
        Summary: create/drop database should populate inputs/outputs and check concurrency and user permission  (was: inputs are outputs should be populated for create/drop database)

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017253#comment-13017253 ] 

Siying Dong commented on HIVE-2093:
-----------------------------------

created review board: https://reviews.apache.org/r/566

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carl Steinbach updated HIVE-2093:
---------------------------------

    Status: Open  (was: Patch Available)

@Siying: Sorry I let this go stale. Can you please rebase the patch and resubmit? I will look at it ASAP. Thanks.

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE-2093.6.patch, HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.2.patch

added:
LOCK DATABASE xxx
SHOW LOCKS DATABASE xxx
UNLOCK DATABASE xxx

added negative tests.
fix bugs

I still need to update some tests results, as inputs and outputs changed

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.4.patch

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Attachment: HIVE.2093.5.patch

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13024738#comment-13024738 ] 

Carl Steinbach commented on HIVE-2093:
--------------------------------------

+1. Will commit if tests pass.

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021743#comment-13021743 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------


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

(Updated 2011-04-19 19:25:22.632716)


Review request for hive, Yongqiang He and namit jain.


Summary
-------

Still need to change some old tests' outputs.


This addresses bug HIVE-2093.
    https://issues.apache.org/jira/browse/HIVE-2093


Diffs (updated)
-----

  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/LockDatabaseDesc.java PRE-CREATION 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1095164 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/UnlockDatabaseDesc.java PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg6.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg7.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg8.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg9.q PRE-CREATION 
  trunk/ql/src/test/queries/clientpositive/database.q 1095164 
  trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out 1095164 
  trunk/ql/src/test/results/clientnegative/lockneg6.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg7.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg8.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg9.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/alter1.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/alter2.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/alter3.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/alter4.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/database.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/database_properties.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_01_nonpart.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_02_part.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_04_all_part.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_05_some_part.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_06_one_part.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_10_external_managed.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_11_managed_external.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_12_external_location.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_13_managed_location.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_15_external_part.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_16_part_external.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_17_part_managed.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_18_part_external.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_19_part_external_location.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/lock1.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/lock2.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/lock3.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/rename_column.q.out 1095164 
  trunk/ql/src/test/results/clientpositive/show_tables.q.out 1095164 

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


Testing
-------


Thanks,

Siying



> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Siying Dong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siying Dong updated HIVE-2093:
------------------------------

    Status: Patch Available  (was: Open)

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "He Yongqiang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021502#comment-13021502 ] 

He Yongqiang commented on HIVE-2093:
------------------------------------

The change looks good to me. Siying, can you rebase? 

(Carl, since you are looking at the other one, can you please also take a look at this one as well?)

> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13017254#comment-13017254 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------


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

Review request for hive, Yongqiang He and namit jain.


Summary
-------

Still need to change some old tests' outputs.


This addresses bug HIVE-2093.
    https://issues.apache.org/jira/browse/HIVE-2093


Diffs
-----

  trunk/ql/src/test/results/clientnegative/lockneg8.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg9.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter1.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/lockneg7.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/lockneg6.q.out PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg9.q PRE-CREATION 
  trunk/ql/src/test/queries/clientpositive/database.q 1089697 
  trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
  trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1089697 
  trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1089697 
  trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg6.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg7.q PRE-CREATION 
  trunk/ql/src/test/queries/clientnegative/lockneg8.q PRE-CREATION 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1089697 
  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1089697 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1089697 
  trunk/ql/src/test/results/clientpositive/alter2.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter3.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/alter4.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1089697 
  trunk/ql/src/test/results/clientpositive/database.q.out 1089697 

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


Testing
-------


Thanks,

Siying



> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "Carl Steinbach (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carl Steinbach updated HIVE-2093:
---------------------------------

    Component/s: Locking
                 Authorization
    
> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Authorization, Locking, Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE-2093.6.patch, HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HIVE-2093) create/drop database should populate inputs/outputs and check concurrency and user permission

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022958#comment-13022958 ] 

jiraposter@reviews.apache.org commented on HIVE-2093:
-----------------------------------------------------



bq.  On 2011-04-21 07:41:22, Carl Steinbach wrote:
bq.  > trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java, line 2080
bq.  > <https://reviews.apache.org/r/566/diff/3/?file=15972#file15972line2080>
bq.  >
bq.  >     Same deal here. Can you change this to return a boolean value?

I'm going to follow convention this time, instead of making radical changes in such a JIRA. If you feel we should cleaning them up, we should open a separate JIRA.


bq.  On 2011-04-21 07:41:22, Carl Steinbach wrote:
bq.  > trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java, line 699
bq.  > <https://reviews.apache.org/r/566/diff/3/?file=15976#file15976line699>
bq.  >
bq.  >     Why do you need to initialize the lock manager here, but not above in analyzeLockDatabase()?

If inputs and outputs are not empty, lock manager will automatically start. I look at the codes again. We probably don't need to put Db in inputs and outputs in such query, so that I remove them and set this value.


- Siying


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


On 2011-04-19 19:25:22, Siying Dong wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/566/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-04-19 19:25:22)
bq.  
bq.  
bq.  Review request for hive, Yongqiang He and namit jain.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Still need to change some old tests' outputs.
bq.  
bq.  
bq.  This addresses bug HIVE-2093.
bq.      https://issues.apache.org/jira/browse/HIVE-2093
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/LockDatabaseDesc.java PRE-CREATION 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 1095164 
bq.    trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/UnlockDatabaseDesc.java PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/authorization_fail_create_db.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg6.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg7.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg8.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientnegative/lockneg9.q PRE-CREATION 
bq.    trunk/ql/src/test/queries/clientpositive/database.q 1095164 
bq.    trunk/ql/src/test/results/clientnegative/authorization_fail_create_db.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/database_create_already_exists.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_create_invalid_name.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/database_drop_not_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out 1095164 
bq.    trunk/ql/src/test/results/clientnegative/lockneg6.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg7.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg8.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientnegative/lockneg9.q.out PRE-CREATION 
bq.    trunk/ql/src/test/results/clientpositive/add_part_exist.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter1.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter2.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter3.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/alter4.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/authorization_5.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/database.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/database_properties.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_01_nonpart.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_02_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_04_all_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_05_some_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_06_one_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_10_external_managed.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_11_managed_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_12_external_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_13_managed_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_15_external_part.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_16_part_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_17_part_managed.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_18_part_external.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_19_part_external_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock1.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock2.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/lock3.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/rename_column.q.out 1095164 
bq.    trunk/ql/src/test/results/clientpositive/show_tables.q.out 1095164 
bq.  
bq.  Diff: https://reviews.apache.org/r/566/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Siying
bq.  
bq.



> create/drop database should populate inputs/outputs and check concurrency and user permission
> ---------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore, Security
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch, HIVE.2093.4.patch, HIVE.2093.5.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS DATABASE

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HIVE-2093) inputs are outputs should be populated for create/drop database

Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Namit Jain updated HIVE-2093:
-----------------------------

    Status: Open  (was: Patch Available)

> inputs are outputs should be populated for create/drop database
> ---------------------------------------------------------------
>
>                 Key: HIVE-2093
>                 URL: https://issues.apache.org/jira/browse/HIVE-2093
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Namit Jain
>            Assignee: Siying Dong
>         Attachments: HIVE.2093.1.patch
>
>
> This is needed for many other things: concurrency, authorization etc. to work

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira