Sharing stops working

I’m running the latest local server (0.29.6) and it seems like each time I update the server (possibly since 0.29.2/3/4) I have had to sign out of devices that I have shared access with, generate a new QR code and use that to log in.

The “main” app is fine but the “shared” app just hangs with the three green dots spinning on login. I have tested this with both Android and iOS clients with the same outcome.

Probably by design if you think about it.

Then it’s a new “feature” because that wasn’t how it worked until relatively recently.

@ThatGuy_ZA what app version do you have?

@Dmitriy 2.17.2 on Android and 2.13.3 on iOS.

So apps just do not reconnect? And apps are running all the time?

Yes and yes. All devices get stuck here (screenshot from iPhone 7 with latest updates).

@ThatGuy_ZA did you stop the “master” project app when you upgraded the server?

Nope? I’ve never had a need to do that.

I kill the process on the server and spin up the new version.

Good that’s right.

@ThatGuy_ZA could you please enable debug mode on server and post here your logs for that case?
Is issue reproduced when you restart server (without upgrade)?

I restarted the server several times (in the same way I do when I upgrade it) and no issues with sharing.

Here is the log file for a restart.

04:42:04.848 INFO - myemailaddress Blynk-app joined. Version : android-0
05:51:54.887 INFO - myemailaddress Blynk-app joined. Version : android-0
06:18:46.816 INFO - myemailaddress Blynk-app joined. Version : android-0
06:25:18.185 DEBUG- Using SLF4J as the default logging framework
06:25:18.226 INFO - Using data dir '/home/pi/Blynk/BlynkData'
06:25:18.352 DEBUG- -Dio.netty.noUnsafe: false
06:25:18.354 DEBUG- Java version: 8
06:25:18.360 DEBUG- sun.misc.Unsafe.theUnsafe: available
06:25:18.365 DEBUG- sun.misc.Unsafe.copyMemory: available
06:25:18.369 DEBUG- java.nio.Buffer.address: available
06:25:18.372 DEBUG- direct buffer constructor: available
06:25:18.376 DEBUG- java.nio.Bits.unaligned: available, false
06:25:18.377 DEBUG- jdk.internal.misc.Unsafe.allocateUninitializedArray(int): unavailable prior to Java9
06:25:18.377 DEBUG- java.nio.DirectByteBuffer.<init>(long, int): available
06:25:18.377 DEBUG- sun.misc.Unsafe: available
06:25:18.380 DEBUG- -Dio.netty.tmpdir: /tmp (java.io.tmpdir)
06:25:18.380 DEBUG- -Dio.netty.bitMode: 32 (sun.arch.data.model)
06:25:18.387 DEBUG- -Dio.netty.noPreferDirect: false
06:25:18.387 DEBUG- -Dio.netty.maxDirectMemory: 249364480 bytes
06:25:18.388 DEBUG- -Dio.netty.uninitializedArrayAllocationThreshold: -1
06:25:18.393 DEBUG- java.nio.ByteBuffer.cleaner(): available
06:25:18.413 DEBUG- Starting reading user DB.
06:25:21.915 DEBUG- Reading user DB finished.
06:25:21.915 INFO - Region : local. Host : 192.168.1.210.
06:25:22.244 DEBUG- -Dio.netty.eventLoopThreads: 8
06:25:22.386 DEBUG- -Dio.netty.noKeySetOptimization: false
06:25:22.386 DEBUG- -Dio.netty.selectorAutoRebuildThreshold: 512
06:25:22.432 DEBUG- org.jctools-core.MpscChunkedArrayQueue: available
06:25:22.460 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1250572
06:25:22.467 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@36eb5f
06:25:22.468 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1e2a9e
06:25:22.469 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1a36558
06:25:22.469 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@12872e1
06:25:22.470 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@910148
06:25:22.471 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@156875e
06:25:22.472 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@14bac49
06:25:22.473 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1d07cbb
06:25:22.602 DEBUG- -Dio.netty.leakDetection.level: disabled
06:25:22.603 DEBUG- -Dio.netty.leakDetection.targetRecords: 4
06:25:22.615 DEBUG- Loaded default ResourceLeakDetector: io.netty.util.ResourceLeakDetector@bf4075
06:25:23.517 DEBUG- Default protocols (JDK): [TLSv1.2, TLSv1.1, TLSv1] 
06:25:23.518 DEBUG- Default cipher suites (JDK): [TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA]
06:25:23.587 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1e360a
06:25:23.588 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1a3f27a
06:25:23.588 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@d75e99
06:25:23.589 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@14751b3
06:25:23.590 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1a8937
06:25:23.591 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@6e95ec
06:25:23.591 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@af26ee
06:25:23.592 TRACE- instrumented a special java.util.Set into: sun.nio.ch.EPollSelectorImpl@1d83fc1
06:25:23.665 DEBUG- -Dio.netty.threadLocalMap.stringBuilder.initialSize: 1024
06:25:23.665 DEBUG- -Dio.netty.threadLocalMap.stringBuilder.maxSize: 4096
06:25:23.751 DEBUG- -Dio.netty.allocator.numHeapArenas: 2
06:25:23.752 DEBUG- -Dio.netty.allocator.numDirectArenas: 2
06:25:23.752 DEBUG- -Dio.netty.allocator.pageSize: 8192
06:25:23.752 DEBUG- -Dio.netty.allocator.maxOrder: 11
06:25:23.752 DEBUG- -Dio.netty.allocator.chunkSize: 16777216
06:25:23.752 DEBUG- -Dio.netty.allocator.tinyCacheSize: 512
06:25:23.752 DEBUG- -Dio.netty.allocator.smallCacheSize: 256
06:25:23.753 DEBUG- -Dio.netty.allocator.normalCacheSize: 64
06:25:23.753 DEBUG- -Dio.netty.allocator.maxCachedBufferCapacity: 32768
06:25:23.753 DEBUG- -Dio.netty.allocator.cacheTrimInterval: 8192
06:25:23.753 DEBUG- -Dio.netty.allocator.useCacheForAllThreads: true
06:25:23.804 DEBUG- -Dio.netty.allocator.type: pooled
06:25:23.805 DEBUG- -Dio.netty.threadLocalDirectBufferSize: 65536
06:25:23.805 DEBUG- -Dio.netty.maxThreadLocalCharBufferSize: 16384
06:25:24.229 INFO - Initializing gmail smtp mail transport. Username : mancave@gmail.com. SMTP host : smtp.gmail.com:587
06:25:24.606 INFO - Didn't find custom user certificates.
06:25:24.614 INFO - Didn't find Let's Encrypt certificates.
06:25:24.614 WARN - You didn't specified 'server.host' or 'contact.email' properties in server.properties file. Automatic certificate generation is turned off. Please specify above properties for automatic certificates retrieval.
06:25:24.615 WARN - ATTENTION. Server certificate paths (cert : '/home/pi/Blynk', key : '/home/pi/Blynk') not valid. Using embedded server certs and one way ssl. This is not secure. Please replace it with your own certs.
06:25:25.669 DEBUG- -Dio.netty.buffer.bytebuf.checkAccessible: true
06:25:25.670 DEBUG- Loaded default ResourceLeakDetector: io.netty.util.ResourceLeakDetector@9b0314
06:25:25.862 DEBUG- hard.socket.idle.timeout = 15
06:25:25.914 DEBUG- app.socket.idle.timeout = 600
06:25:26.526 DEBUG- hard.socket.idle.timeout = 15
06:25:26.602 DEBUG- -Dio.netty.processId: 9079 (auto-detected)
06:25:26.617 DEBUG- -Djava.net.preferIPv4Stack: false
06:25:26.617 DEBUG- -Djava.net.preferIPv6Addresses: false
06:25:26.622 DEBUG- Loopback interface: lo (lo, 0:0:0:0:0:0:0:1%lo)
06:25:26.625 DEBUG- /proc/sys/net/core/somaxconn: 128
06:25:26.633 DEBUG- -Dio.netty.machineId: b8:27:eb:ff:fe:a4:07:17 (auto-detected)
06:25:26.821 INFO - Hardware plain tcp/ip server listening at 8442 port.
06:25:26.829 INFO - Hardware SSL server listening at 8441 port.
06:25:26.833 INFO - Application server listening at 8443 port.
06:25:26.835 INFO - HTTP API and WebSockets server listening at 6123 port.
06:25:26.839 INFO - HTTPS API, WebSockets and Admin page server listening at 9443 port.
06:25:26.841 INFO - Mqtt hardware server listening at 8440 port.
06:25:30.087 DEBUG- -Dio.netty.recycler.maxCapacityPerThread: 32768
06:25:30.087 DEBUG- -Dio.netty.recycler.maxSharedCapacityFactor: 2
06:25:30.087 DEBUG- -Dio.netty.recycler.linkCapacity: 16
06:25:30.087 DEBUG- -Dio.netty.recycler.ratio: 8
06:25:30.205 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='545613a97015468dab1c4ae3c7ce85b6'}
06:25:30.205 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='a6a6e187e6c24f78a7bd88f2d2853959'}
06:25:30.205 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='024902f3a1e4405fa9de3b261760ac89'}
06:25:30.206 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='43b9b0f8e9d0476c82146f0ea8c2bb10'}
06:25:30.206 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='06cf00aa866e4871b34813326660b95d'}
06:25:30.206 TRACE- Incoming LoginMessage{id=1, command=Login, length=32, body='30df908db04c4633b4d45f295d180b5a'}
06:25:30.271 DEBUG- Re registering hard channel. [id: 0xc53367d7, L:/192.168.1.210:8442 - R:/192.168.1.193:49169]
06:25:30.271 TRACE- Creating unique session for user: UserKey{email='myemailaddress', appName='Blynk'}
06:25:30.271 DEBUG- completeLogin. [id: 0x7f9e696f, L:/192.168.1.210:8442 - R:/192.168.1.194:9232]
06:25:30.271 DEBUG- Re registering hard channel. [id: 0xf6b4d9fb, L:/192.168.1.210:8442 - R:/192.168.1.190:8237]
06:25:30.272 DEBUG- Re registering hard channel. [id: 0xd11f9db5, L:/192.168.1.210:8442 - R:/192.168.1.192:28567]
06:25:30.275 DEBUG- Re registering hard channel. [id: 0xce76cba8, L:/192.168.1.210:8442 - R:/192.168.1.195:19570]
06:25:30.277 DEBUG- Re registering hard channel. [id: 0x421a6e1c, L:/192.168.1.210:8442 - R:/192.168.1.191:31146]
06:25:30.412 TRACE- Connected device id 79820, dash id 2
06:25:30.413 INFO - myemailaddress hardware joined.
06:25:30.414 DEBUG- completeLogin. [id: 0xc53367d7, L:/192.168.1.210:8442 - R:/192.168.1.193:49169]
06:25:30.416 TRACE- Connected device id 41350, dash id 2
06:25:30.416 INFO - myemailaddress hardware joined.
06:25:30.417 DEBUG- completeLogin. [id: 0xf6b4d9fb, L:/192.168.1.210:8442 - R:/192.168.1.190:8237]
06:25:30.418 TRACE- Connected device id 0, dash id 2
06:25:30.419 INFO - myemailaddress hardware joined.
06:25:30.419 DEBUG- completeLogin. [id: 0xd11f9db5, L:/192.168.1.210:8442 - R:/192.168.1.192:28567]
06:25:30.420 TRACE- Connected device id 67085, dash id 2
06:25:30.421 INFO - myemailaddress hardware joined.
06:25:30.421 DEBUG- completeLogin. [id: 0x421a6e1c, L:/192.168.1.210:8442 - R:/192.168.1.191:31146]
06:25:30.422 TRACE- Connected device id 53197, dash id 2
06:25:30.422 INFO - myemailaddress hardware joined.
06:25:30.423 DEBUG- completeLogin. [id: 0xce76cba8, L:/192.168.1.210:8442 - R:/192.168.1.195:19570]
06:25:30.424 TRACE- Connected device id 60095, dash id 2
06:25:30.424 INFO - myemailaddress hardware joined.
06:25:30.426 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=73, body='ver 0.4.10 h-beat 10 buff-in 1024 dev ESP8266 build Oct 29 2017 17:08:45 '}
06:25:30.427 TRACE- Info command. heartbeat interval 10
06:25:30.430 DEBUG- Changing read timeout interval to 23
06:25:30.441 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=73, body='ver 0.4.10 h-beat 10 buff-in 1024 dev Arduino build Oct 29 2017 16:56:09 '}
06:25:30.442 TRACE- Info command. heartbeat interval 10
06:25:30.442 DEBUG- Changing read timeout interval to 23
06:25:30.445 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=73, body='ver 0.4.10 h-beat 10 buff-in 1024 dev ESP8266 build Nov 27 2017 16:47:35 '}
06:25:30.445 TRACE- Info command. heartbeat interval 10
06:25:30.446 DEBUG- Changing read timeout interval to 23
06:25:30.462 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=73, body='ver 0.4.10 h-beat 10 buff-in 1024 dev ESP8266 build Nov 30 2017 18:44:12 '}
06:25:30.462 TRACE- Info command. heartbeat interval 10
06:25:30.462 DEBUG- Changing read timeout interval to 23
06:25:30.465 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=73, body='ver 0.4.10 h-beat 10 buff-in 1024 dev ESP8266 build Dec  2 2017 11:18:26 '}
06:25:30.466 TRACE- Info command. heartbeat interval 10
06:25:30.466 DEBUG- Changing read timeout interval to 23
06:25:30.529 TRACE- Incoming BlynkInternalMessage{id=2, command=Internal, length=72, body='ver 0.5.0 h-beat 10 buff-in 1024 dev Arduino build Jan 13 2018 15:05:28 '}
06:25:30.530 TRACE- Info command. heartbeat interval 10
06:25:30.530 DEBUG- Changing read timeout interval to 23
06:25:40.423 TRACE- Incoming PingMessage{id=3, command=Ping, length=0, body=''}

So all is fine :slight_smile:?

@Dmitriy Nope, the issue is present when upgrading the server.

I’ll do the next upgrade with debugging enabled.

Very strange. There was 1 version with sharing changes, but it shouldn’t affect sharing in any way. Seems to me like some local env. issue. Anyway, forever endless spinning dots is a bug and we will fix it. Do you have shared app on both iOs and Andorid?

1 Like

I don’t think it is a local environment issue because nothing else has changed.
Yes, shared app is on both Android and iOS and I experience the same spinning dots on both.

Could you send us in PM the QR for the shared project that is not loading now, so we could debug this issue on our side?

@Dmitriy is it possible that share credentials could become invalid after server’s upgrade?

@BlynkAndroidDev in that case many users would report that. right now this is the single report.

Android Phone App. not logging into local server using SHARED QR code

Running latest versions:

  • iPhone[2.18.1(1)] & Android(2.18.1) phone Apps
  • local server-0.30.3-java8.jar

Note: I even tried regenerating another QR but no difference.

Observations:

  1. Can run application on Android when logging into actual local server account.
  2. iPhone works in both modes (actual account & shared).
  3. iPhone works with old and new QR codes.
  4. With DEBUG on local server, last line on reboot was
    12:09:08.233 DEBUG- Changing read timeout interval to 69
    When logging in with QR on Android, no further entries are made into the log file.
    When performing same with iPhone, I get:
    12:19:08.642 INFO - Shared myemail@gmail.com app joined.

@BlynkAndroidDev - This seems to imply that on the Android, its not even reaching the local server.

Have you clicked refresh button on the Share screen? Support for old share QRs would be fixed in the next release.