mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-25 18:55:31 -06:00
Fix the issue where Import/Export was failing in linux runtime. Fixes #2166
Issue: Changes done by Ashesh in pgAdmin4.py file for setting up PYTHONHOME variable to sys.prefix was applicable only for windows only. Additionally I have also added exception handling for file provided by user for Backup/Restore/Import/Export.
This commit is contained in:
parent
533833cb02
commit
bc63652811
@ -100,6 +100,8 @@ if __name__ == '__main__':
|
|||||||
# the process-executor.
|
# the process-executor.
|
||||||
#
|
#
|
||||||
# Setting PYTHONHOME launch them properly.
|
# Setting PYTHONHOME launch them properly.
|
||||||
|
from pgadmin.utils import IS_WIN
|
||||||
|
if IS_WIN:
|
||||||
os.environ['PYTHONHOME'] = sys.prefix
|
os.environ['PYTHONHOME'] = sys.prefix
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
@ -217,7 +217,7 @@ class BatchProcess(object):
|
|||||||
executor = file_quote(os.path.join(
|
executor = file_quote(os.path.join(
|
||||||
os.path.dirname(u(__file__)), u'process_executor.py'
|
os.path.dirname(u(__file__)), u'process_executor.py'
|
||||||
))
|
))
|
||||||
paths = sys.path[:]
|
paths = os.environ['PATH'].split(os.pathsep)
|
||||||
interpreter = None
|
interpreter = None
|
||||||
|
|
||||||
if os.name == 'nt':
|
if os.name == 'nt':
|
||||||
|
@ -226,7 +226,10 @@ def create_backup_job(sid):
|
|||||||
else:
|
else:
|
||||||
data = json.loads(request.data, encoding='utf-8')
|
data = json.loads(request.data, encoding='utf-8')
|
||||||
|
|
||||||
|
try:
|
||||||
backup_file = filename_with_file_manager_path(data['file'])
|
backup_file = filename_with_file_manager_path(data['file'])
|
||||||
|
except Exception as e:
|
||||||
|
return bad_request(errormsg=str(e))
|
||||||
|
|
||||||
# Fetch the server details like hostname, port, roles etc
|
# Fetch the server details like hostname, port, roles etc
|
||||||
server = Server.query.filter_by(
|
server = Server.query.filter_by(
|
||||||
@ -324,7 +327,10 @@ def create_backup_objects_job(sid):
|
|||||||
else:
|
else:
|
||||||
data = json.loads(request.data, encoding='utf-8')
|
data = json.loads(request.data, encoding='utf-8')
|
||||||
|
|
||||||
|
try:
|
||||||
backup_file = filename_with_file_manager_path(data['file'])
|
backup_file = filename_with_file_manager_path(data['file'])
|
||||||
|
except Exception as e:
|
||||||
|
return bad_request(errormsg=str(e))
|
||||||
|
|
||||||
# Fetch the server details like hostname, port, roles etc
|
# Fetch the server details like hostname, port, roles etc
|
||||||
server = Server.query.filter_by(
|
server = Server.query.filter_by(
|
||||||
|
@ -223,7 +223,11 @@ def create_import_export_job(sid):
|
|||||||
storage_dir = get_storage_directory()
|
storage_dir = get_storage_directory()
|
||||||
|
|
||||||
if 'filename' in data:
|
if 'filename' in data:
|
||||||
|
try:
|
||||||
_file = filename_with_file_manager_path(data['filename'], data['is_import'])
|
_file = filename_with_file_manager_path(data['filename'], data['is_import'])
|
||||||
|
except Exception as e:
|
||||||
|
return bad_request(errormsg=str(e))
|
||||||
|
|
||||||
if not _file:
|
if not _file:
|
||||||
return bad_request(errormsg=_('Please specify a valid file'))
|
return bad_request(errormsg=_('Please specify a valid file'))
|
||||||
|
|
||||||
|
@ -179,7 +179,10 @@ def create_restore_job(sid):
|
|||||||
else:
|
else:
|
||||||
data = json.loads(request.data, encoding='utf-8')
|
data = json.loads(request.data, encoding='utf-8')
|
||||||
|
|
||||||
|
try:
|
||||||
_file = filename_with_file_manager_path(data['file'])
|
_file = filename_with_file_manager_path(data['file'])
|
||||||
|
except Exception as e:
|
||||||
|
return bad_request(errormsg=str(e))
|
||||||
|
|
||||||
if _file is None:
|
if _file is None:
|
||||||
return make_json_response(
|
return make_json_response(
|
||||||
|
Loading…
Reference in New Issue
Block a user