diff --git a/web/pgadmin/static/scss/_alert.scss b/web/pgadmin/static/scss/_alert.scss
index e8676b8c..f5082c37 100644
--- a/web/pgadmin/static/scss/_alert.scss
+++ b/web/pgadmin/static/scss/_alert.scss
@@ -21,7 +21,8 @@
   display: inline-block;
 }
 
-.alert.alert-info {
+.alert.alert-info,
+.alert.alert-danger {
   padding: 0.5rem;
 }
 
diff --git a/web/pgadmin/tools/grant_wizard/__init__.py b/web/pgadmin/tools/grant_wizard/__init__.py
index 6ef374b1..6ca37204 100644
--- a/web/pgadmin/tools/grant_wizard/__init__.py
+++ b/web/pgadmin/tools/grant_wizard/__init__.py
@@ -191,6 +191,8 @@ def properties(sid, did, node_id, node_type):
     server_prop = server_info
 
     res_data = []
+    failed_objects = []
+    msg = None
     manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
     conn = manager.connection(did=did)
 
@@ -231,11 +233,11 @@ def properties(sid, did, node_id, node_type):
                 node_id=node_id, type='function')
 
             status, res = conn.execute_dict(SQL)
-
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('function')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch procedures only if server type is EPAS or PG >= 11
         if (len(server_prop) > 0 and
@@ -250,9 +252,10 @@ def properties(sid, did, node_id, node_type):
             status, res = conn.execute_dict(SQL)
 
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('procedure')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch trigger functions
         if ntype in ['schema', 'trigger_function']:
@@ -262,9 +265,10 @@ def properties(sid, did, node_id, node_type):
             status, res = conn.execute_dict(SQL)
 
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('trigger function')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch Sequences against schema
         if ntype in ['schema', 'sequence']:
@@ -274,8 +278,10 @@ def properties(sid, did, node_id, node_type):
 
             status, res = conn.execute_dict(SQL)
             if not status:
-                return internal_server_error(errormsg=res)
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('sequence')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch Tables against schema
         if ntype in ['schema', 'table']:
@@ -285,9 +291,10 @@ def properties(sid, did, node_id, node_type):
 
             status, res = conn.execute_dict(SQL)
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('table')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch Views against schema
         if ntype in ['schema', 'view']:
@@ -297,9 +304,10 @@ def properties(sid, did, node_id, node_type):
 
             status, res = conn.execute_dict(SQL)
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('view')
+            else:
+                res_data.extend(res['rows'])
 
         # Fetch Materialzed Views against schema
         if ntype in ['schema', 'mview']:
@@ -309,12 +317,19 @@ def properties(sid, did, node_id, node_type):
 
             status, res = conn.execute_dict(SQL)
             if not status:
-                return internal_server_error(errormsg=res)
-
-            res_data.extend(res['rows'])
+                current_app.logger.error(res)
+                failed_objects.append('materialized view')
+            else:
+                res_data.extend(res['rows'])
+
+    if len(failed_objects) > 0:
+        msg = gettext('Unable to fetch the {} objects'.format(
+            ",".join(failed_objects))
+        )
 
-    return ajax_response(
-        response=res_data,
+    return make_json_response(
+        result=res_data,
+        info=msg,
         status=200
     )
 
diff --git a/web/pgadmin/tools/grant_wizard/static/js/grant_wizard.js b/web/pgadmin/tools/grant_wizard/static/js/grant_wizard.js
index 85d78da2..4dd904b4 100644
--- a/web/pgadmin/tools/grant_wizard/static/js/grant_wizard.js
+++ b/web/pgadmin/tools/grant_wizard/static/js/grant_wizard.js
@@ -608,9 +608,28 @@ define([
               $('.wizard-progress-bar p').show();
 
               coll.fetch({
-                success: function() {
+                success: function(c, xhr) {
                   $('.wizard-progress-bar p').html('');
                   $('.wizard-progress-bar').hide();
+                  c.set(xhr.result, {parse: true});
+                  // If some objects failed while fetching then we will notify the user
+                  if (xhr && xhr.info && xhr.info !== '') {
+                    $('.pg-prop-status-bar .alert-text').html(xhr.info);
+                    $('.pg-prop-status-bar').css('visibility', 'visible');
+                  }
+                },
+                error: function(m, xhr) {
+                  // If the main request fails as whole then
+                  let msg;
+                  if (xhr && xhr.responseJSON && xhr.responseJSON.errormsg) {
+                    msg = xhr.responseJSON.errormsg;
+                  }
+
+                  if(!msg) {
+                    msg = gettext('Unable to fetch the database objects due to an error');
+                  }
+                  $('.wizard-progress-bar p').removeClass('alert-info').addClass('alert-danger');
+                  $('.wizard-progress-bar p').text(msg);
                 },
                 reset: true,
               }, this);
