thunderbird / thunderbird/thunderbird-android

Resource Leak or Mismanagement

Open
#9,933 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

unconfirmed
Dominant language
Kotlin
Stars
14k
Forks
2.8k
Avg merge
3d 3h
Merged PRs (30d)
57

Description

Checklist
  • I have used the search function to see if someone else has already submitted the same bug report.
  • I will describe the problem with as much detail as possible.
App

K-9 Mail

App version

9.0b3

Where did you get the app from?

F-Droid

Android version

11

Device model

Google Pixel

Steps to reproduce

Describe the bug:
Our team is developing a tool that can automatically identify potential resource issues in Android applications.

To detect resource anomalies, we designed five neutral cycles—GUI event sequences that should not increase resource usage:

DOC (Double Orientation Change)
Home (Return to Home Screen → Resume AUT)
Notification (Open Notification Bar → Close Notification Bar)
Text (Input Text → Clear Text)
Scroll (Swipe Down/Right → Swipe Up/Left)

The first three cycles are designed to trigger 3 main pairs of lifecycle callback functions (i.e., onCreate() and onDestroy(), onStart()/onRestart() and onStop(), onResume() and onPause()), while cycles ④ and ⑤ are based on UI interaction semantics, covering user input and scrolling scenarios that may also affect resource usage.

If executing a specific neutral cycle 50 times in a given state leads to continuous growth in certain resource metrics, we regard it as a potential resource leak or mismanagement issue that may cause software aging.

The bugs that have been successfully reproduced are uploaded here.k9mail.zip
There may be some inaccuracies in state recognition, which could lead to duplicate reports. We apologize for any inconvenience this may cause.

Each bug corresponds to one screenshot (A)—the image shows the page where the issue occurs.
Other information is encoded in the image filename as follows:

{ActivityName (B)}_{ExecutedNeutralCycle (C)}_{ResourcesWithContinuousGrowth (D)}

We would greatly appreciate it if the developers could help us verify whether these issues truly exist. Your timely confirmation would be extremely valuable to our research and development efforts.

To Reproduce:
Steps to reproduce the behavior:

  1. Open the Android app under test.
  2. Execute the specified neutral cycle (based on C) 50 times in the indicated activity/state (based on A & B).
  3. Observe the monitored resource metrics (based on D).
  4. Identify whether any metric shows continuous growth.
Expected behavior

Neutral cycles should not cause resource metrics to continuously increase.

Actual behavior

Neutral cycles cause resource metrics to continuously increase.

Logs

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the attached k9mail.zip and identifying the reported activity, neutral cycle, and resource metric from each screenshot filename. Reproduce the relevant cycle 50 times on the stated Android version and device context, then determine whether the metric grows continuously and document whether the report reflects a real leak.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.