Skip to content
This repository has been archived by the owner on May 13, 2023. It is now read-only.

Unhandled Exception with realtime rls #94

Closed
christianfl opened this issue Jan 27, 2022 · 2 comments
Closed

Unhandled Exception with realtime rls #94

christianfl opened this issue Jan 27, 2022 · 2 comments

Comments

@christianfl
Copy link

Hey guys, thank you really much for supabase!

When subscribing to changes in the database like this:

subscribe() async {
    _subscription =
        supabase.from('notifications').on(SupabaseEventTypes.insert, (payload) {
      // Business logic
    }).subscribe();
  }

it usually works for a short amount of time and then throws the following error:

E/flutter ( 8080): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'String?' in type cast

E/flutter ( 8080): #0      RealtimeSubscription.onError.<anonymous closure>
E/flutter ( 8080): #1      RealtimeSubscription.trigger
E/flutter ( 8080): #2      RealtimeClient.onConnMessage.<anonymous closure>.<anonymous closure>
E/flutter ( 8080): #3      Iterable.forEach (dart:core/iterable.dart:279:35)
E/flutter ( 8080): #4      RealtimeClient.onConnMessage.<anonymous closure>
E/flutter ( 8080): #5      new RealtimeClient.<anonymous closure>
E/flutter ( 8080): #6      RealtimeClient.onConnMessage
E/flutter ( 8080): #7      RealtimeClient.connect.<anonymous closure>
E/flutter ( 8080): #8      _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #9      _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #10     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #11     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #12     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #13     _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:123:11)
E/flutter ( 8080): #14     _HandleErrorStream._handleData (dart:async/stream_pipe.dart:253:10)
E/flutter ( 8080): #15     _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:153:13)
E/flutter ( 8080): #16     _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #17     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #18     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #19     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #20     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #21     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
E/flutter ( 8080): #22     _StreamController._add (dart:async/stream_controller.dart:607:7)
E/flutter ( 8080): #23     _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #24     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #25     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #26     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #27     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #28     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
E/flutter ( 8080): #29     _StreamController._add (dart:async/stream_controller.dart:607:7)
E/flutter ( 8080): #30     _StreamController.add (dart:async/stream_controller.dart:554:5)
E/flutter ( 8080): #31     new _WebSocketImpl._fromSocket.<anonymous closure> (dart:_http/websocket_impl.dart:1144:21)
E/flutter ( 8080): #32     _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #33     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #34     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #35     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #36     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #37     _SinkTransformerStreamSubscription._add (dart:async/stream_transformers.dart:63:11)
E/flutter ( 8080): #38     _EventSinkWrapper.add (dart:async/stream_transformers.dart:13:11)
E/flutter ( 8080): #39     _WebSocketProtocolTransformer._messageFrameEnd (dart:_http/websocket_impl.dart:332:23)
E/flutter ( 8080): #40     _WebSocketProtocolTransformer.add (dart:_http/websocket_impl.dart:226:46)
E/flutter ( 8080): #41     _SinkTransformerStreamSubscription._handleData (dart:async/stream_transformers.dart:111:24)
E/flutter ( 8080): #42     _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #43     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #44     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #45     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #46     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #47     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
E/flutter ( 8080): #48     _StreamController._add (dart:async/stream_controller.dart:607:7)
E/flutter ( 8080): #49     _StreamController.add (dart:async/stream_controller.dart:554:5)
E/flutter ( 8080): #50     _Socket._onData (dart:io-patch/socket_patch.dart:2302:41)
E/flutter ( 8080): #51     _rootRunUnary (dart:async/zone.dart:1436:47)
E/flutter ( 8080): #52     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 8080): #53     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 8080): #54     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter ( 8080): #55     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter ( 8080): #56     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
E/flutter ( 8080): #57     _StreamController._add (dart:async/stream_controller.dart:607:7)
E/flutter ( 8080): #58     _StreamController.add (dart:async/stream_controller.dart:554:5)
E/flutter ( 8080): #59     _RawSecureSocket._sendReadEvent (dart:io/secure_socket.dart:1000:19)
E/flutter ( 8080): #60     _rootRun (dart:async/zone.dart:1420:47)
E/flutter ( 8080): #61     _CustomZone.run (dart:async/zone.dart:1328:19)
E/flutter ( 8080): #62     _CustomZone.runGuarded (dart:async/zone.dart:1236:7)
E/flutter ( 8080): #63     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1276:23)
E/flutter ( 8080): #64     _rootRun (dart:async/zone.dart:1428:13)
E/flutter ( 8080): #65     _CustomZone.run (dart:async/zone.dart:1328:19)
E/flutter ( 8080): #66     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:1260:23)
E/flutter ( 8080): #67     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:18:15)
E/flutter ( 8080): #68     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:395:19)
E/flutter ( 8080): #69     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:426:5)
E/flutter ( 8080): #70     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:192:12)

pubspec.yaml:

supabase_flutter: ^0.2.11

Tested on emulator and different real devices and got the same error.

Do you have any clue how to solve / futher debug this? Kind regards

@osaxma
Copy link

osaxma commented Jan 29, 2022

There's a related issue in realtime repo -- see my comment there which may solve it for you:

@phamhieu
Copy link
Member

Duplicated supabase/realtime-dart#35

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants