Получение сбоя на Android с хранилищем данных Appsync версии 1.30.0

#aws-appsync

#aws-синхронизация приложений

Вопрос:

Мы пытаемся реализовать хранилище данных Appsync для нашего приложения для Android. Время от времени вижу краха. Похоже, это произойдет, когда Datstire попытается выполнить синхронизацию при повторном подключении к Appsync.

 implementation 'com.amplifyframework:aws-datastore:1.30.0'  implementation 'com.amplifyframework:aws-auth-cognito:1.30.0'  implementation 'com.amplifyframework:aws-api:1.30.0'  

Похоже, этого не происходит с версией 1.25.0

 Error ended observation of mutation outbox:  DataStoreException{message=Failed to process PendingMutation{mutatedItem=SerializedModel{id='84ebd29b-b24f-4c36-824e-8a15d8bf56cc', serializedData={receiver=VND-0#nut720, count=1, admin=123, isSeen=false, createdAt=null, senderName=ABCD, sender=VND-0#cl44897, rk=1638468149, id=84ebd29b-b24f-4c36-824e-8a15d8bf56cc, pk=VND-0#cl44897, messageData=78, updatedAt=null}, modelName=Message1}, mutationType=CREATE, mutationId=0756a340-539a-11ec-a7f2-510b5799e6d5, predicate=MatchAllQueryPredicate}, cause=null, recoverySuggestion=Check your internet connection.}  at com.amplifyframework.datastore.syncengine.MutationProcessor.drainMutationOutbox(MutationProcessor.java:119)  at com.amplifyframework.datastore.syncengine.MutationProcessor.lambda$startDrainingMutationOutbox$1$MutationProcessor(MutationProcessor.java:101)  at com.amplifyframework.datastore.syncengine.MutationProcessor$ExternalSyntheticLambda3.apply(Unknown Source:4)  at io.reactivex.rxjava3.internal.operators.observable.ObservableFlatMapCompletableCompletable$FlatMapCompletableMainObserver.onNext(ObservableFlatMapCompletableCompletable.java:97)  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)  at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)  at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)  at java.util.concurrent.FutureTask.run(FutureTask.java:266)  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)  at java.lang.Thread.run(Thread.java:764)  2021-12-02 23:36:15.352 21267-21401/com.example.sampleapplication W/System.err: io.reactivex.rxjava3.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with. Further reading: https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling | DataStoreException{message=Failure during mutation., cause=ApiException{message=OkHttp client request failed., cause=java.net.SocketTimeoutException: timeout, recoverySuggestion=See attached exception for more details.}, recoverySuggestion=Check details.}  2021-12-02 23:36:15.353 21267-21401/com.example.sampleapplication W/System.err: at io.reactivex.rxjava3.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:367)  2021-12-02 23:36:15.354 21267-21401/com.example.sampleapplication W/System.err: at io.reactivex.rxjava3.internal.operators.single.SingleCreate$Emitter.onError(SingleCreate.java:82)  2021-12-02 23:36:15.355 21267-21401/com.example.sampleapplication W/System.err: at com.amplifyframework.datastore.storage.sqlite.PersistentModelVersion$ExternalSyntheticLambda0.accept(Unknown Source:4)  2021-12-02 23:36:15.356 21267-21401/com.example.sampleapplication W/System.err: at com.amplifyframework.datastore.appsync.AppSyncClient.lambda$mutation$5(AppSyncClient.java:358)  2021-12-02 23:36:15.356 21267-21401/com.example.sampleapplication W/System.err: at com.amplifyframework.datastore.appsync.AppSyncClient$ExternalSyntheticLambda0.accept(Unknown Source:4)  2021-12-02 23:36:15.356 21267-21401/com.example.sampleapplication W/System.err: at com.amplifyframework.api.aws.AppSyncGraphQLOperation$OkHttpCallback.onFailure(AppSyncGraphQLOperation.java:161)  2021-12-02 23:36:15.357 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:525)  2021-12-02 23:36:15.358 21267-21401/com.example.sampleapplication W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)  2021-12-02 23:36:15.358 21267-21401/com.example.sampleapplication W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)  2021-12-02 23:36:15.359 21267-21401/com.example.sampleapplication W/System.err: at java.lang.Thread.run(Thread.java:764)  2021-12-02 23:36:15.361 21267-21401/com.example.sampleapplication W/System.err: Caused by: DataStoreException{message=Failure during mutation., cause=ApiException{message=OkHttp client request failed., cause=java.net.SocketTimeoutException: timeout, recoverySuggestion=See attached exception for more details.}, recoverySuggestion=Check details.}  2021-12-02 23:36:15.361 21267-21401/com.example.sampleapplication W/System.err: ... 7 more  2021-12-02 23:36:15.363 21267-21401/com.example.sampleapplication W/System.err: Caused by: ApiException{message=OkHttp client request failed., cause=java.net.SocketTimeoutException: timeout, recoverySuggestion=See attached exception for more details.}  2021-12-02 23:36:15.364 21267-21401/com.example.sampleapplication W/System.err: ... 5 more  2021-12-02 23:36:15.365 21267-21401/com.example.sampleapplication W/System.err: Caused by: java.net.SocketTimeoutException: timeout  2021-12-02 23:36:15.366 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http2.Http2Stream$StreamTimeout.newTimeoutException(Http2Stream.kt:677)  2021-12-02 23:36:15.366 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http2.Http2Stream$StreamTimeout.exitAndThrowIfTimedOut(Http2Stream.kt:686)  2021-12-02 23:36:15.367 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http2.Http2Stream.takeHeaders(Http2Stream.kt:143)  2021-12-02 23:36:15.367 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http2.Http2ExchangeCodec.readResponseHeaders(Http2ExchangeCodec.kt:96)  2021-12-02 23:36:15.368 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.connection.Exchange.readResponseHeaders(Exchange.kt:106)  2021-12-02 23:36:15.368 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:79)  2021-12-02 23:36:15.369 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.369 21267-21401/com.example.sampleapplication W/System.err: at com.amplifyframework.api.aws.UserAgentInterceptor.intercept(UserAgentInterceptor.java:56)  2021-12-02 23:36:15.369 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.370 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34)  2021-12-02 23:36:15.371 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.371 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)  2021-12-02 23:36:15.372 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.372 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)  2021-12-02 23:36:15.372 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.373 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)  2021-12-02 23:36:15.373 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)  2021-12-02 23:36:15.373 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)  2021-12-02 23:36:15.374 21267-21401/com.example.sampleapplication W/System.err: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517) 2021-12-02 23:36:15.374 21267-21401/com.example.sampleapplication