Github user orhankislal commented on the issue:

    https://github.com/apache/madlib/pull/325
  
    @iyerr3 @jingyimei I'll put the following in the commit message before 
merging.
    This commit fixes the following potential issue.  
    1. User deploys MADlib on the schema `madlib1`.
    2. User creates a table named `vertex` in the `madlib1` schema.
    3. User runs install-check.
    4. The install check creates a new role and a new schema for each module in 
the database.
    5. The install check sets the `search_path` to 
`madlib_installcheck_<module>, madlib1`.
    6. The graph IC calls `DROP TABLE IF EXISTS vertex` and fails because the 
vertex table does exist but it is not owned by the install-check role.
    
    This commit removes the madlib installation schema from the search path so 
that it only uses its own schema. This means every madlib function call, type 
and operator has to be called directly using the madlib schema name. 
    
    One alternative solution is eliminating the `drop table` commands from the 
tests but that would require a very complicated refactoring work since most of 
the tests are written to reuse the same output table names. Another alternative 
is changing the `drop table` and `create table` commands to use the newly 
created test schema. However, this is very tricky to test; if a developer 
forgets to put the schema name, the test will still work unless she also 
creates a table of the same name in the madlib deployment schema.


---

Reply via email to