alexbelgium / hassio-addons

My homeassistant addons
MIT License
1.5k stars 214 forks source link

🐛 [Omada] Rebooting the addon makes me lose access to my configuration #1063

Open ChriKn opened 11 months ago

ChriKn commented 11 months ago

Description

Since a specific update, where I lost my configuration / session / had to redo everything from scratch, it seems to happen again everytime I reboot the plugin. I now have a backup and recreate an account / link it to the tp-link account, but it still means having to reset everything every so often, which isn't great.

This seems to show up in the logs : 11-05-2023 17:23:17.699 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"

Of course, there was a working profile before the reboot.

Reproduction steps

1. reboot the plugin
2. open the plugin
3. see the account has disappeared

Addon Logs

11-05-2023 17:23:17.151 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: start run omada tasks
11-05-2023 17:23:17.151 INFO [main] [] c.t.s.o.s.t.SpringBootStartUpTask(): record: task SpringBootStartupTask start

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.6.6)

11-05-2023 17:23:17.697 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Starting OmadaLinuxMain v5.12.7 using Java 17.0.8.1 on db21ed7f-omada with PID 7 (/opt/tplink/EAPController/lib/local-starter-5.12.7.jar started by omada in /opt/tplink/EAPController/lib)
11-05-2023 17:23:17.699 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"
11-05-2023 17:23:26.578 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:28.325 INFO [main] [] c.t.s.o.m.l.p.e.LicenseEventCenterProperties(): licenseManagerTopic: omada.cloud.license.prd.topics
11-05-2023 17:23:30.792 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): upgradeSendReq workGroup core thread num is 1, max thread num is 1
11-05-2023 17:23:31.783 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:32.289 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): manager workGroup core thread  num is 16, max thread num is 16
11-05-2023 17:23:32.632 INFO [main] [] c.t.s.o.m.c.d.m.s.a.AbstractActiveSiteCacheImpl(): Scheduled ActiveSitesCache period flush buf task at fixed rate of 30000 millis.
11-05-2023 17:23:37.429 INFO [main] [] c.t.s.o.m.c.d.m.s.w.s.c.WirelessGroupConfig(): ssidWorkerGroup thread size is 4, queue size is 1500
11-05-2023 17:23:44.035 INFO [main] [] c.t.s.o.m.d.d.m.m.c.DeviceMsgConfig(): setMsgThreadPool thread coreSize is 4, maxSize is 4,queue size is 4500
11-05-2023 17:23:44.456 INFO [main] [] c.t.s.e.s.c.c(): start schedule remove expire device... period = 10
11-05-2023 17:23:44.473 INFO [main] [] c.t.s.e.s.c.c(): update rateLimiterCache, permitsPerSecond = 5.0
11-05-2023 17:23:50.608 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.618 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.619 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.619 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.620 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.620 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.621 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.621 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.622 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.625 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-05-2023 17:23:50.684 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:52.587 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:53.654 WARN [main] [] c.t.c.r.c.d.MemoryDictionary(): Duplicate type code [-1,207], overwriting Digest-Attributes with WISPr-Redirection-URL
11-05-2023 17:23:53.654 WARN [main] [] c.t.c.r.c.d.MemoryDictionary(): Duplicate type code [-1,207], overwriting WISPr-Redirection-URL with WISPr-Location-ID
11-05-2023 17:23:53.758 INFO [main] [] c.t.c.c.a.c.a.e.c.ActionConfig(): Success to init eap action dispatcher, num = 20, invokes = {EAP_TTLS_ACTION_PROCESS_CLIENT_KEY_FULL=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action3(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_CLIENT_KEY_FULL=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action3(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_ACK=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action4(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_START=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action4(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_EAPMSCHAPV2_VERIFIED_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action7(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_MD5_ACTION_PRECESS_CHALLENGE_VALUE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket@420da686, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_CLIENT_HELLO=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_EAP_MD5_CHALLENGE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action5(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_MSCHAPV2_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action7(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_SEND_SERVER_HELLO_NEXT_FRAGMENT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action2(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_EAPMSCHAPV2_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@1fd2d192, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action6(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_SEND_SERVER_HELLO_NEXT_FRAGMENT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action2(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_MD5_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket@420da686, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_START=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action5(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_MD5_CHALLENGE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action6(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_FINISH=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action9(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_MSCHAPV2_VERIFIED_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action8(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_CLIENT_HELLO=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@5d87687e, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq))}
11-05-2023 17:23:53.778 INFO [main] [] c.t.c.c.a.c.a.c.EapAuthConfig(): Success to init eap auth dispatcher, num = 4, invokes = {EAP_TTLS=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapTTlsAuthHandler@9ae48b9, PEAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapPeapAuthHandler@1d7625c, EAP_TLS=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapTlsAuthHandler@431cb57, EAP_MD5=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapMd5AuthHandler@8666ac0}
11-05-2023 17:23:53.784 INFO [main] [] c.t.c.c.a.c.a.c.AuthConfig(): Success to init radius auth dispatcher, num = 9, invokes = {MAC_EAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.MacEapAuthHandler@111b9fd5, PPSK_UNBOUND_MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PapPpskUnboundMacAuthHandler@65e17e44, USER_ACCESS_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessPapAuthHandler@3027f381, PORTAL_CHAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.ChapPortalAuthHandler@1336d663, MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.MacPapAuthHandler@68be3d40, USER_ACCESS_EAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapAuthHandler@1a424719, USER_ACCESS_CHAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessChapAuthHandler@4710bb78, PORTAL_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PapPortalAuthHandler@70a2b261, PPSK_BOUND_MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PpskBoundMacPapAuthHandler@5c2df5f0}
11-05-2023 17:23:53.811 INFO [main] [] c.t.c.c.a.c.a.a.AccountingConfig(): Success to init radius accounting handler, num = 0, invokes = {}
11-05-2023 17:23:53.835 INFO [main] [] c.t.s.l.c.s.d.CacheLogConsumeHandler(): log mq consume task is start...
11-05-2023 17:23:53.837 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Started OmadaLinuxMain in 36.582 seconds (JVM running for 39.547)
11-05-2023 17:23:53.865 INFO [main] [] c.t.s.o.m.d.p.b.a(): manager maintenance Handling event: org.springframework.boot.context.event.ApplicationStartedEvent[source=org.springframework.boot.SpringApplication@6d81bb3f]
11-05-2023 17:23:53.929 INFO [main] [] c.t.s.o.s.t.SpringBootStartUpTask(): record: task SpringBootStartupTask finished
11-05-2023 17:23:53.929 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before OmadacInitTask
11-05-2023 17:23:53.957 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before init bean
11-05-2023 17:23:53.972 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: after init bean
11-05-2023 17:23:54.071 INFO [main] [] c.t.s.o.s.p.m.d.b(): No startUpInfo exists.
11-05-2023 17:23:54.116 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): Start init data.
11-05-2023 17:23:54.117 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Start init data.
11-05-2023 17:23:54.165 INFO [main] [] c.t.s.o.i.a.b.d(): name=default_name tenant is not exist.
11-05-2023 17:23:54.168 INFO [main] [] c.t.s.o.i.a.b.d(): name=default_name tenant is not exist.
11-05-2023 17:23:54.462 INFO [main] [] c.t.s.o.i.d.m.o.b.a.a(): Initializing client settings of OmadacId: 8e93088852ec8f42adf32eaafd08fc38
11-05-2023 17:23:54.598 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): succeed in initializing default omadac OmadacVO(id=8e93088852ec8f42adf32eaafd08fc38, name=Omada Controller_08FC38, pattern=0)
11-05-2023 17:23:54.646 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before init for hwc
11-05-2023 17:23:54.646 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: after init for hwc
11-05-2023 17:23:54.944 INFO [main] [] c.t.s.o.p.p.r.a.c(): init nioEventLoopGroup
11-05-2023 17:23:55.025 INFO [main] [] c.t.s.o.d.g.c.d.ThreadConfiguration(): device-gateway datatrack workGroup core thread  num is 8, max thread num is 8
11-05-2023 17:23:55.698 INFO [main] [] c.t.s.o.d.g.c.f.b.c(): file download mq consume task is start...
11-05-2023 17:23:55.736 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): adopt workGroup core thread num is 8, max thread num is8
11-05-2023 17:23:55.978 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): discovery workGroup core thread num is 2, max thread num is 10
11-05-2023 17:23:56.343 INFO [main] [] c.t.s.o.c.c.p.c.o.s.ActiveSiteCacheImpl(): Scheduled ActiveSitesCache period flush buf task at fixed rate of 30000 millis.
11-05-2023 17:23:59.204 WARN [http-nio-8088-exec-1] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:59.224 WARN [http-nio-8088-exec-1] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-05-2023 17:23:59.811 INFO [main] [] c.t.s.o.d.g.c.d.ThreadConfiguration(): device-gateway datatrack time task workGroup core thread  num is 8, max thread num is 8
11-05-2023 17:24:00.424 INFO [comm-pool-2] [] c.t.s.o.s.t.OmadacInitTask(): Starting collection maintenance.
11-05-2023 17:24:00.435 INFO [main] [] c.t.s.o.p.b.b.d(): DisconnectRequestServer start
11-05-2023 17:24:00.563 INFO [main] [] c.t.s.o.s.d.a(): record: after OmadacInitTask
11-05-2023 17:24:00.563 INFO [main] [] c.t.s.o.s.t.CloudStartUpTask(): record: CloudStartUpTask start
11-05-2023 17:24:00.564 INFO [main] [] c.t.s.o.s.t.CloudStartUpTask(): record: CloudStartUpTask finished
11-05-2023 17:24:00.564 INFO [main] [] c.t.s.o.s.t.OmadacDiscoveryStartUpTask(): record: OmadacDiscoveryStartUpTask start
11-05-2023 17:24:00.564 INFO [main] [] c.t.s.o.s.t.OmadacDiscoveryStartUpTask(): record: OmadacDiscoveryStartUpTask finished
11-05-2023 17:24:00.672 INFO [main] [] c.t.s.o.d.g.a(): startServers, DISCOVERY host:null.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): discovery Port is 29810.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): manage    port v1 is 29811.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): manage    port v2 is 29814.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): adopt     port v1 is 29812.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): upgrade   port is 29813.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): transfer  port is 29815.
11-05-2023 17:24:00.674 INFO [main] [] c.t.s.o.d.g.a(): rtty port is 29816.
11-05-2023 17:24:00.710 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyUdpServer bind /0.0.0.0:29810, export localhost/127.0.0.1:29810
11-05-2023 17:24:00.718 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29812 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-05-2023 17:24:00.722 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29812, export localhost/127.0.0.1:29812
11-05-2023 17:24:00.723 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29811 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-05-2023 17:24:00.724 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29811, export localhost/127.0.0.1:29811
11-05-2023 17:24:00.725 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29813 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-05-2023 17:24:00.726 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29813, export localhost/127.0.0.1:29813
11-05-2023 17:24:00.728 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29814 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-05-2023 17:24:00.728 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29814, export localhost/127.0.0.1:29814
11-05-2023 17:24:00.729 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29815 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-05-2023 17:24:00.730 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29815, export localhost/127.0.0.1:29815
11-05-2023 17:24:00.733 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start RttyNettyTcpServer bind /0.0.0.0:29816, export localhost/127.0.0.1:29816
11-05-2023 17:24:00.733 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Device connector server started.
11-05-2023 17:24:00.734 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Omada Controller started
11-05-2023 17:24:00.734 INFO [main] [] c.t.s.o.s.t.SuccessExitTask(): Omada Controller started
11-05-2023 17:24:00.734 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: finished run omada tasks
11-05-2023 17:24:06.371 INFO [comm-pool-2] [] c.t.s.o.s.t.OmadacInitTask(): Finished collection maintenance.

Architecture

amd64

OS

HAos

BenJamesAndo commented 11 months ago

I'm experiencing the same issue. I'll just rollback to an older version for now.

github-actions[bot] commented 10 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Geraldziu commented 10 months ago

The same happened to me :(

Geraldziu commented 10 months ago

The discussion is here https://github.com/mbentley/docker-omada-controller/discussions/344 and there is a workaround. But this would mean that we should connect to MongoDB inside the addon. Does anyone know how to connect to it?

s-e-t-h commented 10 months ago

@Geraldziu what if I reinstall and upload a backup?

BenJamesAndo commented 10 months ago

I've switched to using https://github.com/jkunczik/home-assistant-omada Omada HA addon and it works even after rebooting.

s-e-t-h commented 10 months ago

I've switched to using https://github.com/jkunczik/home-assistant-omada Omada HA addon and it works even after rebooting.

Thanks!

alexbelgium commented 10 months ago

Thanks - if there is a working addon then I'll remove this one from my repo

Geraldziu commented 10 months ago

Does anybody have any idea how to connect to the MongoDB of the broken addon? :) I would really hate to reconfigure my whole network

PS. Yes, I know, backup, yes had them, but after the addon ate my storage I deleted the backups from before it was broken. Unfortunately.

alexbelgium commented 10 months ago

Hi, I can recheck again to make it remanent by looking how the other add-on is doing it, I just wanted to avoid taking the work from another ; now that paperless is working again which was my latest focus I can look again

Whatsek commented 10 months ago

Hi, I can recheck again to make it remanent by looking how the other add-on is doing it, I just wanted to avoid taking the work from another ; now that paperless is working again which was my latest focus I can look again

The other addon is only working for Rasbberrys, cant install it on my intel NUC (CPU not compatible) So switching is not an option for me yet, restored the previous version from backup now.

alexbelgium commented 10 months ago

What is the last working version? It will give me a starting point thanks!

alexbelgium commented 10 months ago

Ok, I've pushed a test version that should restore the link with the /data. Please let me know if that works, or the latest version of the addon that worked and I can restore that logic - tested working

Whatsek commented 10 months ago

Ok, I've pushed a test version that should restore the link with the /data. Please let me know if that works, or the latest version of the addon that worked and I can restore that logic - tested working

Thank you for your time and awesome repository!

Tested this version just now, I upgraded fom: 5.9-chromium-amd64-2023-05-26 to version: 5.12-2023-11-21-2. But lost the configration. In the logfile the same error: c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"

I cant tell if 5.9-chromium-amd64-2023-05-26 is the last version, but that was the first version that worked for me. I tried newer backups, but maybe I was too impatient. I can provide some information for you, logfiles or something before I restore a backup, happy to help. I can also retry another test version. Thanks!

alexbelgium commented 10 months ago

Thanks i'll check where that version stored it's data. I wonder if at one time i didn't store it in /config/addons_config/omada then changed to /data

alexbelgium commented 10 months ago

I switch in Oct 2022 from CONFIGSOURCE="/config/addons_config/omada" To CONFIGSOURCE="/data"

To be sure, do you have a folder named /config/addons_config/omada?

Whatsek commented 10 months ago

I switch in Oct 2022 from CONFIGSOURCE="/config/addons_config/omada" To CONFIGSOURCE="/data"

To be sure, do you have a folder named /config/addons_config/omada?

Yes I have, only containiing one file:

/homeassistant/addons_config/omada/config.yaml

alexbelgium commented 10 months ago

Then this means that your files are really in /data... I don't understand why your omada instance doesn't pick it up...

alexbelgium commented 10 months ago

Hi, just read a comparable issue on the main upstream repo : https://github.com/mbentley/docker-omada-controller/issues/325#issuecomment-1666637873

The recommendation : start the version still working, backup all your settings from the webUI, start clean with the latest version, and reimpory everything! This seems indeed the best way forward in case the mongodb files were messed up by moving forward or backward with versions

chiefcomm commented 10 months ago

Hi, just read a comparable issue on the main upstream repo : mbentley/docker-omada-controller#325 (comment)

The recommendation : start the version still working, backup all your settings from the webUI, start clean with the latest version, and reimpory everything! This seems indeed the best way forward in case the mongodb files were messed up by moving forward or backward with versions

Thanks for all the inputs/suggestions, I have just removed the add-on, rebooted OS, installed the add-on with no improvement on reboot the add-on defaults to no config and have to restore from backup. Is there a specific line in the config.yaml that could help?

alexbelgium commented 10 months ago

Hi, not sure to understand : according to a check on google it seems there should be a "Backup & Restore" setting in the webui? I don't use omada but this thread is based on the same mbentley image that my addon is using https://www.reddit.com/r/TPLink_Omada/comments/q8q94r/no_backup_option_on_software_controller/

Geraldziu commented 10 months ago

Unfortunately after last update, I still have the same error, and I don't have a backup from before 5.12 when everything was working

11-23-2023 18:29:04.411 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Starting OmadaLinuxMain v5.12.7 using Java 17.0.8.1 on db21ed7f-omada with PID 7 (/opt/tplink/EAPController/lib/local-starter-5.12.7.jar started by omada in /opt/tplink/EAPController/lib)
11-23-2023 18:29:04.427 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"
BenJamesAndo commented 10 months ago

Hi, I can recheck again to make it remanent by looking how the other add-on is doing it, I just wanted to avoid taking the work from another ; now that paperless is working again which was my latest focus I can look again

The other addon is only working for Rasbberrys, cant install it on my intel NUC (CPU not compatible) So switching is not an option for me yet, restored the previous version from backup now.

The beta version supports AMD64 CPU's, which is what I'm running mine on. It's my understanding that the stable version will support AMD64 soon. But running a beta version isn't for everyone.

Geraldziu commented 10 months ago

I have continued the discussion with Matt Bentley in that [discussion] (https://github.com/mbentley/docker-omada-controller/discussions/344#discussioncomment-7667310) and right now it looks like after add-on is restarted it doesn't have access to previous persistent data or the data is not being saved when the container is closed (mine probably crashed)

Geraldziu commented 10 months ago

I also tried https://github.com/jkunczik/home-assistant-omada, but for some reason the add-on is crushing, and it eats a lot of resources.

alexbelgium commented 10 months ago

Hi, I can't replicate here it seems to work for me. Here is what I did :

Here is my start log :

-----------------------------------------------------------
 Add-on: Omada
 TP-Link Omada Controller
-----------------------------------------------------------
 Add-on version: 5.12-2023-11-22-3
 You are running the latest version of this add-on.
 System: Home Assistant OS 11.1  (aarch64 / raspberrypi4-64)
 Home Assistant Core: 2023.11.3
 Home Assistant Supervisor: 2023.11.6
-----------------------------------------------------------
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums
-----------------------------------------------------------
 Provided by: https://github.com/alexbelgium/hassio-addons 
-----------------------------------------------------------
Creating directory
Creating symlink
ln: failed to create symbolic link '/opt/tplink/EAPController/data/html': File exists
Updating permissions
/./etc/cont-init.d/00-folders.sh: line 50: bashio::log.warning: command not found
Timezone set from Etc/UTC to Europe/Brussels
Setting permissions for the config.yaml directory

Load environment variables from /config/config.yaml if existing
If accessing the file with filebrowser it should be mapped to /addon_configs/*-omada/config.yaml
---------------------------------------------------------
Wiki here on how to use : github.com/alexbelgium/hassio-addons/wiki/Add‐ons-feature-:-add-env-variables

... no config file, creating one from template. Please customize the file in /config/config.yaml before restarting.
... no env variables found, exiting
Execute /config/omada.sh if existing
---------------------------------------------------------
If accessing the file with filebrowser it should be mapped to /config/*-omada/omada.sh
Wiki here : github.com/alexbelgium/hassio-addons/wiki/Add-ons-feature-:-customisation
... no script found, exiting
INFO: Validating user/group (omada:omada) exists with correct UID/GID (508:508)
INFO: Group (omada) doesn't exist; creating
INFO: User (omada) doesn't exist; creating
INFO: Time zone set to 'Europe/Brussels'
INFO: Value of 'manage.http.port' already set to 8088 in omada.properties
INFO: Value of 'manage.https.port' already set to 8043 in omada.properties
INFO: Value of 'portal.http.port' already set to 8088 in omada.properties
INFO: Value of 'portal.https.port' already set to 8843 in omada.properties
INFO: Value of 'port.adopt.v1' already set to 29812 in omada.properties
INFO: Value of 'port.app.discovery' already set to 27001 in omada.properties
INFO: Value of 'port.upgrade.v1' already set to 29813 in omada.properties
INFO: Value of 'port.manager.v1' already set to 29811 in omada.properties
INFO: Value of 'port.manager.v2' already set to 29814 in omada.properties
INFO: Value of 'port.discovery' already set to 29810 in omada.properties
INFO: Value of 'port.transfer.v2' already set to 29815 in omada.properties
INFO: Value of 'port.rtty' already set to 29816 in omada.properties
INFO: Value of 'mongo.external' already set to false in omada.properties
INFO: Value of 'eap.mongod.uri' already set to mongodb://127.0.0.1:27217/omada in omada.properties
WARN: Ownership not set correctly on '/opt/tplink/EAPController/data'; setting correct ownership (omada:omada)
WARN: Ownership not set correctly on '/opt/tplink/EAPController/logs'; setting correct ownership (omada:omada)
WARN: Ownership not set correctly on '/opt/tplink/EAPController/properties'; setting correct ownership (omada:omada)
INFO: Importing cert from /cert/tls.[key|crt]
INFO: Version check passed; image version (5.12.7) >= the last version ran (); writing image version to last ran file...
INFO: userland/kernel check passed
INFO: Starting Omada Controller as user omada
tail: cannot open '/opt/tplink/EAPController/logs/server.log' for reading: No such file or directory
tail: '/opt/tplink/EAPController/logs/server.log' has appeared;  following new file
11-29-2023 16:40:44.846 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: start the omada controller
11-29-2023 16:40:44.873 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: set property finished
11-29-2023 16:40:44.893 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: configure log finished
11-29-2023 16:40:44.912 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap prepare
11-29-2023 16:40:44.945 INFO [main] [] c.t.s.o.c.o.a.b(): success to load configuration omada.properties
11-29-2023 16:40:44.959 INFO [log4j-thread] [] c.t.s.o.c.o.OmadacType(): omadacType: Local Controller
11-29-2023 16:40:45.174 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): going to start local mongod.
11-29-2023 16:40:45.788 INFO [main] [] c.t.s.o.s.s.b(): mongodb process id is 324
11-29-2023 16:40:45.794 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Mongo DB server started
11-29-2023 16:40:45.795 INFO [main] [] c.t.s.o.s.s.b(): Mongo DB server started
11-29-2023 16:40:48.421 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap record finished
11-29-2023 16:40:48.423 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap startup
11-29-2023 16:40:48.721 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: start run omada tasks
11-29-2023 16:40:48.724 INFO [main] [] c.t.s.o.s.t.SpringBootStartUpTask(): record: task SpringBootStartupTask start

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.6.6)

11-29-2023 16:40:51.835 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Starting OmadaLinuxMain v5.12.7 using Java 17.0.8.1 on db21ed7f-omada with PID 7 (/opt/tplink/EAPController/lib/local-starter-5.12.7.jar started by omada in /opt/tplink/EAPController/lib)
11-29-2023 16:40:51.852 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"
11-29-2023 16:41:54.585 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:42:08.232 INFO [main] [] c.t.s.o.m.l.p.e.LicenseEventCenterProperties(): licenseManagerTopic: omada.cloud.license.prd.topics
11-29-2023 16:42:24.017 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): upgradeSendReq workGroup core thread num is 1, max thread num is 1
11-29-2023 16:42:30.633 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:42:34.589 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): manager workGroup core thread  num is 16, max thread num is 16
11-29-2023 16:42:36.512 INFO [main] [] c.t.s.o.m.c.d.m.s.a.AbstractActiveSiteCacheImpl(): Scheduled ActiveSitesCache period flush buf task at fixed rate of 30000 millis.
11-29-2023 16:43:01.846 INFO [main] [] c.t.s.o.m.c.d.m.s.w.s.c.WirelessGroupConfig(): ssidWorkerGroup thread size is 4, queue size is 1500
11-29-2023 16:43:30.214 INFO [main] [] c.t.s.o.m.d.d.m.m.c.DeviceMsgConfig(): setMsgThreadPool thread coreSize is 4, maxSize is 4,queue size is 4500
11-29-2023 16:43:31.857 INFO [main] [] c.t.s.e.s.c.c(): start schedule remove expire device... period = 10
11-29-2023 16:43:31.927 INFO [main] [] c.t.s.e.s.c.c(): update rateLimiterCache, permitsPerSecond = 5.0
11-29-2023 16:43:49.859 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.902 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.906 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.909 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.913 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.917 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.923 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.929 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.934 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:49.953 INFO [main] [] c.t.s.o.a.d.c.SwaggerConfig(): initOpenAPI.docInfo=DocInfo(title=Omada Open API, description=Omada Open API, version=v0.1, websiteName=Omada Controller, websiteUrl=http://omada.tplink.com)
11-29-2023 16:43:50.143 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:44:01.013 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:44:06.844 WARN [main] [] c.t.c.r.c.d.MemoryDictionary(): Duplicate type code [-1,207], overwriting Digest-Attributes with WISPr-Redirection-URL
11-29-2023 16:44:06.844 WARN [main] [] c.t.c.r.c.d.MemoryDictionary(): Duplicate type code [-1,207], overwriting WISPr-Redirection-URL with WISPr-Location-ID
11-29-2023 16:44:07.191 INFO [main] [] c.t.c.c.a.c.a.e.c.ActionConfig(): Success to init eap action dispatcher, num = 20, invokes = {PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_MD5_CHALLENGE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action6(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_START=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action5(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_SEND_SERVER_HELLO_NEXT_FRAGMENT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action2(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_START=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action4(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_MSCHAPV2_VERIFIED_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action8(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_CLIENT_HELLO=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_FINISH=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action9(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_CLIENT_KEY_FULL=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action3(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_EAPMSCHAPV2_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action6(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_MD5_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket@42e996ca, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_EAP_MD5_CHALLENGE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action5(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_MSCHAPV2_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action7(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_INIT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action0(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_SEND_SERVER_HELLO_NEXT_FRAGMENT=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action2(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_MD5_ACTION_PRECESS_CHALLENGE_VALUE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket@42e996ca, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapMd5ActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_CLIENT_KEY_FULL=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action3(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), PEAP_ACTION_PROCESS_ACK=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket@fe39e31, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.PeapActionBucket.action4(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_TUNNEL_AUTHENTICATION_WAIT_EAPMSCHAPV2_VERIFIED_RESPONSE=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action7(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq)), EAP_TTLS_ACTION_PROCESS_CLIENT_HELLO=ActionBucketMethod(actionBucket=com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket@edc611c, method=public com.tplink.cdd.radius.common.eap.packet.EapPacket com.tplink.cdd.component.aaa.core.authentication.eap.service.impl.EapTtlsActionBucket.action1(com.tplink.cdd.component.aaa.core.authentication.dto.AuthReq))}
11-29-2023 16:44:07.287 INFO [main] [] c.t.c.c.a.c.a.c.EapAuthConfig(): Success to init eap auth dispatcher, num = 4, invokes = {EAP_TTLS=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapTTlsAuthHandler@11cd6e2a, PEAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapPeapAuthHandler@36abb54d, EAP_TLS=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapTlsAuthHandler@23b372dd, EAP_MD5=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapMd5AuthHandler@7e2d698c}
11-29-2023 16:44:07.318 INFO [main] [] c.t.c.c.a.c.a.c.AuthConfig(): Success to init radius auth dispatcher, num = 9, invokes = {PORTAL_CHAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.ChapPortalAuthHandler@6e26667c, USER_ACCESS_EAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessEapAuthHandler@38efd9b4, MAC_EAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.MacEapAuthHandler@600c841e, PPSK_UNBOUND_MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PapPpskUnboundMacAuthHandler@1e8510f5, PPSK_BOUND_MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PpskBoundMacPapAuthHandler@675721ae, USER_ACCESS_CHAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessChapAuthHandler@ea63061, USER_ACCESS_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.UserAccessPapAuthHandler@2b7beb32, PORTAL_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.PapPortalAuthHandler@2a65b262, MAC_PAP=com.tplink.cdd.component.aaa.core.authentication.service.handler.MacPapAuthHandler@6e311344}
11-29-2023 16:44:07.510 INFO [main] [] c.t.c.c.a.c.a.a.AccountingConfig(): Success to init radius accounting handler, num = 0, invokes = {}
11-29-2023 16:44:07.601 INFO [main] [] c.t.s.l.c.s.d.CacheLogConsumeHandler(): log mq consume task is start...
11-29-2023 16:44:07.619 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Started OmadaLinuxMain in 198.417 seconds (JVM running for 208.264)
11-29-2023 16:44:07.666 INFO [main] [] c.t.s.o.m.d.p.b.a(): manager maintenance Handling event: org.springframework.boot.context.event.ApplicationStartedEvent[source=org.springframework.boot.SpringApplication@590b9218]
11-29-2023 16:44:08.182 INFO [main] [] c.t.s.o.s.t.SpringBootStartUpTask(): record: task SpringBootStartupTask finished
11-29-2023 16:44:08.183 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before OmadacInitTask
11-29-2023 16:44:08.279 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before init bean
11-29-2023 16:44:08.362 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: after init bean
11-29-2023 16:44:08.695 INFO [main] [] c.t.s.o.s.p.m.d.b(): No startUpInfo exists.
11-29-2023 16:44:08.939 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): Start init data.
11-29-2023 16:44:08.939 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Start init data.
11-29-2023 16:44:09.128 INFO [main] [] c.t.s.o.i.a.b.d(): name=default_name tenant is not exist.
11-29-2023 16:44:09.137 INFO [main] [] c.t.s.o.i.a.b.d(): name=default_name tenant is not exist.
11-29-2023 16:44:10.261 INFO [main] [] c.t.s.o.i.d.m.o.b.a.a(): Initializing client settings of OmadacId: 92ec3a98a6fcbe3345336dd4d62db03f
11-29-2023 16:44:10.564 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): succeed in initializing default omadac OmadacVO(id=92ec3a98a6fcbe3345336dd4d62db03f, name=Omada Controller_2DB03F, pattern=0)
11-29-2023 16:44:10.689 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: before init for hwc
11-29-2023 16:44:10.690 INFO [main] [] c.t.s.o.s.t.OmadacInitTask(): record: after init for hwc
11-29-2023 16:44:14.209 INFO [main] [] c.t.s.o.d.g.c.f.b.c(): file download mq consume task is start...
11-29-2023 16:44:14.414 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): adopt workGroup core thread num is 8, max thread num is8
11-29-2023 16:44:15.418 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): discovery workGroup core thread num is 2, max thread num is 10
11-29-2023 16:44:16.409 INFO [main] [] c.t.s.o.c.c.p.c.o.s.ActiveSiteCacheImpl(): Scheduled ActiveSitesCache period flush buf task at fixed rate of 30000 millis.
11-29-2023 16:44:16.872 INFO [main] [] c.t.s.o.p.p.r.a.c(): init nioEventLoopGroup
11-29-2023 16:44:18.170 INFO [main] [] c.t.s.o.d.g.c.d.ThreadConfiguration(): device-gateway datatrack workGroup core thread  num is 8, max thread num is 8
11-29-2023 16:44:27.712 INFO [main] [] c.t.s.o.d.g.c.d.ThreadConfiguration(): device-gateway datatrack time task workGroup core thread  num is 8, max thread num is 8
11-29-2023 16:44:36.175 WARN [https-jsse-nio-8043-exec-9] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:44:36.245 WARN [https-jsse-nio-8043-exec-9] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
11-29-2023 16:44:37.505 INFO [comm-pool-2] [] c.t.s.o.s.t.OmadacInitTask(): Starting collection maintenance.
11-29-2023 16:44:37.563 INFO [main] [] c.t.s.o.p.b.b.d(): DisconnectRequestServer start
11-29-2023 16:44:38.520 INFO [main] [] c.t.s.o.s.d.a(): record: after OmadacInitTask
11-29-2023 16:44:38.522 INFO [main] [] c.t.s.o.s.t.CloudStartUpTask(): record: CloudStartUpTask start
11-29-2023 16:44:38.525 INFO [main] [] c.t.s.o.s.t.CloudStartUpTask(): record: CloudStartUpTask finished
11-29-2023 16:44:38.526 INFO [main] [] c.t.s.o.s.t.OmadacDiscoveryStartUpTask(): record: OmadacDiscoveryStartUpTask start
11-29-2023 16:44:38.528 INFO [main] [] c.t.s.o.s.t.OmadacDiscoveryStartUpTask(): record: OmadacDiscoveryStartUpTask finished
11-29-2023 16:44:39.753 INFO [main] [] c.t.s.o.d.g.a(): startServers, DISCOVERY host:null.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): discovery Port is 29810.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): manage    port v1 is 29811.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): manage    port v2 is 29814.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): adopt     port v1 is 29812.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): upgrade   port is 29813.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): transfer  port is 29815.
11-29-2023 16:44:39.760 INFO [main] [] c.t.s.o.d.g.a(): rtty port is 29816.
11-29-2023 16:44:39.977 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyUdpServer bind /0.0.0.0:29810, export localhost/127.0.0.1:29810
11-29-2023 16:44:40.022 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29812 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-29-2023 16:44:40.057 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29812, export localhost/127.0.0.1:29812
11-29-2023 16:44:40.063 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29811 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-29-2023 16:44:40.067 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29811, export localhost/127.0.0.1:29811
11-29-2023 16:44:40.073 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29813 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-29-2023 16:44:40.078 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29813, export localhost/127.0.0.1:29813
11-29-2023 16:44:40.095 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29814 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-29-2023 16:44:40.106 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29814, export localhost/127.0.0.1:29814
11-29-2023 16:44:40.120 INFO [main] [] c.t.s.e.t.n.NettyTcpServer(): TCP server /0.0.0.0:29815 global traffic shaping, writeLimit: 536870912, readLimit: 0, checkInterval: 1000, max wait time: 15000
11-29-2023 16:44:40.123 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start NettyTcpServer bind /0.0.0.0:29815, export localhost/127.0.0.1:29815
11-29-2023 16:44:40.154 INFO [main] [] c.t.s.e.t.a.t.AbstractServer(): Start RttyNettyTcpServer bind /0.0.0.0:29816, export localhost/127.0.0.1:29816
11-29-2023 16:44:40.154 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Device connector server started.
11-29-2023 16:44:40.156 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Omada Controller started
11-29-2023 16:44:40.156 INFO [main] [] c.t.s.o.s.t.SuccessExitTask(): Omada Controller started
11-29-2023 16:44:40.157 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: finished run omada tasks
11-29-2023 16:44:51.453 INFO [comm-pool-2] [] c.t.s.o.s.t.OmadacInitTask(): Finished collection maintenance.
chiefcomm commented 10 months ago

@alexbelgium sorry to say this appears no different for me. Clean install on previously unconfigured HA on NUC persistent configs are not retained after restarting add-on, I forked https://github.com/jkunczik/home-assistant-omada and duplicated the beta version folders downgrading to use the released v5.12.7 of mbentley and it appears to work perfectly with retained settings although I cannot explain why it works :-(

alexbelgium commented 10 months ago

hi, that's crazy actually he is doing a bit like me with a symlink to home assistant data dir : ln -s /data "${OMADA_DIR}"

Well honestly if he is dedicated to propose this addon it is probably better for you to use his - my time is divided between many addons and most of them that I don't use... So he'll probably provide better support than I can do, with a more polished addon if he actually uses it

alexbelgium commented 10 months ago

I've made a last try : expose omada folders in a way that can be accessed manually using my Filebrowser addon. To access the files, you need to update to the latest version, it should transfer all data in a folder that can be accessed using my Filebrowser addon at two possible locations : /addon_configs/xxx-omada ; or /config/addons_config/xxx-omada

That way it can make easier you saving your mongodb database by accessing manually, or hopefully it will make the addon work again ;-)

Geraldziu commented 10 months ago

@alexbelgium Tried again and it's still the same effect. Not having (or not seeing) the data that should be there. BUT ... When I checked my old backup (the one that was not working), I found that all the data in MongoDB was still there. So for me, it looks like everything is working fine, the addon is doing what it's supposed to do, and the data is writing where it should, but after a restart or stop/start, it's not accessible to the addon. Permission issue? I saw that after the restart user/group is recreated

Geraldziu commented 10 months ago

This is the part that I'm thinking. I think that the DB is here /opt/tplink/EAPController/data. If it's always recreated or not mapped to a folder outside of the docker image, then the data is not surviving the restart.

INFO: Validating user/group (omada:omada) exists with correct UID/GID (508:508)
INFO: Group (omada) doesn't exist; creating
INFO: User (omada) doesn't exist; creating
INFO: Time zone set to 'Europe/Warsaw'
INFO: Value of 'manage.http.port' already set to 8088 in omada.properties
INFO: Value of 'manage.https.port' already set to 8043 in omada.properties
INFO: Value of 'portal.http.port' already set to 8088 in omada.properties
INFO: Value of 'portal.https.port' already set to 8843 in omada.properties
INFO: Value of 'port.adopt.v1' already set to 29812 in omada.properties
INFO: Value of 'port.app.discovery' already set to 27001 in omada.properties
INFO: Value of 'port.upgrade.v1' already set to 29813 in omada.properties
INFO: Value of 'port.manager.v1' already set to 29811 in omada.properties
INFO: Value of 'port.manager.v2' already set to 29814 in omada.properties
INFO: Value of 'port.discovery' already set to 29810 in omada.properties
INFO: Value of 'port.transfer.v2' already set to 29815 in omada.properties
INFO: Value of 'port.rtty' already set to 29816 in omada.properties
INFO: Value of 'mongo.external' already set to false in omada.properties
INFO: Value of 'eap.mongod.uri' already set to mongodb://127.0.0.1:27217/omada in omada.properties
WARN: Ownership not set correctly on '/opt/tplink/EAPController/data'; setting correct ownership (omada:omada)
WARN: Ownership not set correctly on '/opt/tplink/EAPController/logs'; setting correct ownership (omada:omada)
WARN: Ownership not set correctly on '/opt/tplink/EAPController/properties'; setting correct ownership (omada:omada)
INFO: Version check passed; image version (5.12.7) >= the last version ran (0.0.0); writing image version to last ran file...
INFO: userland/kernel check passed
INFO: Starting Omada Controller as user omada
tail: cannot open '/opt/tplink/EAPController/logs/server.log' for reading: No such file or directory
tail: '/opt/tplink/EAPController/logs/server.log' has appeared;  following new file
alexbelgium commented 10 months ago

Well my code normally symlinks a folder in /data/db to /opt/tplink/EAPController/data/db to normally allow that ; with a chown omada:omada to allow permissions.

In my latest version, I've moved everything located in /data to /config (accessible using my filebrowser addon at the location /config/addons_config/xxx-omada ; or /addon_configs/xxx-omada) to allow people to access it manually.

I don't understand why it is not correctly seen by omada... I wonder if it doesn't support symlinks anymore while it was supporting it in the past...

alexbelgium commented 10 months ago

I wonder if this is because my symlinks were executed in parallel to Omada's code execution, I have forced the sequential execution in DONOTUPDATE_TEST3

Geraldziu commented 10 months ago

So i'm on 5.12-2023-11-22-DONOTUPDATE and using Filebrowser addon in addon_configs/db21ed7f_omada/ I see only config.yaml with your commented header and in /config/addons_config I see nothing

Geraldziu commented 10 months ago

Leatest update gives this unpleasent error

INFO: Validating user/group (omada:omada) exists with correct UID/GID (508:508)
INFO: Group (omada) doesn't exist; creating
INFO: User (omada) doesn't exist; creating
INFO: Properties file '*' missing, restoring default file...
cp: cannot stat '/opt/tplink/EAPController2/properties.defaults/*': No such file or directory
viniciusgava commented 10 months ago

I was able to recover my Omada controller by restoring it to version 5.12-2023-11-15. It was on automatic update, so I just noticed today when the Omada lost health check failed on my uptime Kuma instance.

Previously I was having the same error @Geraldziu posted above.

Any recent backup restore I tried before 5.12-2023-11-15 has failed to bring my data back.

alexbelgium commented 10 months ago

Thanks very much for the feedback ! It's really weird as the initial issue in the thread was on a version prior to 5.12-2023-11-15 which started this whole line of tentative modifications... As you have a strong addon backup in place, could I please ask you to test the version aptly named DONOTUPDATE_TEST3 ?

In theory it will copy your data from its current /data folder (so safe inside your backup file) to a /config folder accessible using the Filebrowser addon (at /config/addons_config/db21ed7f-omada, which itself is a symlink of /addons_configs/db21ed7f-omada), then provide remanence by using data stored in this folder.

It seems to work on my system using DONOTUPDATE_TEST3 (I see the files getting created, there is no error in the logs, I can access them after the addon is stopped) but for some reason the fact that it works on my system does not translate to it working on all systems ;-) if you tell me it works then I would publish it as an official version. Otherwise you would need to restore you 5.12-2023-11-15 backup to go back to your working state. Thanks very much !

Geraldziu commented 10 months ago

tried the same today, but still no luck. I don't see anything in the /config/addons_config, but I can see config.yaml in /addon_configs/db21ed7f_omada/. If it makes any difference I'm running HA on raspberry pi 4 with 2GB ram.

alexbelgium commented 10 months ago

just the config.yaml in /addon_configs/db21ed7f_omada/ ??? normally there should be all the folders including the db... thanks for checking I'll see what could have occurred...

alexbelgium commented 10 months ago

It's really crazy : when I start the addon I see in /addon_configs/db21ed7f_omada : image

and in the db folder image

viniciusgava commented 10 months ago

@alexbelgium I can try to upgrade directly DONOTUPDATE_TEST3, but I current running 5.12-2023-11-15. Would that be a good test for you? image

I ask because I did not have the time to read all the threads to understand the issue, I just restored the backups yesterday until started to work again. I can try to catch up on the thread later.

Let me know if you wanna I to proceed with the test. I running in a Raspberry Pi 4, 4gb.

Thanks!

alexbelgium commented 10 months ago

Hi @viniciusgava if you had the time to upgrade directly to DONOTUPDATE_TEST3 and start the addon normally it would be perfect :-) don't bother reading the rest of the thread it was mostly tries & fixes and hard to say if the issue was in the addon or in the user systems

Thanks!

Geraldziu commented 10 months ago

Anything I could test why it's not working on my haos instance? I could understand that the add-on is crushing because there are not enough resources or whatever. But when it's working on one's system and not on my - it's frustrating. I have nothing special installed - standard HAOS with HACS (mushroom, tuya local, Panasonic comfort cloud, lg smart thing cloud), ZigBee2Mqtt, mosquito broker, Google drive backup, esphome, cloudflared.

No Idea what's different the usual. @viniciusgava could you share your setup? @alexbelgium could you revert to version that's working for @viniciusgava ?

viniciusgava commented 10 months ago

Ok. It took me some time to test because this instance ran in a remote location and during the process of the restored backups the supervisor got stuck and I was required to request someone else to restart the raspberry pi.

It did not work upgrade from 5.12-2023-11-15 to DONOTUPDATE_TEST3 or 5.12-2023-11-15 to 5.12-2023-12-01. In both cases, the omada controller opens as a new instance ready to be setup. image

Boot logs after migrating to 5.12-2023-12-01:


 System: Home Assistant OS 11.1  (aarch64 / raspberrypi4-64)
 Home Assistant Core: 2023.11.3
 Home Assistant Supervisor: 2023.11.6
-----------------------------------------------------------
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums
-----------------------------------------------------------
 Provided by: https://github.com/alexbelgium/hassio-addons 
-----------------------------------------------------------
/etc/cont-init.d/00-global_var.sh: executing
Timezone set from Etc/UTC to America/Sao_Paulo
/etc/cont-init.d/01-config_yaml.sh: executing
Setting permissions for the config.yaml directory

Load environment variables from /config/config.yaml if existing
If accessing the file with filebrowser it should be mapped to /addon_configs/db21ed7f-omada/config.yaml
---------------------------------------------------------
Wiki here on how to use : github.com/alexbelgium/hassio-addons/wiki/Add‐ons-feature-:-add-env-variables

... no config file, creating one from template. Please customize the file in /config/config.yaml before restarting.
... no env variables found, exiting
/etc/cont-init.d/01-custom_script.sh: executing
Execute /config/omada.sh if existing
---------------------------------------------------------
If accessing the file with filebrowser it should be mapped to /config/*-omada/omada.sh
Wiki here : github.com/alexbelgium/hassio-addons/wiki/Add-ons-feature-:-customisation
... no script found, exiting
/etc/cont-init.d/99-run.sh: executing
Creating directory
Creating symlink
Created symlink for 'LAST_RAN_OMADA_VER.txt'
Created symlink for 'config.yaml'
Created symlink for 'data'
Created symlink for 'db'
Created symlink for 'html'
Created symlink for 'keystore'
Created symlink for 'pdf'
Created symlink for 'portal'
Updating permissions

Recommendation : please backup your database and migrated to this addon https://github.com/jkunczik/home-assistant-omada

Starting the upstream container

INFO: Validating user/group (omada:omada) exists with correct UID/GID (508:508)
INFO: Group (omada) doesn't exist; creating
INFO: User (omada) doesn't exist; creating
INFO: Time zone set to 'America/Sao_Paulo'
INFO: Value of 'manage.http.port' already set to 8088 in omada.properties
INFO: Value of 'manage.https.port' already set to 8043 in omada.properties
INFO: Value of 'portal.http.port' already set to 8088 in omada.properties
INFO: Value of 'portal.https.port' already set to 8843 in omada.properties
INFO: Value of 'port.adopt.v1' already set to 29812 in omada.properties
INFO: Value of 'port.app.discovery' already set to 27001 in omada.properties
INFO: Value of 'port.upgrade.v1' already set to 29813 in omada.properties
INFO: Value of 'port.manager.v1' already set to 29811 in omada.properties
INFO: Value of 'port.manager.v2' already set to 29814 in omada.properties
INFO: Value of 'port.discovery' already set to 29810 in omada.properties
INFO: Value of 'port.transfer.v2' already set to 29815 in omada.properties
INFO: Value of 'port.rtty' already set to 29816 in omada.properties
INFO: Value of 'mongo.external' already set to false in omada.properties
INFO: Value of 'eap.mongod.uri' already set to mongodb://127.0.0.1:27217/omada in omada.properties
INFO: Importing cert from /cert/tls.[key|crt]
INFO: Version check passed; image version (5.12.7) >= the last version ran (); writing image version to last ran file...
INFO: userland/kernel check passed
INFO: Starting Omada Controller as user omada
12-03-2023 07:13:09.278 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: start the omada controller
12-03-2023 07:13:09.299 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: set property finished
12-03-2023 07:13:09.317 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): record: configure log finished
12-03-2023 07:13:09.337 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap prepare
12-03-2023 07:13:09.339 INFO [log4j-thread] [] c.t.s.o.c.o.a.b(): success to load configuration omada.properties
12-03-2023 07:13:09.343 INFO [log4j-thread] [] c.t.s.o.c.o.OmadacType(): omadacType: Local Controller
12-03-2023 07:13:09.484 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): going to start local mongod.
12-03-2023 07:13:11.069 INFO [main] [] c.t.s.o.s.s.b(): mongodb process id is 381
12-03-2023 07:13:11.075 ERROR [main] [] c.t.s.f.c.FacadeUtils(): facadeMsgEnable is not enable, msg: Mongo DB server started
12-03-2023 07:13:11.077 INFO [main] [] c.t.s.o.s.s.b(): Mongo DB server started
12-03-2023 07:13:13.150 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap record finished
12-03-2023 07:13:13.150 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: bootstrap startup
12-03-2023 07:13:13.591 INFO [main] [] c.t.s.o.s.OmadaBootstrap(): record: start run omada tasks
12-03-2023 07:13:13.594 INFO [main] [] c.t.s.o.s.t.SpringBootStartUpTask(): record: task SpringBootStartupTask start

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.6.6)

12-03-2023 07:13:17.246 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): Starting OmadaLinuxMain v5.12.7 using Java 17.0.9 on db21ed7f-omada with PID 8 (/opt/tplink/EAPController/lib/local-starter-5.12.7.jar started by omada in /opt/tplink/EAPController/lib)
12-03-2023 07:13:17.271 INFO [main] [] c.t.s.o.s.OmadaLinuxMain(): No active profile set, falling back to 1 default profile: "default"
12-03-2023 07:14:04.058 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
12-03-2023 07:14:12.972 INFO [main] [] c.t.s.o.m.l.p.e.LicenseEventCenterProperties(): licenseManagerTopic: omada.cloud.license.prd.topics
12-03-2023 07:14:24.559 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): upgradeSendReq workGroup core thread num is 1, max thread num is 1
12-03-2023 07:14:28.836 WARN [main] [] o.s.d.c.CustomConversions(): Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation.
12-03-2023 07:14:31.110 INFO [main] [] c.t.s.o.m.d.p.t.TransportConfiguration(): manager workGroup core thread  num is 16, max thread num is 16
12-03-2023 07:14:32.410 INFO [main] [] c.t.s.o.m.c.d.m.s.a.AbstractActiveSiteCacheImpl(): Scheduled ActiveSitesCache period flush buf task at fixed rate of 30000 millis.

How did I fix it? I backup my data using the Omada controller panel while running an old version of Omada(5.12-2023-11-15) from my home assistant backups. After that, I updated to 5.12-2023-12-01, and restored the backup. So far it is running normally.

No Idea what's different the usual. @viniciusgava could you share your setup?

@Geraldziu Raspberry Pi 4, 4GB Ram. Addons: AdGuard Home, Duck DNS, ESPHome, File Editor, Home Assistant Google Drive Backup, MariaDB, Mosquitto broker, Network UPS Tools, Omada, Samba share, Signal Messenger, SMS UPS BETA, Studio Code Server, Terminal & SSH, Uptime Kuma and Wireguard. HACS: Sonoff LAN, SmartThinQ LGE Sensors, Local Tuya. Home assistant Code Version: core-2023.11.3 Home Assistant OS: 11.1(supervisor-2023.11.6)

I honestly did not go deep to understand what happened. Whatever was changed, seems to be related to the data storage. Either the addons changed something where the data persisted that may have killed the current data or the Omada controller made a break change?

For now, I will continue monitoring the new version with the Omada backup restored. I also pause auto-update for this plugin for now. I will probably change something on my monitoring since I did notice quickly when stopped to work(famous healthcheck HTTP status 200, right? :laughing:)

Geraldziu commented 10 months ago

@alexbelgium, do you know what the issue could be between 5.12-2023-11-15 and DONOTUPDATE3? we both have the same issue after the update. @viniciusgava, did you check the /addon_configs/db21ed7f_omada by any chance? Are there any files over there after the update to DONOTUPDATE3?

viniciusgava commented 10 months ago

@Geraldziu Can you please clarify what and where I can verify this? Just share more details that I will check for you when I have a chance.

Geraldziu commented 10 months ago

@viniciusgava this is what I ment :)

https://github.com/alexbelgium/hassio-addons/issues/1063#issuecomment-1835992979

Thanks very much for the feedback ! It's really weird as the initial issue in the thread was on a version prior to 5.12-2023-11-15 which started this whole line of tentative modifications... As you have a strong addon backup in place, could I please ask you to test the version aptly named DONOTUPDATE_TEST3 ?

In theory it will copy your data from its current /data folder (so safe inside your backup file) to a /config folder accessible using the Filebrowser addon (at /config/addons_config/db21ed7f-omada, which itself is a symlink of /addons_configs/db21ed7f-omada), then provide remanence by using data stored in this folder.

It seems to work on my system using DONOTUPDATE_TEST3 (I see the files getting created, there is no error in the logs, I can access them after the addon is stopped) but for some reason the fact that it works on my system does not translate to it working on all systems ;-) if you tell me it works then I would publish it as an official version. Otherwise you would need to restore you 5.12-2023-11-15 backup to go back to your working state. Thanks very much !

In theory if you update to DONOTUPDATE_TEST3 there should be some files in this folder /addon_configs/db21ed7f_omada. At least that's what alexbelgium had configured :-)

ChriKn commented 9 months ago

Hi, are there any news on this ? I'm not really sure to understand everything well. Is there even a working beta at the moment ?

Thanks for your dedication ! @alexbelgium

alexbelgium commented 9 months ago

Hi, strangely it works on my system but I don't understand why it does not for other people...

Geraldziu commented 8 months ago

Unfortunately, it's still not working, and I don't have that much experience with docker/HAOS even to start debugging why it's not working for me and it's working for Alex. But if there would be someone who would like to work on that with me, I'm more than happy to resolve this issue.