Details
-
Type:
Improvement
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 3.3
-
Fix Version/s: EE-3.3.0.GA, 4.0.BETA, 4.0
-
Component/s: JavaScript Client
-
Labels:None
-
Environment:ICEpush
-
Assignee Priority:P1
Description
There are cases where pushIDs are not cleaned up, possibly due to browser bugs. A different strategy could yield accurate cleanup even under poor browser behavior.
Activity
Field | Original Value | New Value |
---|---|---|
Fix Version/s | EE-3.3.0.GA [ 10575 ] |
Assignee | Mircea Toma [ mircea.toma ] |
Assignee Priority | P1 [ 10010 ] |
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #35878 | Tue Jun 04 13:47:13 MDT 2013 | mircea.toma | |
Files Changed | ||||
![]() ![]() ![]() ![]() ![]() |
Fix Version/s | 3.4 [ 10971 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #35884 | Tue Jun 04 15:24:34 MDT 2013 | mircea.toma | |
Files Changed | ||||
![]() ![]() ![]() |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #35885 | Tue Jun 04 15:28:13 MDT 2013 | mircea.toma | |
Files Changed | ||||
![]() |
Summary | PushID liveness detection for accurate cleanup | Multiple PushID instances accumulate in 'ice.pushids' cookie |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #35895 | Tue Jun 04 16:38:32 MDT 2013 | mircea.toma | |
Files Changed | ||||
![]() ![]() |
Resolution | Fixed [ 1 ] | |
Status | Resolved [ 5 ] | Reopened [ 4 ] |
Assignee | Mircea Toma [ mircea.toma ] | Ted Goddard [ ted.goddard ] |
Status | Reopened [ 4 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Fix Version/s | 4.0 [ 11383 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |
It is likely necessary to define a new mechanism for clearing unused pushIDs. Disabling cleanup during onUnload allows push to continue functioning after the video is played, but it also results in an accumulation of old pushIDs. However, there are other cases where unused pushIDs accumulate, so an improved cleanup mechanism should be investigated.
Each browser window/tab has a set of pushIDs with active listeners. When a listen.icepush returns with a set of notifications, these need to be dispatched to the various browser windows via two mechanisms: local storage events and cookie polling. When a notification occurs (including a noop) each pushID in each window can have an associated timestamp so that the listening window can determine if a given pushID is still active. pushIDs with very old associated timestamps can be garbage collected.
(copied from MOBI-193)