Closed Bug 1590453 Opened 5 years ago Closed 5 years ago

Crash in [@ java.nio.channels.OverlappingFileLockException: at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java)]

Categories

(Firefox for Android Graveyard :: General, defect, P1)

Firefox 68
Unspecified
Android
defect

Tracking

(firefox-esr6871+ fixed)

RESOLVED FIXED
Tracking Status
firefox-esr68 71+ fixed

People

(Reporter: marcia, Assigned: petru)

Details

(Keywords: crash, regression, Whiteboard: [fennec68.3])

Crash Data

Attachments

(1 file)

This bug is for crash report bp-41406764-4af6-4cca-afda-ed37f0191022.

Seen while looking at fennec release crashes: https://bit.ly/2W5wdII. This crash has been around in previous releases but has no bug. There are no useful comments. Volume seems higher in 68.1 compared to the 68 release.

Some telemetry related stuff in the stack:

at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.lockAndReadFileAndCloseStream(TelemetryJSONFilePingStore.java:302)
at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.lockAndReadJSONFromFile(TelemetryJSONFilePingStore.java:248)
at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.getAllPings(TelemetryJSONFilePingStore.java:171)
at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.getAllPings(TelemetryJSONFilePingStore.java:66)
at org.mozilla.gecko.telemetry.TelemetryUploadService.uploadPendingPingsFromStore(TelemetryUploadService.java:108)
at org.mozilla.gecko.telemetry.TelemetryUploadService.onHandleWork(TelemetryUploadService.java:81)

Affected APIs range from 29 to 24.

Java stack trace:

java.nio.channels.OverlappingFileLockException
	at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
	at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
	at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1061)
	at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.lockAndReadFileAndCloseStream(TelemetryJSONFilePingStore.java:302)
	at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.lockAndReadJSONFromFile(TelemetryJSONFilePingStore.java:248)
	at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.getAllPings(TelemetryJSONFilePingStore.java:171)
	at org.mozilla.gecko.telemetry.stores.TelemetryJSONFilePingStore.getAllPings(TelemetryJSONFilePingStore.java:66)
	at org.mozilla.gecko.telemetry.TelemetryUploadService.uploadPendingPingsFromStore(TelemetryUploadService.java:108)
	at org.mozilla.gecko.telemetry.TelemetryUploadService.onHandleWork(TelemetryUploadService.java:81)
	at android.support.v4.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:392)
	at android.support.v4.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:383)
	at android.os.AsyncTask$2.call(AsyncTask.java:316)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
	at java.lang.Thread.run(Thread.java:776)

The crash rate is pretty low, but I'll ask the team to take a peek.

Priority: -- → P1
Whiteboard: [fennec68.1.2]

This case where the file would have already been locked, case in which a null
is to be returned is already handled by the caller of the
lockAndReadFileAndCloseStream method -
https://hg.mozilla.org/releases/mozilla-esr68/file/5ed74d712d2cccd2b50eb2b831f5519b621807ae/mobile/android/base/java/org/mozilla/gecko/telemetry/stores/TelemetryJSONFilePingStore.java#l257
We just didn't account for the particular OverlappingFileLockException.

Assignee: nobody → petru.lingurar

Comment on attachment 9111236 [details]
Bug 1590453 - Ignore locked ping files; r?VladBaicu

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: High volume crash fix.
  • User impact if declined: Possible seemingly random crash.
  • Fix Landed on Version:
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Small change.
  • String or UUID changes made by this patch:
Attachment #9111236 - Flags: approval-mozilla-esr68?

Comment on attachment 9111236 [details]
Bug 1590453 - Ignore locked ping files; r?VladBaicu

Fixes a high-volume Fennec crash. Approved for 68.3b6.

Attachment #9111236 - Flags: approval-mozilla-esr68? → approval-mozilla-esr68+
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Whiteboard: [fennec68.1.2] → [fennec68.3]
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: