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

Various crashes during usage #4491

Closed
Lineflyer opened this issue Nov 22, 2014 · 7 comments
Closed

Various crashes during usage #4491

Lineflyer opened this issue Nov 22, 2014 · 7 comments
Assignees
Labels
Bug Issues classified as a bug Prio - High A significant malfunction of a feature/function. High user impact. Regression An exitsting function/feature does no longer work as expected.

Comments

@Lineflyer
Copy link
Member

With todays NB
Details later

@Lineflyer Lineflyer added Bug Issues classified as a bug Prio - High A significant malfunction of a feature/function. High user impact. labels Nov 22, 2014
@Lineflyer
Copy link
Member Author

A lot of actions seem to lead to a crash.
Cant provide a stack trace at the moment.

Does not seem to be reproducible but seems depending on the speed I perform some actions.

@Lineflyer Lineflyer changed the title crash on long click in lists Various crashes during usage Nov 23, 2014
@Lineflyer
Copy link
Member Author

Back at home and here is the log:

22:14:45.613 Error cgeo 29802  UncaughtException
22:14:45.613 Error cgeo 29802  java.lang.IllegalStateException: Exception thrown on Scheduler.Worker thread. Add `onError` handling.
22:14:45.613 Error cgeo 29802   at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:50)
22:14:45.613 Error cgeo 29802   at android.os.Handler.handleCallback(Handler.java:733)
22:14:45.613 Error cgeo 29802   at android.os.Handler.dispatchMessage(Handler.java:95)
22:14:45.613 Error cgeo 29802   at android.os.Looper.loop(Looper.java:157)
22:14:45.613 Error cgeo 29802   at android.app.ActivityThread.main(ActivityThread.java:5356)
22:14:45.613 Error cgeo 29802   at java.lang.reflect.Method.invokeNative(Native Method)
22:14:45.613 Error cgeo 29802   at java.lang.reflect.Method.invoke(Method.java:515)
22:14:45.613 Error cgeo 29802   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
22:14:45.613 Error cgeo 29802   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
22:14:45.613 Error cgeo 29802   at dalvik.system.NativeStart.main(Native Method)
22:14:45.613 Error cgeo 29802  Caused by: rx.exceptions.OnErrorNotImplementedException
22:14:45.613 Error cgeo 29802   at rx.Observable$31.onError(Observable.java:7025)
22:14:45.613 Error cgeo 29802   at rx.observers.SafeSubscriber._onError(SafeSubscriber.java:154)
22:14:45.613 Error cgeo 29802   at rx.observers.SafeSubscriber.onError(SafeSubscriber.java:111)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.NotificationLite.accept(NotificationLite.java:147)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.pollQueue(OperatorObserveOn.java:177)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.access$000(OperatorObserveOn.java:65)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber$2.call(OperatorObserveOn.java:153)
22:14:45.613 Error cgeo 29802   at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:45)
22:14:45.613 Error cgeo 29802   ... 9 more
22:14:45.613 Error cgeo 29802  Caused by: rx.exceptions.MissingBackpressureException
22:14:45.613 Error cgeo 29802   at rx.internal.util.RxRingBuffer.onNext(RxRingBuffer.java:338)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.onNext(OperatorObserveOn.java:115)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorMap$1.onNext(OperatorMap.java:54)
22:14:45.613 Error cgeo 29802   at rx.subjects.SubjectSubscriptionManager$SubjectObserver.onNext(SubjectSubscriptionManager.java:224)
22:14:45.613 Error cgeo 29802   at rx.subjects.ReplaySubject.onNext(ReplaySubject.java:299)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorMulticast$2.onNext(OperatorMulticast.java:106)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorDoOnEach$1.onNext(OperatorDoOnEach.java:84)
22:14:45.613 Error cgeo 29802   at rx.internal.operators.OperatorOnErrorResumeNextViaFunction$1.onNext(OperatorOnErrorResumeNextViaFunction.java:89)
22:14:45.623 Error cgeo 29802   at rx.internal.operators.OperatorOnErrorResumeNextViaFunction$1.onNext(OperatorOnErrorResumeNextViaFunction.java:89)
22:14:45.623 Error cgeo 29802   at rx.observers.Subscribers$1.onNext(Subscribers.java:66)
22:14:45.623 Error cgeo 29802   at rx.observers.SafeSubscriber.onNext(SafeSubscriber.java:130)
22:14:45.623 Error cgeo 29802   at rx.subjects.SubjectSubscriptionManager$SubjectObserver.onNext(SubjectSubscriptionManager.java:224)
22:14:45.623 Error cgeo 29802   at rx.subjects.PublishSubject.onNext(PublishSubject.java:121)
22:14:45.623 Error cgeo 29802   at cgeo.geocaching.sensors.RotationProvider.onSensorChanged(RotationProvider.java:54)
22:14:45.623 Error cgeo 29802   at android.hardware.SystemSensorManager$SensorEventQueue.dispatchSensorEvent(SystemSensorManager.java:474)
22:14:45.623 Error cgeo 29802   at android.os.MessageQueue.nativePollOnce(Native Method)
22:14:45.623 Error cgeo 29802   at android.os.MessageQueue.next(MessageQueue.java:138)
22:14:45.623 Error cgeo 29802   at android.os.Looper.loop(Looper.java:123)
22:14:45.623 Error cgeo 29802   ... 6 more

@Lineflyer Lineflyer added the Regression An exitsting function/feature does no longer work as expected. label Nov 23, 2014
@Lineflyer
Copy link
Member Author

@samueltardieu rxjava?

@samueltardieu
Copy link
Member

Yup, it looks like your rotation sensor delivers values very rapidly, much more rapidly that they could be used, and filled the buffer.

This could only appear now that we switched to RxJava 1.0 (which includes back pressure). I'll tend to it.

@samueltardieu samueltardieu self-assigned this Nov 23, 2014
@Lineflyer
Copy link
Member Author

It make c:geo unusable on my device (Galaxy S4) currently. Seems more devices could suffer from that then.

samueltardieu added a commit that referenced this issue Nov 23, 2014
On Samsung Galaxy S4 it looks like the rotation sensor delivers events
faster than cgeo can handle them during some lists operations
 (in SENSOR_DELAY_NORMAL mode).

Part of work on #4491.
samueltardieu added a commit that referenced this issue Nov 23, 2014
There is no need to update the arrow display in list more than 4 times
per second, as this is not an instrument for precise cache hunting.

Part of work on #4491.
@samueltardieu samueltardieu added the Field test Issue to be (re)tested in the field label Nov 23, 2014
@samueltardieu
Copy link
Member

@Lineflyer Please confirm that this fixes the issue for you (starting with 20141124-NB).

I have put in place both a protection against a buffer fill in orientation and rotation providers, and also limited the orientation and location updates to 4 per second in lists as there is no need to be more precise than that.

@Lineflyer
Copy link
Member Author

Version 20141124-NB seems to be stable again. No more crashes during usage up to now.

@Lineflyer Lineflyer removed the Field test Issue to be (re)tested in the field label Nov 24, 2014
@Lineflyer Lineflyer assigned samueltardieu and unassigned Lineflyer Nov 24, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Issues classified as a bug Prio - High A significant malfunction of a feature/function. High user impact. Regression An exitsting function/feature does no longer work as expected.
Projects
None yet
Development

No branches or pull requests

2 participants