# \[IGN-13838\] Gateway won't launch after upgrade from 8.1

**URL:** <https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399>\
**Category:** Ignition 8.3 Early Access\
**Created:** [August 5, 2025, 6:06pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399 "2025-08-05T18:06:26Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![dchambers](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dchambers/32/30319_2.png) [@dchambers](https://forum.inductiveautomation.com/u/dchambers)\
**Post date:** [August 5, 2025, 6:06pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/1 "2025-08-05T18:06:27Z")

</div>

Installation says it's successful, but gateway fails to launch and produces this error.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/e/de94f399b4fa6011b47b3d54230c267696875ed9.png)

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 5, 2025, 6:08pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/2 "2025-08-05T18:08:18Z")

</div>

Can you get the wrapper.log file and upload them or post the last error message(s) here as preformatted text? The stacktrace on that NPE is going to be helpful.

We may also need you to provide your .gwbk.

---

<div class="post-metadata">

**Author:** ![dchambers](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dchambers/32/30319_2.png) [@dchambers](https://forum.inductiveautomation.com/u/dchambers)\
**Post date:** [August 5, 2025, 6:15pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/3 "2025-08-05T18:15:09Z")

</div>

[wrapper.log](https://forum.inductiveautomation.com/uploads/short-url/qAXjldp5hudMkSvVeMuETHWVlw9.log) (2.7 MB)  
@PGriffith

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 5, 2025, 6:24pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/4 "2025-08-05T18:24:31Z")

</div>

Thanks, that's helpful. I'll get a ticket filed so we can get this fixed.

```stacktrace
2025-08-05 13:59:51:000
Error during context startup.
	java.lang.NullPointerException: Cannot invoke "com.inductiveautomation.ignition.gateway.auth.idp.internal.InternalIdentityProviderConfig.authMethods()" because "settings" is null
		at com.inductiveautomation.ignition.gateway.auth.idp.internal.InternalIdentityProviderType.validate(InternalIdentityProviderType.java:99)
		at com.inductiveautomation.ignition.gateway.auth.idp.internal.InternalIdentityProviderType.validate(InternalIdentityProviderType.java:35)
		at com.inductiveautomation.ignition.gateway.config.AbstractExtensionPoint.lambda$buildValidator$0(AbstractExtensionPoint.java:86)
		at com.inductiveautomation.ignition.gateway.config.ExtensionPointResourceCodec.validateSettings(ExtensionPointResourceCodec.java:188)
		at com.inductiveautomation.ignition.gateway.config.ExtensionPointResourceCodec.decodeFromJson(ExtensionPointResourceCodec.java:135)
		at com.inductiveautomation.ignition.gateway.config.ExtensionPointResourceCodec.decodeFromJson(ExtensionPointResourceCodec.java:29)
		at com.inductiveautomation.ignition.gateway.config.JsonResourceCodec.decodeFromJson(JsonResourceCodec.java:45)
		at com.inductiveautomation.ignition.gateway.config.JsonResourceCodec.decode(JsonResourceCodec.java:63)
		at com.inductiveautomation.ignition.gateway.config.NamedResourceHandler.decode(NamedResourceHandler.java:449)
		at java.base/java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
		at java.base/java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
		at java.base/java.util.AbstractList$RandomAccessSpliterator.forEachRemaining(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
		at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
		at java.base/java.util.stream.ReferencePipeline.collect(Unknown Source)
		at com.inductiveautomation.ignition.gateway.config.NamedResourceHandler$Lifecycle.onStartup(NamedResourceHandler.java:562)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycle.onStartup(ResourceCollectionLifecycle.java:61)
		at com.inductiveautomation.ignition.common.lifecycle.AbstractLifecycle.startup(AbstractLifecycle.java:19)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory$1.maybeStartLifecycle(ResourceCollectionLifecycleFactory.java:264)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory$1.lambda$updateOrStartAffected$4(ResourceCollectionLifecycleFactory.java:248)
		at java.base/java.util.Optional.ifPresent(Unknown Source)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory$1.lambda$updateOrStartAffected$5(ResourceCollectionLifecycleFactory.java:243)
		at java.base/java.util.ArrayList.forEach(Unknown Source)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory$1.updateOrStartAffected(ResourceCollectionLifecycleFactory.java:190)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory$1.collectionAdded(ResourceCollectionLifecycleFactory.java:145)
		at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(Unknown Source)
		at java.base/java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
		at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
		at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(Unknown Source)
		at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(Unknown Source)
		at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
		at java.base/java.util.stream.ReferencePipeline.forEach(Unknown Source)
		at com.inductiveautomation.ignition.gateway.resourcecollection.ResourceCollectionLifecycleFactory.onStartup(ResourceCollectionLifecycleFactory.java:61)
		at com.inductiveautomation.ignition.common.lifecycle.AbstractLifecycle.startup(AbstractLifecycle.java:19)
		at com.inductiveautomation.ignition.gateway.config.NamedResourceHandler.onStartup(NamedResourceHandler.java:436)
		at com.inductiveautomation.ignition.common.lifecycle.AbstractLifecycle.startup(AbstractLifecycle.java:19)
		at com.inductiveautomation.ignition.gateway.auth.idp.IdentityProviderManager.startup(IdentityProviderManager.java:362)
		at com.inductiveautomation.ignition.gateway.IgnitionGateway.startupInternal(IgnitionGateway.java:1240)
		at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl.startup(RedundancyManagerImpl.java:352)
		at com.inductiveautomation.ignition.gateway.IgnitionGateway.initRedundancy(IgnitionGateway.java:787)
		at com.inductiveautomation.ignition.gateway.IgnitionGateway.lambda$initInternal$1(IgnitionGateway.java:712)
		at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:550)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
		at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
		at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
		at java.base/java.lang.Thread.run(Unknown Source)

```

---

<div class="post-metadata">

**Author:** ![avaughn](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/avaughn/32/38972_2.png) [@avaughn](https://forum.inductiveautomation.com/u/avaughn)\
**Post date:** [August 7, 2025, 9:51pm UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/5 "2025-08-07T21:51:58Z")

</div>

After some further digging we were able to replicate this upgrade issue. The following warning showed in the logs which helped lead to replication.

```java
INFO | jvm 1 | 2025/08/05 13:48:22 | W [c.i.i.g.a.i.IdentityProviderMigrationStrategy] [13:48:22.061]: User source profile with ID 6 does not exist 

```

The problem with “settings” being set to null during the upgrade is due to an IdP being migrated that references a user source that’s no longer available. This specifically will occur if the IdP was created in older versions of Ignition that referenced the User Source by ID instead of the current implementation of referencing by Name.

Edit: If anyone else runs into this before we get it fixed, you could remove any IdPs that are referencing non-existent user sources prior to upgrading. Or after the upgrade either delete the IdP configuration or modify the settings property in the `config.json` file for the Identity Provider that has settings set to null. Then stop/start the service.

The folder path and example settings are below.

`\data\config\resources\core\ignition\identity-provider`

```python
  "settings": {
    "authMethods": [
      {
        "config": {},
        "type": "basic"
      }
    ],
    "rememberMeExp": 0,
    "sessionExp": 0,
    "sessionInactivityTimeout": 30,
    "userSource": "default"
  }

```

---

<div class="post-metadata">

**Author:** ![bryan.fletcher](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/bryan.fletcher/32/8921_2.png) [@bryan.fletcher](https://forum.inductiveautomation.com/u/bryan.fletcher)\
**Post date:** [December 19, 2025, 1:02am UTC](https://forum.inductiveautomation.com/t/ign-13838-gateway-wont-launch-after-upgrade-from-8-1/109399/6 "2025-12-19T01:02:39Z")

</div>

same here… upgrading from 8.1.51 to 8.3.2 - but this solution is not working for me  
gateway not starting  
I looked at my idendityProvider config.json and look like the solution  
wondering if you can see something in my wrapper.log

[wrapper.log](https://forum.inductiveautomation.com/uploads/short-url/aLfMP4seuQuoo6wwwCqOC3UGag3.log) (1.8 MB)
