|
@@ -73,8 +73,9 @@ Database Views
|
|
|
|
|
|
|
|
def databases(request):
|
|
def databases(request):
|
|
|
search_filter = request.GET.get('filter', '')
|
|
search_filter = request.GET.get('filter', '')
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
|
|
|
- db = _get_db(user=request.user)
|
|
|
|
|
|
|
+ db = _get_db(user=request.user, cluster=cluster)
|
|
|
databases = db.get_databases(search_filter)
|
|
databases = db.get_databases(search_filter)
|
|
|
apps_list = _get_apps(request.user, '')
|
|
apps_list = _get_apps(request.user, '')
|
|
|
|
|
|
|
@@ -97,7 +98,9 @@ def databases(request):
|
|
|
@check_has_write_access_permission
|
|
@check_has_write_access_permission
|
|
|
def drop_database(request):
|
|
def drop_database(request):
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
if request.method == 'POST':
|
|
if request.method == 'POST':
|
|
|
databases = request.POST.getlist('database_selection')
|
|
databases = request.POST.getlist('database_selection')
|
|
@@ -142,7 +145,9 @@ def alter_database(request, database):
|
|
|
response = {'status': -1, 'data': ''}
|
|
response = {'status': -1, 'data': ''}
|
|
|
|
|
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
try:
|
|
try:
|
|
|
properties = request.POST.get('properties')
|
|
properties = request.POST.get('properties')
|
|
@@ -166,6 +171,7 @@ def alter_database(request, database):
|
|
|
|
|
|
|
|
def get_database_metadata(request, database):
|
|
def get_database_metadata(request, database):
|
|
|
response = {'status': -1, 'data': ''}
|
|
response = {'status': -1, 'data': ''}
|
|
|
|
|
+
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
|
|
@@ -188,8 +194,10 @@ def table_queries(request, database, table):
|
|
|
|
|
|
|
|
response = {'status': -1, 'queries': []}
|
|
response = {'status': -1, 'queries': []}
|
|
|
try:
|
|
try:
|
|
|
- queries = [{'doc': d.to_dict(), 'data': Notebook(document=d).get_data()}
|
|
|
|
|
- for d in Document2.objects.filter(qfilter, owner=request.user, type='query', is_history=False)[:50]]
|
|
|
|
|
|
|
+ queries = [
|
|
|
|
|
+ {'doc': d.to_dict(), 'data': Notebook(document=d).get_data()}
|
|
|
|
|
+ for d in Document2.objects.filter(qfilter, owner=request.user, type='query', is_history=False)[:50]
|
|
|
|
|
+ ]
|
|
|
response['status'] = 0
|
|
response['status'] = 0
|
|
|
response['queries'] = queries
|
|
response['queries'] = queries
|
|
|
except Exception, ex:
|
|
except Exception, ex:
|
|
@@ -203,7 +211,9 @@ def table_queries(request, database, table):
|
|
|
Table Views
|
|
Table Views
|
|
|
"""
|
|
"""
|
|
|
def show_tables(request, database=None):
|
|
def show_tables(request, database=None):
|
|
|
- db = _get_db(user=request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, cluster=cluster)
|
|
|
|
|
|
|
|
if database is None:
|
|
if database is None:
|
|
|
database = 'default' # Assume always 'default'
|
|
database = 'default' # Assume always 'default'
|
|
@@ -256,7 +266,9 @@ def show_tables(request, database=None):
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_table_metadata(request, database, table):
|
|
def get_table_metadata(request, database, table):
|
|
|
- db = _get_db(user=request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, cluster=cluster)
|
|
|
response = {'status': -1, 'data': ''}
|
|
response = {'status': -1, 'data': ''}
|
|
|
try:
|
|
try:
|
|
|
table_metadata = db.get_table(database, table)
|
|
table_metadata = db.get_table(database, table)
|
|
@@ -341,7 +353,9 @@ def alter_table(request, database, table):
|
|
|
response = {'status': -1, 'data': ''}
|
|
response = {'status': -1, 'data': ''}
|
|
|
|
|
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
try:
|
|
try:
|
|
|
new_table_name = request.POST.get('new_table_name', None)
|
|
new_table_name = request.POST.get('new_table_name', None)
|
|
@@ -374,7 +388,9 @@ def alter_column(request, database, table):
|
|
|
response = {'status': -1, 'message': ''}
|
|
response = {'status': -1, 'message': ''}
|
|
|
|
|
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
try:
|
|
try:
|
|
|
column = request.POST.get('column', None)
|
|
column = request.POST.get('column', None)
|
|
@@ -409,7 +425,9 @@ def alter_column(request, database, table):
|
|
|
@check_has_write_access_permission
|
|
@check_has_write_access_permission
|
|
|
def drop_table(request, database):
|
|
def drop_table(request, database):
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
if request.method == 'POST':
|
|
if request.method == 'POST':
|
|
|
try:
|
|
try:
|
|
@@ -452,8 +470,9 @@ def drop_table(request, database):
|
|
|
|
|
|
|
|
# Deprecated
|
|
# Deprecated
|
|
|
def read_table(request, database, table):
|
|
def read_table(request, database, table):
|
|
|
- db = dbms.get(request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
|
|
|
|
|
+ db = dbms.get(request.user, cluster=cluster)
|
|
|
table = db.get_table(database, table)
|
|
table = db.get_table(database, table)
|
|
|
|
|
|
|
|
try:
|
|
try:
|
|
@@ -468,7 +487,9 @@ def load_table(request, database, table):
|
|
|
response = {'status': -1, 'data': 'None'}
|
|
response = {'status': -1, 'data': 'None'}
|
|
|
|
|
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
table = db.get_table(database, table)
|
|
table = db.get_table(database, table)
|
|
|
|
|
|
|
@@ -526,8 +547,9 @@ def load_table(request, database, table):
|
|
|
|
|
|
|
|
|
|
|
|
|
def describe_partitions(request, database, table):
|
|
def describe_partitions(request, database, table):
|
|
|
- db = _get_db(user=request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
|
|
|
|
|
+ db = _get_db(user=request.user, cluster=cluster)
|
|
|
table_obj = db.get_table(database, table)
|
|
table_obj = db.get_table(database, table)
|
|
|
|
|
|
|
|
if not table_obj.partition_keys:
|
|
if not table_obj.partition_keys:
|
|
@@ -610,7 +632,9 @@ def _massage_partition(database, table, partition):
|
|
|
|
|
|
|
|
|
|
|
|
|
def browse_partition(request, database, table, partition_spec):
|
|
def browse_partition(request, database, table, partition_spec):
|
|
|
- db = _get_db(user=request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, cluster=cluster)
|
|
|
try:
|
|
try:
|
|
|
decoded_spec = urllib.unquote(partition_spec)
|
|
decoded_spec = urllib.unquote(partition_spec)
|
|
|
partition_table = db.describe_partition(database, table, decoded_spec)
|
|
partition_table = db.describe_partition(database, table, decoded_spec)
|
|
@@ -625,7 +649,9 @@ def browse_partition(request, database, table, partition_spec):
|
|
|
|
|
|
|
|
# Deprecated
|
|
# Deprecated
|
|
|
def read_partition(request, database, table, partition_spec):
|
|
def read_partition(request, database, table, partition_spec):
|
|
|
- db = dbms.get(request.user)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = dbms.get(request.user, cluster=cluster)
|
|
|
try:
|
|
try:
|
|
|
decoded_spec = urllib.unquote(partition_spec)
|
|
decoded_spec = urllib.unquote(partition_spec)
|
|
|
query = db.get_partition(database, table, decoded_spec)
|
|
query = db.get_partition(database, table, decoded_spec)
|
|
@@ -639,7 +665,9 @@ def read_partition(request, database, table, partition_spec):
|
|
|
@check_has_write_access_permission
|
|
@check_has_write_access_permission
|
|
|
def drop_partition(request, database, table):
|
|
def drop_partition(request, database, table):
|
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
source_type = request.POST.get('source_type', 'hive')
|
|
|
- db = _get_db(user=request.user, source_type=source_type)
|
|
|
|
|
|
|
+ cluster = json.loads(request.POST.get('cluster', '{}'))
|
|
|
|
|
+
|
|
|
|
|
+ db = _get_db(user=request.user, source_type=source_type, cluster=cluster)
|
|
|
|
|
|
|
|
if request.method == 'POST':
|
|
if request.method == 'POST':
|
|
|
partition_specs = request.POST.getlist('partition_selection')
|
|
partition_specs = request.POST.getlist('partition_selection')
|