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

[C-2171] Fix remove download performance#2903

Merged
dylanjeffers merged 3 commits into
mainfrom
dj-c-2171-remove-download-perf
Feb 23, 2023
Merged

[C-2171] Fix remove download performance#2903
dylanjeffers merged 3 commits into
mainfrom
dj-c-2171-remove-download-perf

Conversation

@dylanjeffers

@dylanjeffers dylanjeffers commented Feb 22, 2023

Copy link
Copy Markdown
Contributor

Description

Fixes slowness due to redDirRec and non-concurrent removal
Also fixes remove analytics to only be called when we actually remove

@dylanjeffers dylanjeffers requested review from a team and raymondjacobson February 22, 2023 03:04

@raymondjacobson raymondjacobson left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

collectionStatus: CollectionStatus
) {
if (item.type === 'collection' && !collectionStatus[item.id]) {
track(make({ eventName: EventNames.OFFLINE_MODE_REMOVE_ITEM, ...item }))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this feels like it could be a lot of events. amplitude react native will batch them, with configurable concurrency but maybe we should do one event w more metadata?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I def agree. Ik not too sure why this data would be useful even... Maybe can chat with Andrew about it

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@amendelsohn do you have thoughts here?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm yeah I don't think we need to track that. If we do, we should do the count of times the toggle is turned off and/or the total number of items to be deleted.

const trackDirectory = yield* call(getLocalTrackDir, item.id.toString())
const exists = yield* call(RNFetchBlob.fs.exists, trackDirectory)
if (exists) {
console.log('removing track!')

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

log!

@amendelsohn amendelsohn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

if (withLogs) {
console.log(`Before purge:`)
}
await readDirRec(downloadsRoot)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ohh yeah good catch

@dylanjeffers dylanjeffers merged commit 1f8358b into main Feb 23, 2023
@dylanjeffers dylanjeffers deleted the dj-c-2171-remove-download-perf branch February 23, 2023 04:50
audius-infra pushed a commit that referenced this pull request Feb 25, 2023
[ef02ac1] Fix podfile, specify ruby-version (#2924) Dylan Jeffers
[c925cfe] Fix track play button (#2925) Michael Piazza
[6e3338b] [C-2201] Improve card list skeleton count (#2916) Dylan Jeffers
[c696519] [C-2207] Fix scrubber timestamp sync issues (#2912) Dylan Jeffers
[f9f5066] [C-2202] Sync legacy search history (#2915) Dylan Jeffers
[1c50935] [C-2193] Fix webview audio players on ios (#2922) Raymond Jacobson
[dd649d5] [C-1922] Fix mobile share encoding (#2918) Dylan Jeffers
[eb6b89e] Fix collectibles route (#2917) Dylan Jeffers
[efaa539] Fix lineup showing empty tile before fetch (#2911) Dylan Jeffers
[c77076a] comma (#2920) Marcus Pasell
[6041a40] [PAY-943] - Filter out download options for gated track (#2919) Saliou Diallo
[3b2ff6d] [DMs] RadioButton component and InboxSettingsModal (#2884) Marcus Pasell
[709dde5] [PAY-890] Add locked content modal (#2893) Saliou Diallo
[3d8912f] [C-1856] Upgrade react-native to 0.71 (#2644) Dylan Jeffers
[e863756] [C-1931] Refactor collection header for private track logic (#2676) Dylan Jeffers
[1f8358b] [C-2171] Fix remove download performance (#2903) Dylan Jeffers
[4050a55] [C-2042] Fix empty collection on deep link (#2914) Sebastian Klingler
[03a31ee] [C-2164] add retry and requeue logic to download track jobs (#2899) Andrew Mendelsohn
[3bf27f7] [C-2186] Fix spacing for longs handles/names (#2908) Raymond Jacobson
[a89b3bb] Fix image loading issues w Share to X (#2909) nicoback2
[902159c] [C-2130] Fix race cond in lineup init (#2905) Raymond Jacobson
[7beb57d] [C-2200] Fix profile tabs loading/empty states (#2906) Dylan Jeffers
[6beaa2d] [C-2198] Fix runtime error due to missing drawer data (#2904) Dylan Jeffers
[2b44b26] [C-2197] Fix image prefetch to work with fast-image (#2902) Dylan Jeffers
[5a8069f] Permission copy change (#2901) nicoback2
[d427d3e] Fix TikTok share permission for iOS (#2897) nicoback2
[44c665d] [C-2195] Fix tiktok share on android (#2900) Sebastian Klingler
[0235af9] [C-2178] Complete w/ tiktok qa fixes (#2896) Sebastian Klingler
[dfe4622] Add repost of a repost metadata to reposting tracks and collections (#2847) sabrina-kiam
[c2f6ad7] Minor updates to mobile chats (#2891) Reed
[0e70d27] [C-2169] Fix track-player hot reload (#2890) Dylan Jeffers
[a07ce78] Rename TikTok video feature flag (#2894) nicoback2
[3da2b87] Relay to both POA and ACDC (#2895) Isaac Solo
[a02fee7] [C-2176] TikTok sdk improvements (#2892) Sebastian Klingler
@AudiusProject AudiusProject deleted a comment from linear Bot Sep 11, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants