Skip to content

Commit

Permalink
rename alias mapping view
Browse files Browse the repository at this point in the history
  • Loading branch information
domoritz committed Sep 5, 2012
1 parent e579e75 commit 8884f0c
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 9 deletions.
4 changes: 2 additions & 2 deletions ckanext/datastore/logic/action.py
Expand Up @@ -120,8 +120,8 @@ def datastore_search(context, data_dict):
alias_exists = False
if not res_exists:
# assume id is an alias
alias_sql = ("select mainname from alias_mapping "
"where aliasname = '{}'").format(id)
alias_sql = ('select alias_of from "_table_metadata" '
"where name = '{}'").format(id)
result = db._get_engine(None, data_dict).execute(alias_sql).fetchone()
if result:
alias_exists = model.Resource.get(result[0].strip('"'))
Expand Down
10 changes: 5 additions & 5 deletions ckanext/datastore/plugin.py
Expand Up @@ -130,10 +130,10 @@ def _check_read_permissions(self):
def _create_alias_table(self):
mapping_sql = '''
SELECT distinct
d.refobjid::regclass AS main,
dependent.relname AS mainname,
r.ev_class::regclass AS alias,
dependee.relname AS aliasname
dependee.relname AS name,
-- r.ev_class::regclass AS oid,
dependent.relname AS alias_of
-- d.refobjid::regclass AS oid,
FROM
pg_attribute as a
JOIN pg_depend as d on d.refobjid = a.attrelid AND d.refobjsubid = a.attnum
Expand All @@ -142,7 +142,7 @@ def _create_alias_table(self):
JOIN pg_class as dependent ON d.refobjid = dependent.oid
WHERE dependee.relnamespace = (SELECT oid FROM pg_namespace WHERE nspname='public')
'''
create_alias_table_sql = u'create or replace view alias_mapping as {}'.format(mapping_sql)
create_alias_table_sql = u'create or replace view "_table_metadata" as {}'.format(mapping_sql)
connection = db._get_engine(None,
{'connection_url': pylons.config['ckan.datastore_write_url']}).connect()
connection.execute(create_alias_table_sql)
Expand Down
4 changes: 2 additions & 2 deletions ckanext/datastore/tests/test_datastore.py
Expand Up @@ -196,8 +196,8 @@ def test_create_basic(self):

assert results == results_alias

sql = ("select * from alias_mapping "
"where main='{}'::regclass and alias='{}'::regclass").format(resource.id, alias)
sql = ("select * from _table_metadata "
"where alias_of='{}' and name='{}'").format(resource.id, alias)
results = c.execute(sql)
assert results.rowcount == 1

Expand Down

0 comments on commit 8884f0c

Please sign in to comment.