Index: /branches/amp_3_7_2/scripts/import_es_snapshot.sh
===================================================================
--- /branches/amp_3_7_2/scripts/import_es_snapshot.sh	(revision 2846)
+++ /branches/amp_3_7_2/scripts/import_es_snapshot.sh	(working copy)
@@ -57,17 +57,20 @@
 log "Restoring snapshot from remote AMP directory: $DIR"
 
 # -----------------------------------------------
-# STEP 1 — Detect snapshot name on remote AMP
+# STEP 1 — Detection snapshot name on remote AMP
 # -----------------------------------------------
 log "[1/9] Detecting snapshot name on source AMP..."
 
-INDEX_FILE=$(sshpass -p "$AMP_PASS" ssh -o StrictHostKeyChecking=no \
+# Using -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa to fix "incorrect signature" issues
+SSH_OPTS="-o StrictHostKeyChecking=no -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa"
+
+INDEX_FILE=$(sshpass -p "$AMP_PASS" ssh $SSH_OPTS \
   "$AMP_USER@$AMP_IP" "ls -1 $DIR/index-* 2>/dev/null | head -1"
 )
 
 [[ -z "$INDEX_FILE" ]] && fail "No index-* file found on remote AMP"
 
-SNAP_NAME=$(sshpass -p "$AMP_PASS" ssh -o StrictHostKeyChecking=no \
+SNAP_NAME=$(sshpass -p "$AMP_PASS" ssh $SSH_OPTS \
   "$AMP_USER@$AMP_IP" "grep -Po '\"name\"\\s*:\\s*\"\\K[^\"]+' $INDEX_FILE | head -1"
 )
 
@@ -98,7 +101,7 @@
 log "[3/9] Copying snapshot directory..."
 
 RSYNC_OUTPUT=$(sshpass -p "$AMP_PASS" rsync -avz \
-    -e "ssh -o StrictHostKeyChecking=no" \
+    -e "ssh $SSH_OPTS" \
     "$AMP_USER@$AMP_IP:$DIR/" "$LOCAL_SNAPSHOT_DIR/" 2>&1)
 
 RSYNC_RET=$?
@@ -112,11 +115,7 @@
 
     # FALLBACK TO SCP
     # recursive copy of contents
-    # Note: scp -r user@host:dir/* local_dir/ might behave differently depending on glob expansion on remote
-    # safer to scp -r user@host:dir local_dir and handle nesting or just ensure DIR ends with /
-    
-    # Trying specific scp command:
-    SCP_OUTPUT=$(sshpass -p "$AMP_PASS" scp -r -o StrictHostKeyChecking=no \
+    SCP_OUTPUT=$(sshpass -p "$AMP_PASS" scp -r $SSH_OPTS \
         "$AMP_USER@$AMP_IP:$DIR/"* "$LOCAL_SNAPSHOT_DIR/" 2>&1)
         
     SCP_RET=$?
@@ -170,6 +169,18 @@
 log "Repository registered"
 
 # -----------------------------------------------
+# STEP 5.5 — Increase max shards per node
+# -----------------------------------------------
+log "[5.5/9] Increasing cluster max_shards_per_node to 5000..."
+
+SHARD_SETTINGS=$(curl -s -XPUT "http://localhost:9200/_cluster/settings" \
+  -H "Content-Type: application/json" \
+  -d '{ "persistent": { "cluster.max_shards_per_node": 5000 } }')
+
+echo "$SHARD_SETTINGS" >> "$LOG_FILE"
+log "Cluster settings updated"
+
+# -----------------------------------------------
 # STEP 6 — Extract index list
 # -----------------------------------------------
 log "[6/9] Extracting index list..."
Index: /branches/amp_3_7_2/src/webui/webui/htdocs/new/src/hive/controller/snapshot_controller.py
===================================================================
--- /branches/amp_3_7_2/src/webui/webui/htdocs/new/src/hive/controller/snapshot_controller.py	(revision 2846)
+++ /branches/amp_3_7_2/src/webui/webui/htdocs/new/src/hive/controller/snapshot_controller.py	(working copy)
@@ -8,6 +8,7 @@
 
 from hive.services.snapshot_service import SnapshotService
 from cm.lib.libbasic_operation import oper_log
+from hive.utils import andebug
 
 LOG_FILE_IMPORT = "/var/log/es_import.log"
 LOG_FILE_EXPORT = "/var/log/es_export.log"
@@ -72,15 +73,15 @@
             path=body.get("path")
         )
 
-        error_msg = result.get("error", "")
+        error_msg = result.get("error") or result.get("stderr") or result.get("stdout") or ""
 
         if result.get("return_code") == 0:
             return json_response({"status": "Successful", "message": "Snapshot export completed successfully"})
         elif result.get("return_code") == 1:
-            oper_log("error", "system", "Error exporting snapshot: {}".format(str(error_msg)))
+            oper_log("error", "system", "Error exporting snapshot: %s" % str(error_msg))
             return json_response({"status": "Failed",
                                   "message": "Error exporting snapshot",
-                                  "details": "{}".format(str(error_msg))})
+                                  "details": error_msg})
         else:
             oper_log("error", "system", "Error exporting snapshot: {}".format(str(result)))
             return json_response({"status": "Failed", "message": "Error exporting snapshot"}, 500)
@@ -131,15 +132,16 @@
             start_date=start_date,
             end_date=end_date
         )
-        error_msg = result.get("error", "")
+        andebug('an.model.cli', result)
+        error_msg = result.get("error") or result.get("stderr") or result.get("stdout") or ""
 
         if result.get("return_code") == 0:
             return json_response({"status": "Successful", "message": "Snapshot import completed successfully"})
         elif result.get("return_code") == 1:
-            oper_log("error", "system", "Error importing snapshot: {}".format(str(error_msg)))
+            oper_log("error", "system", "Error importing snapshot: %s" % str(error_msg))
             return json_response({"status": "Failed",
                                   "message": "Error importing snapshot",
-                                  "details": "{}".format(error_msg)})
+                                  "details": error_msg})
         else:
             oper_log("error", "system", "Error importing snapshot: {}".format(str(result)))
             return json_response({"status": "Failed", "message": "Error importing snapshot"}, 500)
