Skip to content
This repository was archived by the owner on Aug 8, 2023. It is now read-only.
This repository was archived by the owner on Aug 8, 2023. It is now read-only.

eglSwapBuffers() failed #6647

@tobrun

Description

@tobrun

When looking into the Android CI tests being flaky in #6546. I'm able to reproduce our test harness being unstable but I occasionally run into the error below when running one of the runtimestyle test:

java.lang.Error: eglSwapBuffers() failed
at com.mapbox.mapboxsdk.maps.NativeMapView.nativeRender(Native Method)
at com.mapbox.mapboxsdk.maps.NativeMapView.render(NativeMapView.java:141)
at com.mapbox.mapboxsdk.maps.MapView.onDraw(MapView.java:1431)
at android.view.View.draw(View.java:17067)
at android.view.View.updateDisplayListIfDirty(View.java:16049)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3748)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3728)
at android.view.View.updateDisplayListIfDirty(View.java:16012)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:656)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:662)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:770)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2796)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2604)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2211)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1246)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6301)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:871)
at android.view.Choreographer.doCallbacks(Choreographer.java:683)
at android.view.Choreographer.doFrame(Choreographer.java:619)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:857)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)

Looking at the logcat I'm seeing:

10-11 08:25:36.963 1060-1116/? I/ActivityManager: Displayed com.mapbox.mapboxsdk.testapp/.activity.style.RuntimeStyleTestActivity: +519ms
10-11 08:25:37.092 22290-22290/com.mapbox.mapboxsdk.testapp E/MapboxMap: isMapboxReady called with value true
10-11 08:25:37.094 22290-22305/com.mapbox.mapboxsdk.testapp I/FillLayerTest: Adding layer
10-11 08:25:37.113 22290-22305/com.mapbox.mapboxsdk.testapp I/FillLayerTest: fill-pattern
10-11 08:25:37.114 22290-22290/com.mapbox.mapboxsdk.testapp E/mbgl: {pboxsdk.testapp}[OpenGL]: eglSwapBuffers() returned error 12301
10-11 08:25:37.149 22290-22290/com.mapbox.mapboxsdk.testapp D/AndroidRuntime: Shutting down VM
10-11 08:25:37.155 1060-1116/? I/WindowManager: Destroying surface Surface(name=Starting com.mapbox.mapboxsdk.testapp) called by com.android.server.wm.WindowStateAnimator.destroySurface:2014 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:881 com.android.server.wm.WindowState.destroyOrSaveSurface:2073 com.android.server.wm.AppWindowToken.destroySurfaces:363 com.android.server.wm.WindowStateAnimator.finishExit:565 com.android.server.wm.WindowStateAnimator.stepAnimationLocked:491 com.android.server.wm.WindowAnimator.updateWindowsLocked:303 com.android.server.wm.WindowAnimator.animateLocked:704 
10-11 08:25:37.158 22290-22290/com.mapbox.mapboxsdk.testapp E/MonitoringInstrumentation: Exception encountered by: Thread[main,5,main]. Dumping thread state to outputs and pining for the fjords.
                                                                                         java.lang.Error: eglSwapBuffers() failed
                                                                                             at com.mapbox.mapboxsdk.maps.NativeMapView.nativeRender(Native Method)
                                                                                             at com.mapbox.mapboxsdk.maps.NativeMapView.render(NativeMapView.java:141)
                                                                                             at com.mapbox.mapboxsdk.maps.MapView.onDraw(MapView.java:1431)
                                                                                             at android.view.View.draw(View.java:17067)

cc @ivovandongen

Metadata

Metadata

Assignees

No one assigned

    Labels

    AndroidMapbox Maps SDK for Androidcrash

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions