Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[iOS] Client reset due to breaking schema change crashes until reinstall #4699

Closed
thespacemanatee opened this issue Jul 2, 2022 · 9 comments
Labels
O-Community T-Bug Waiting-For-Reporter Waiting for more information from the reporter before we can proceed

Comments

@thespacemanatee
Copy link
Contributor

thespacemanatee commented Jul 2, 2022

How frequently does the bug occur?

All the time

Description

When a breaking schema change occurs, on iOS it crashes forever until we reinstall the application. On Android, it crashes if the app is running while a breaking schema change was made, but does not crash anymore after that.

The error name sent to Sentry is: N5realm5_impl12client_reset17ClientResetFailedE.

We are following this official guide to do client reset. We use discardLocal for non-breaking schema changes and manually discard all unsynced changes during a breaking schema change.

Stacktrace & log output

Console:

Beginning client reset for  /var/mobile/Containers/Data/Application/FDF0BF3A-4823-46A9-BD49-DCB7C60D87E6/Documents/public.realm
{
  arguments: ["Beginning client reset for ","/var/mobile/Containers/Data/Application/FDF0BF3A- 
  4823-46A9-BD49-DCB7C60D87E6/Documents/public.realm"], 
  logger: console
}

C++ Exception:

OS Version: iOS 15.5 (19F77)
Report Version: 104

Exception Type: EXC_CRASH (SIGABRT)
Crashed Thread: 21

Application Specific Information:
N5realm5_impl12client_reset17ClientResetFailedE

Thread 21 Crashed:
0   CAMS                            0x2032aa1cc         realm::_impl::client_reset::transfer_group
1   CAMS                            0x2032ad4e0         realm::_impl::client_reset::perform_client_reset_diff
2   CAMS                            0x2032af1cc         realm::_impl::ClientResetOperation::finalize
3   CAMS                            0x20329eb30         realm::sync::ClientImpl::Session::receive_ident_message
4   CAMS                            0x20329e9a8         realm::sync::ClientImpl::Connection::receive_ident_message
5   CAMS                            0x20329cbdc         realm::_impl::ClientProtocol::parse_message_received<T>
6   CAMS                            0x20329af34         realm::sync::ClientImpl::Connection::websocket_binary_message_received
7   CAMS                            0x2032e1164         (anonymous namespace)::WebSocket::frame_reader_loop
8   CAMS                            0x2032d54f4         realm::util::network::Service::AsyncOper::do_recycle_and_execute<T>
9   CAMS                            0x2032d5070         realm::util::network::Service::BasicStreamOps<T>::BufferedReadOper<T>::recycle_and_execute
10  CAMS                            0x2032d7ee4         realm::util::network::Service::Impl::run
11  CAMS                            0x203272af8         realm::sync::Client::run
12  CAMS                            0x2031bf294         std::__1::__thread_proxy<T>
13  libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start
14  libsystem_pthread.dylib         0x3ef37ae64         thread_start

Thread 0
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   CoreFoundation                  0x30cf82d2c         __CFRunLoopServiceMachPort
3   CoreFoundation                  0x30cf871b8         __CFRunLoopRun
4   CoreFoundation                  0x30cf9abc4         CFRunLoopRunSpecific
5   GraphicsServices                0x34521f370         GSEventRunModal
6   UIKitCore                       0x311d84644         -[UIApplication _run]
7   UIKitCore                       0x311b05d8c         UIApplicationMain
8   CAMS                            0x202a38240         main (main.m:7)
9   <unknown>                       0x104bc1ce4         <redacted>

Thread 1
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 2
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 3
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 4 name: com.apple.uikit.eventfetch-thread
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   CoreFoundation                  0x30cf82d2c         __CFRunLoopServiceMachPort
3   CoreFoundation                  0x30cf871b8         __CFRunLoopRun
4   CoreFoundation                  0x30cf9abc4         CFRunLoopRunSpecific
5   Foundation                      0x30ff7d460         -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
6   Foundation                      0x30ffbee28         -[NSRunLoop(NSRunLoop) runUntilDate:]
7   UIKitCore                       0x311cfe76c         -[UIEventFetcher threadMain]
8   Foundation                      0x30ffcd438         __NSThread__start__
9   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 5
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 6
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 7
0   libsystem_pthread.dylib         0x3ef37ae54         start_wqthread

Thread 8
0   libz.1.dylib                    0x3ee9c1428         gzdopen
1   ImageIO                         0x3105ae124         png_read_IDAT_data
2   ImageIO                         0x3105a9554         _cg_png_read_row
3   ImageIO                         0x3105d5294         PNGReadPlugin::DecodeFrameStandard
4   ImageIO                         0x31059933c         PNGReadPlugin::DecodeUncomposedFrames
5   ImageIO                         0x31059a114         PNGReadPlugin::copyImageBlockSetStandard
6   ImageIO                         0x3105e11c0         PNGReadPlugin::copyImageBlockSet
7   ImageIO                         0x310594448         IIO_Reader::CopyImageBlockSetProc
8   ImageIO                         0x31058fe10         IIOImageProviderInfo::copyImageBlockSetWithOptions
9   ImageIO                         0x310597fa8         IIOImageProviderInfo::CopyImageBlockSetWithOptions
10  CoreGraphics                    0x310d3c230         subImageProviderCopyImageBlockSet
11  CoreGraphics                    0x310d457d0         imageProvider_retain_data
12  CoreGraphics                    0x310d67bf0         CGDataProviderRetainData
13  CoreGraphics                    0x310d87780         provider_for_destination_retain_data
14  CoreGraphics                    0x310d67bf0         CGDataProviderRetainData
15  CoreGraphics                    0x310d4254c         CGAccessSessionCreate
16  CoreGraphics                    0x310d3cf68         get_access_session
17  CoreGraphics                    0x310d78144         img_decode_read
18  CoreGraphics                    0x310d0abbc         img_data_lock
19  CoreGraphics                    0x310d56a58         CGSImageDataLock
20  CoreGraphics                    0x310d24e98         ripc_AcquireRIPImageData
21  CoreGraphics                    0x310d449dc         ripc_DrawImage
22  CoreGraphics                    0x310d16064         CGContextDrawImageWithOptions
23  VectorKit                       0x331ee54a4         esl::QuartzContext::drawImage
24  VectorKit                       0x331edddf0         esl::QuartzImage::createGrayscaleVersion
25  VectorKit                       0x332601c0c         grl::createColorizedImage
26  VectorKit                       0x332638424         grl::ImageLayerRenderer::renderToContext
27  VectorKit                       0x33260cec8         grl::IconRenderer::renderImage
28  VectorKit                       0x332636030         grl::IconImage::image
29  VectorKit                       0x331d28a6c         md::PointLabelIcon::renderIcon
30  VectorKit                       0x33234e48c         std::__1::__function::__func<T>::operator()
31  VectorKit                       0x33234e124         geo::TaskQueue::queueAsyncTask
32  libdispatch.dylib               0x30c977e68         _dispatch_call_block_and_release
33  libdispatch.dylib               0x30c979a2c         _dispatch_client_callout
34  libdispatch.dylib               0x30c97cee8         _dispatch_continuation_pop
35  libdispatch.dylib               0x30c97c554         _dispatch_async_redirect_invoke
36  libdispatch.dylib               0x30c98b160         _dispatch_root_queue_drain
37  libdispatch.dylib               0x30c98b968         _dispatch_worker_thread2
38  libsystem_pthread.dylib         0x3ef37b07c         _pthread_wqthread

Thread 9
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread

Thread 10 name: com.facebook.react.JavaScript
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   CoreFoundation                  0x30cf82d2c         __CFRunLoopServiceMachPort
3   CoreFoundation                  0x30cf871b8         __CFRunLoopRun
4   CoreFoundation                  0x30cf9abc4         CFRunLoopRunSpecific
5   CAMS                            0x202cc9044         +[RCTCxxBridge runRunLoop] (RCTCxxBridge.mm:378)
6   Foundation                      0x30ffcd438         __NSThread__start__
7   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 11 name: hades
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   libc++.1.dylib                  0x33ebd5288         std::__1::condition_variable::wait
3   hermes                          0x104d2a3f8         [inlined] std::__1::condition_variable::wait<T> (__mutex_base:409)
4   hermes                          0x104d2a3f8         hermes::vm::HadesGC::Executor::worker (HadesGC.cpp:1071)
5   hermes                          0x104d2a32c         [inlined] hermes::vm::HadesGC::Executor::Executor::lambda::operator() (HadesGC.cpp:1038)
6   hermes                          0x104d2a32c         [inlined] std::__1::__invoke<T> (type_traits:3545)
7   hermes                          0x104d2a32c         [inlined] std::__1::__thread_execute<T> (thread:273)
8   hermes                          0x104d2a32c         std::__1::__thread_proxy<T> (thread:284)
9   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 12 name: hermes-chrome-inspector-conn
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   libc++.1.dylib                  0x33ebd5288         std::__1::condition_variable::wait
3   CAMS                            0x202dcc934         [inlined] wait<T> (__mutex_base:404)
4   CAMS                            0x202dcc934         facebook::hermes::inspector::detail::SerialExecutor::runLoop (SerialExecutor.cpp:41)
5   CAMS                            0x202d96ebc         [inlined] __invoke<T> (type_traits:3918)
6   CAMS                            0x202d96ebc         [inlined] __thread_execute<T> (thread:287)
7   CAMS                            0x202d96ebc         std::__1::__thread_proxy<T> (thread:298)
8   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 13 name: hermes-inspector
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   libc++.1.dylib                  0x33ebd5288         std::__1::condition_variable::wait
3   CAMS                            0x202dcc934         [inlined] wait<T> (__mutex_base:404)
4   CAMS                            0x202dcc934         facebook::hermes::inspector::detail::SerialExecutor::runLoop (SerialExecutor.cpp:41)
5   CAMS                            0x202d96ebc         [inlined] __invoke<T> (type_traits:3918)
6   CAMS                            0x202d96ebc         [inlined] __thread_execute<T> (thread:287)
7   CAMS                            0x202d96ebc         std::__1::__thread_proxy<T> (thread:298)
8   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 14 name: hades
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   libc++.1.dylib                  0x33ebd5288         std::__1::condition_variable::wait
3   hermes                          0x104d2a3f8         [inlined] std::__1::condition_variable::wait<T> (__mutex_base:409)
4   hermes                          0x104d2a3f8         hermes::vm::HadesGC::Executor::worker (HadesGC.cpp:1071)
5   hermes                          0x104d2a32c         [inlined] hermes::vm::HadesGC::Executor::Executor::lambda::operator() (HadesGC.cpp:1038)
6   hermes                          0x104d2a32c         [inlined] std::__1::__invoke<T> (type_traits:3545)
7   hermes                          0x104d2a32c         [inlined] std::__1::__thread_execute<T> (thread:273)
8   hermes                          0x104d2a32c         std::__1::__thread_proxy<T> (thread:284)
9   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 15
0   libsystem_kernel.dylib          0x37c519a2c         __semwait_signal
1   libsystem_c.dylib               0x32327f0e0         nanosleep
2   libsystem_c.dylib               0x323293384         sleep
3   CAMS                            0x202dffa88         monitorCachedData (SentryCrashCachedData.c:144)
4   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 16
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   libsystem_kernel.dylib          0x37c525a40         thread_suspend
3   CAMS                            0x202e0c79c         handleExceptions (SentryCrashMonitor_MachException.c:258)
4   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 17
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   CAMS                            0x202e0c7c8         handleExceptions (SentryCrashMonitor_MachException.c:266)
3   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 18
0   libsystem_kernel.dylib          0x37c519a2c         __semwait_signal
1   libsystem_c.dylib               0x32327f0e0         nanosleep
2   Foundation                      0x30ffdfd04         +[NSThread sleepForTimeInterval:]
3   CAMS                            0x202df2614         -[SentryANRTracker detectANRs] (SentryANRTracker.m:66)
4   Foundation                      0x30ffcd438         __NSThread__start__
5   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 19
0   libsystem_kernel.dylib          0x37c5194a0         mach_msg_trap
1   libsystem_kernel.dylib          0x37c519ae0         mach_msg
2   CoreFoundation                  0x30cf82d2c         __CFRunLoopServiceMachPort
3   CoreFoundation                  0x30cf871b8         __CFRunLoopRun
4   CoreFoundation                  0x30cf9abc4         CFRunLoopRunSpecific
5   CFNetwork                       0x30e232238         _CFURLStorageSessionDisableCache
6   Foundation                      0x30ffcd438         __NSThread__start__
7   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 20
0   libsystem_kernel.dylib          0x37c51ae18         kevent
1   CAMS                            0x2031061cc         realm::_impl::ExternalCommitHelper::listen
2   CAMS                            0x20310631c         std::__1::__thread_proxy<T>
3   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 21 Crashed:
0   CAMS                            0x2032aa1cc         realm::_impl::client_reset::transfer_group
1   CAMS                            0x2032ad4e0         realm::_impl::client_reset::perform_client_reset_diff
2   CAMS                            0x2032af1cc         realm::_impl::ClientResetOperation::finalize
3   CAMS                            0x20329eb30         realm::sync::ClientImpl::Session::receive_ident_message
4   CAMS                            0x20329e9a8         realm::sync::ClientImpl::Connection::receive_ident_message
5   CAMS                            0x20329cbdc         realm::_impl::ClientProtocol::parse_message_received<T>
6   CAMS                            0x20329af34         realm::sync::ClientImpl::Connection::websocket_binary_message_received
7   CAMS                            0x2032e1164         (anonymous namespace)::WebSocket::frame_reader_loop
8   CAMS                            0x2032d54f4         realm::util::network::Service::AsyncOper::do_recycle_and_execute<T>
9   CAMS                            0x2032d5070         realm::util::network::Service::BasicStreamOps<T>::BufferedReadOper<T>::recycle_and_execute
10  CAMS                            0x2032d7ee4         realm::util::network::Service::Impl::run
11  CAMS                            0x203272af8         realm::sync::Client::run
12  CAMS                            0x2031bf294         std::__1::__thread_proxy<T>
13  libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start
14  libsystem_pthread.dylib         0x3ef37ae64         thread_start

Thread 22
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   CAMS                            0x2032da020         realm::util::network::Service::Impl::resolver_thread
3   CAMS                            0x2032d9f28         std::__1::__thread_proxy<T>
4   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 23
0   libsystem_kernel.dylib          0x37c51ae18         kevent
1   CAMS                            0x2031061cc         realm::_impl::ExternalCommitHelper::listen
2   CAMS                            0x20310631c         std::__1::__thread_proxy<T>
3   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 24
0   libsystem_kernel.dylib          0x37c519f24         __psynch_cvwait
1   libsystem_pthread.dylib         0x3ef382294         _pthread_cond_wait
2   libc++.1.dylib                  0x33ebd5288         std::__1::condition_variable::wait
3   CAMS                            0x202fcc7e8         [inlined] wait<T> (__mutex_base:404)
4   CAMS                            0x202fcc7e8         RNSkia::RNSkDispatchQueue::dispatch_thread_handler (RNSkDispatchQueue.cpp:66)
5   CAMS                            0x202fccb30         [inlined] __invoke<T> (type_traits:3859)
6   CAMS                            0x202fccb30         [inlined] __thread_execute<T> (thread:287)
7   CAMS                            0x202fccb30         std::__1::__thread_proxy<T> (thread:298)
8   libsystem_pthread.dylib         0x3ef37b9a8         _pthread_start

Thread 25
0   libsystem_kernel.dylib          0x37c519a74         __workq_kernreturn
1   libsystem_pthread.dylib         0x3ef37b104         _pthread_wqthread



EOF

Can you reproduce the bug?

Yes, always

Reproduction Steps

const mergedPublicConfig = {
  path: 'public.realm',
  schema: [Medication],
  sync: {
      user: currentRealmUser,
      partitionValue: PUBLIC_PARTITION,
      error: handlePublicRealmSyncError,
      clientReset: {
        mode: Realm.ClientResetMode.DiscardLocal,
        clientResetBefore: realm => {
          // NOT used with destructive schema changes
          console.log('Beginning client reset for ', realm.path)
        },
        clientResetAfter: (beforeRealm, afterRealm) => {
          // NOT used with destructive schema changes
          console.log('Finished client reset for', beforeRealm.path)
          console.log('New realm path', afterRealm.path)
        },
     },
     newRealmFileBehavior: OpenImmediately,
     existingRealmFileBehavior: OpenImmediately,
  }
}
const handlePublicRealmSyncError = useCallback<Realm.ErrorCallback>(
  async (_session, error) => {
    console.warn(_session, error)
    if (error.name === 'ClientReset' && publicRef.current) {
      try {
        const { path } = publicRef.current
        publicRef.current.close()
        Realm.App.Sync.initiateClientReset(realmApp, path)
        publicRef.current = await Realm.open(mergedPublicConfig)
        publicRef.current.close()
      } catch (err) {
        console.error(err)
      }
    }
  },
  [mergedPublicConfig],
)

Version

10.20.0.beta5

What SDK flavour are you using?

Atlas App Services (auth, functions, etc.)

Are you using encryption?

No, not using encryption

Platform OS and version(s)

All iOS versions

Build environment

...
"expo": "^45.0.6",
"expo-dev-client": "~1.0.0",
"realm": "^10.20.0-beta.5",
"@realm/react": "^0.3.1",
...

No response

Cocoapods version

1.11.3

@kneth
Copy link
Contributor

kneth commented Jul 4, 2022

I fully understand that working with client reset is confusing. It is a feature which is still in active development, and we learn from our users on how to shape it. So thank you for sharing!

The clientReset part has to be embedded inside the sync configuration. I need you to verify that your configuration looks like:

const mergedPublicConfig = {
  path: 'public.realm',
  schema: [Medication],
  sync: {
      user: currentRealmUser,
      partitionValue: PUBLIC_PARTITION,
      error: handlePublicRealmSyncError,

      clientReset: {
        mode: Realm.ClientResetMode.DiscardLocal,
        clientResetBefore: realm => {
          // NOT used with destructive schema changes
          console.log('Beginning client reset for ', realm.path)
        },
        clientResetAfter: (beforeRealm, afterRealm) => {
          // NOT used with destructive schema changes
          console.log('Finished client reset for', beforeRealm.path)
          console.log('New realm path', afterRealm.path)
        },
     },
     newRealmFileBehavior: OpenImmediately,
     existingRealmFileBehavior: OpenImmediately,
  }
}

@sync-by-unito sync-by-unito bot added the Waiting-For-Reporter Waiting for more information from the reporter before we can proceed label Jul 4, 2022
@thespacemanatee
Copy link
Contributor Author

thespacemanatee commented Jul 4, 2022

@kneth sorry about that, our configuration is indeed correct as you described, but when posting the issue, I merged them manually to reduce the code block and made a mistake. The clientReset is indeed embedded within sync and user etc are within sync block but outside clientReset block.

Edited the original post for clarity. Just to add on this is the console logged config:

Object {
  "path": "public.realm",
  "schema": Array [
    [Function Medication],
  ],
  "sync": Object {
    "clientReset": Object {
      "clientResetAfter": [Function clientResetAfter],
      "clientResetBefore": [Function clientResetBefore],
      "mode": "discardLocal",
    },
    "error": [Function anonymous],
    "existingRealmFileBehavior": Object {
      "type": "openImmediately",
    },
    "newRealmFileBehavior": Object {
      "type": "openImmediately",
    },
    "partitionValue": "public",
    "user": User {},
  },
}

@github-actions github-actions bot added Needs-Attention Reporter has responded. Review comment. and removed Waiting-For-Reporter Waiting for more information from the reporter before we can proceed labels Jul 4, 2022
@kneth
Copy link
Contributor

kneth commented Jul 7, 2022

From your description, it sounds like you are hitting the same issue as in realm/realm-core#5289. We haven't released the fix for hermes yet but it should come soon.

@sync-by-unito sync-by-unito bot added Waiting-For-Reporter Waiting for more information from the reporter before we can proceed and removed Needs-Attention Reporter has responded. Review comment. labels Jul 7, 2022
@thespacemanatee
Copy link
Contributor Author

@kneth Thank you for the update! I dislike asking for ETAs but just for this once, do you know when the next version of realm@beta is coming? We are planning our first release soon and hope to be able to get this in before that, as Realm instability has been a point of contention in our team thus far, which is otherwise a fantastic library. Thank you!

@github-actions github-actions bot added Needs-Attention Reporter has responded. Review comment. and removed Waiting-For-Reporter Waiting for more information from the reporter before we can proceed labels Jul 7, 2022
@kraenhansen
Copy link
Member

@thespacemanatee it's your lucky day, as we just released v11.0.0-rc.0.

@thespacemanatee
Copy link
Contributor Author

Amazing work guys, the issue seems to be (mostly) fixed. I induced a client reset by making a breaking change which still causes the app to crash indefinitely, but once I revert the schema change, it stopped crashing immediately and performed the client reset successfully.

Is the incessant crashing on broken schema change expected? I would have expected the client reset to just fail gracefully. Nonetheless, this is a huge leap forward and thanks yall for the hard work.

@kneth
Copy link
Contributor

kneth commented Jul 8, 2022

Is the incessant crashing on broken schema change expected? I would have expected the client reset to just fail gracefully

We are currently implementing new client reset modes (see #4711) which will make the client reset process more smooth.

You might want to reach out to Technical Service as they will be able to look at both client and server side to provide better insights.

@sync-by-unito sync-by-unito bot added Waiting-For-Reporter Waiting for more information from the reporter before we can proceed and removed Needs-Attention Reporter has responded. Review comment. labels Jul 8, 2022
@tomduncalf
Copy link
Contributor

@thespacemanatee Did you have any more feedback on this or can we close the ticket?

@tomduncalf
Copy link
Contributor

I'm going to close this ticket for now but please feel free to re-open if you are still having issues

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
O-Community T-Bug Waiting-For-Reporter Waiting for more information from the reporter before we can proceed
Projects
None yet
Development

No branches or pull requests

4 participants