diff --git a/lib/xos-synchronizer/xossynchronizer/modelaccessor.py b/lib/xos-synchronizer/xossynchronizer/modelaccessor.py
index c2d5114..72fc3c5 100644
--- a/lib/xos-synchronizer/xossynchronizer/modelaccessor.py
+++ b/lib/xos-synchronizer/xossynchronizer/modelaccessor.py
@@ -41,7 +41,6 @@
 orig_sigint = None
 model_accessor = None
 
-
 class ModelAccessor(object):
     def __init__(self):
         self.all_model_classes = self.get_all_model_classes()
@@ -208,7 +207,7 @@
 
     if Config.get("models_dir"):
         version = autodiscover_version_of_main(max_parent_depth=0) or "unknown"
-        log.info("Service version is %s" % version)
+        log.info("Service version is %s" % version, core_version=Config.get("core_version"))
         try:
             if Config.get("desired_state") == "load":
                 ModelLoadClient(client).upload_models(
@@ -246,6 +245,23 @@
                 client.connected = False
                 client.connect()
                 return
+
+            elif (
+                hasattr(e, "code")
+                and callable(e.code)
+                and hasattr(e.code(), "name")
+                and (e.code().name) == "INVALID_ARGUMENT"
+            ):
+                # in this case there is a version mismatch between the service and the core,
+                # shut down the process so it's clear something is wrong
+                log.error(e.details())
+
+                # kill the process so the operator is aware something is wrong
+                log.info("shutting down")
+                exit_while_inside_reactor(reactor, 1)
+                return
+
+
             log.exception("failed to onboard models")
             # If it's some other error, then we don't need to force a reconnect. Just try the LoadModels() again.
             reactor.callLater(10, functools.partial(grpcapi_reconnect, client, reactor))
