You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a test in flutter_tools that connects two clients to the vmService on web that runs with DDS enabled. The first client can subscribe to 'Service' stream successfully. but the second cannot - subscribing to 'Service' causes 'Stream already subscribed' to be thrown.
has two separate clients subscribing to the Service stream in validateFlutterVersion. These clients issue their streamListen requests simultaneously, and StreamManager processes them both at roughly the same time, allowing for both requests to bypass the checks we do to avoid having DDS try to subscribe to an existing stream.
We need some form of locking mechanism to ensure streamListen requests are processed atomically or refactor subscribed streams checks in such a way that streams are marked as subscribed by DDS before issuing the streamListen to the VM service.
mraleph
added
the
area-pkg
Used for miscellaneous pkg/ packages not associated with specific area- teams.
label
Apr 5, 2021
@bkonyi looks like this is still failing after re-enabling the flutter test:
07:41 +19 -1: test/web.shard/vm_service_web_test.dart: Clients of flutter run on web with DDS enabled can validate flutter version in parallel [E]
streamListen: (-32000) Null check operator used on a null value
package:vm_service/src/vm_service.dart 1626:45 new _OutstandingRequest
package:vm_service/src/vm_service.dart 2109:21 VmService._call
package:vm_service/src/vm_service.dart 2056:7 VmService.streamListen
test/web.shard/vm_service_web_test.dart 129:16 validateFlutterVersion
test/web.shard/vm_service_web_test.dart 62:9 main.<fn>.<fn>
I have a test in flutter_tools that connects two clients to the vmService on web that runs with DDS enabled. The first client can subscribe to 'Service' stream successfully. but the second cannot - subscribing to 'Service' causes 'Stream already subscribed' to be thrown.
See the following PR for example:
flutter/flutter#79479
The text was updated successfully, but these errors were encountered: