Opened on 05/22/2014 at 06:14:49 AM
Closed on 11/12/2014 at 10:15:46 AM
Last modified on 11/26/2014 at 07:16:14 PM
#537 closed change (fixed)
[Downloader] Mark second downloads
Reported by: | fhd | Assignee: | greiner |
---|---|---|---|
Priority: | P2 | Milestone: | Adblock-Plus-2.6.7-for-Firefox |
Module: | Core | Keywords: | 2014q4 |
Cc: | trev, greiner | Blocked By: | |
Blocking: | #536 | Platform: | Unknown |
Ready: | yes | Confidential: | no |
Tester: | Verified working: | no | |
Review URL(s): |
http://codereview.adblockplus.org/6013081427640320/ |
Description (last modified by trev)
Background
See #536.
What to change
Downloads made for a resource should add the parameter downloadCount which needs to be incremented for each download and max out at 5+.
Hints for testers
Filter subscription updates should work the same as before, without any user visible changes. The download URLs will have an additional parameter.
Attachments (0)
Change History (17)
comment:1 Changed on 05/22/2014 at 06:24:43 AM by fhd
- Cc trev added
comment:3 Changed on 10/06/2014 at 09:35:09 AM by greiner
- Platform set to Unknown
comment:4 Changed on 10/06/2014 at 11:36:11 AM by trev
I would rather not collect more data than absolutely necessary here. However, I am also afraid that anomalies might not stop at the initial download. So something like downloadCount=5+ might make sense (counting to 5 downloads and sending only 5+ after that). Larger download counts might allow recognizing individual users here and we definitely don't want that.
Note that the additional entropy is also a problem for our server-side processing, it makes caching more problematic.
comment:5 Changed on 10/06/2014 at 11:45:51 AM by fhd
- Keywords 2014q4 added
comment:6 Changed on 10/06/2014 at 02:22:36 PM by greiner
- Cc greiner added
comment:7 Changed on 10/15/2014 at 09:34:09 AM by greiner
- Description modified (diff)
- Owner set to greiner
comment:8 Changed on 10/22/2014 at 12:05:24 PM by greiner
Actually, one important detail that's missing for implementation of the downloadCount=5+ approach is where to store the counter. In the initially suggested approach the second download would be determined implicitly by checking for the last version to be zero.
Therefore I see the following options:
- Implement only for second downloads (problem: won't allow us to distinguish downloads 3-5+)
- Attach counter to downloadables (problem: we currently don't store downloadables)
- Attach counter to notification data and subscriptions (problem: problematic to reuse code)
None of these options is optimal so let me know if you can think of a better way to store the counter. Otherwise we might want to go with the original approach but for the sake of forwards-compatibility I'd recommend sticking with downloadCount instead of secondDownload.
comment:9 Changed on 11/03/2014 at 12:41:03 PM by trev
In the initially suggested approach the second download would be determined implicitly by checking for the last version to be zero.
No, you cannot distinguish first and second download via lastVersion.
Implement only for second downloads (problem: won't allow us to distinguish downloads 3-5+)
Won't help here, see above.
Attach counter to downloadables (problem: we currently don't store downloadables)
No, downloadables aren't stored directly. They will need the download count as an additional field however.
Attach counter to notification data and subscriptions (problem: problematic to reuse code)
Yes, that's the approach to be chosen here - same as for lastVersion and a bunch of similar fields.
comment:10 Changed on 11/10/2014 at 06:15:16 PM by greiner
- Review URL(s) modified (diff)
- Status changed from new to reviewing
comment:11 Changed on 11/11/2014 at 06:10:31 PM by greiner
- Review URL(s) modified (diff)
comment:12 Changed on 11/12/2014 at 10:15:46 AM by greiner
- Milestone set to Adblock-Plus-for-Firefox-next
- Resolution set to fixed
- Status changed from reviewing to closed
comment:13 Changed on 11/24/2014 at 12:03:04 PM by sven
- Keywords 2014q4 removed
comment:14 Changed on 11/26/2014 at 02:54:12 PM by fhd
- Keywords 2014q4 added
comment:15 Changed on 11/26/2014 at 02:56:33 PM by fhd
- Keywords 2014q4 removed
comment:16 Changed on 11/26/2014 at 03:01:22 PM by fhd
- Keywords 2014q4 added
comment:17 Changed on 11/26/2014 at 07:16:14 PM by trev
- Description modified (diff)
What about making this more generic and instead of a secondDownload=true add a downloadCount=12 parameter or overloading the lastVersion one (e.g. lastVersion=12/201410060850)? This increases the request's entropy and could allow us to make out usage patterns which at a later point we could use to detect abnormalities.