This issue has resurfaced in the latest 21.0.0 SDK version but has issues with the internal ExoPlayer it seems.
Note: All data is according to Crashlytics
Affected Ad Type: Interstitial (AdActivity::class.java)
Affected Android versions: Android 9/10
Devices affected: Motorola [moto e(7) power, moto g(6)]
Locally reproducible: No (please don't ask for a sample)
Crash Rate: Very Low
Below are the stacktraces:
#Stacktrace 1
Fatal Exception: java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Try again
at java.lang.Thread.nativeCreate(Thread.java)
at java.lang.Thread.start(Thread.java:733)
at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:975)
at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1382)
at java.util.concurrent.Executors$DelegatedExecutorService.execute(Executors.java:624)
at com.google.android.gms.ads.exoplayer3.upstream.n.c(n.java)
at com.google.android.gms.ads.exoplayer3.upstream.n.b(n.java:3)
at com.google.android.gms.ads.exoplayer3.source.i.r(i.java:5)
at com.google.android.gms.ads.exoplayer3.source.i.n(i.java)
at com.google.android.gms.ads.exoplayer3.source.p.n(p.java)
at com.google.android.gms.ads.exoplayer3.n.handleMessage(n.java:18)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
------------------------------------------------------------------------------------------------------------------------------------------
#Stacktrace 2
Fatal Exception: java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Try again
at java.lang.Thread.nativeCreate(Thread.java)
at java.lang.Thread.start(Thread.java:883)
at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:975)
at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1382)
at java.util.concurrent.Executors$DelegatedExecutorService.execute(Executors.java:630)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.execute(Loader.java:510)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.start(Loader.java:363)
at com.google.android.exoplayer2.upstream.Loader.startLoading(Loader.java:257)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod.startLoading(ProgressiveMediaPeriod.java:818)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod.prepare(ProgressiveMediaPeriod.java:234)
at com.google.android.exoplayer2.source.MaskingMediaPeriod.prepare(MaskingMediaPeriod.java:145)
at com.google.android.exoplayer2.ExoPlayerImplInternal.maybeUpdateLoadingPeriod(ExoPlayerImplInternal.java:1997)
at com.google.android.exoplayer2.ExoPlayerImplInternal.updatePeriods(ExoPlayerImplInternal.java:1977)
at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:964)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:499)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
------------------------------------------------------------------------------------------------------------------------------------------
#Stacktrace 3
Fatal Exception: java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Try again
at java.lang.Thread.nativeCreate(Thread.java)
at java.lang.Thread.start(Thread.java:883)
at com.google.android.gms.ads.exoplayer3.video.e.b(e.java:4)
at com.google.android.gms.ads.exoplayer3.video.h.J(h.java:13)
at com.google.android.gms.ads.exoplayer3.mediacodec.c.N(c.java:12)
at com.google.android.gms.ads.exoplayer3.mediacodec.c.G(c.java:4)
at com.google.android.gms.ads.exoplayer3.video.h.G(h.java:1)
at com.google.android.gms.ads.exoplayer3.mediacodec.c.z(c.java:3)
at com.google.android.gms.ads.exoplayer3.n.handleMessage(n.java:42)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)