{"action":"created","issue":{"url":"https://api.github.com/repos/devtools-html/perf.html/issues/1227","repository_url":"https://api.github.com/repos/devtools-html/perf.html","labels_url":"https://api.github.com/repos/devtools-html/perf.html/issues/1227/labels{/name}","comments_url":"https://api.github.com/repos/devtools-html/perf.html/issues/1227/comments","events_url":"https://api.github.com/repos/devtools-html/perf.html/issues/1227/events","html_url":"https://github.com/devtools-html/perf.html/pull/1227","id":355309292,"node_id":"MDExOlB1bGxSZXF1ZXN0MjExODY4NjUy","number":1227,"title":"Update the TracingMarkers to be used in the MarkerTable component ","user":{"login":"gregtatum","id":1588648,"node_id":"MDQ6VXNlcjE1ODg2NDg=","avatar_url":"https://avatars3.githubusercontent.com/u/1588648?v=4","gravatar_id":"","url":"https://api.github.com/users/gregtatum","html_url":"https://github.com/gregtatum","followers_url":"https://api.github.com/users/gregtatum/followers","following_url":"https://api.github.com/users/gregtatum/following{/other_user}","gists_url":"https://api.github.com/users/gregtatum/gists{/gist_id}","starred_url":"https://api.github.com/users/gregtatum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregtatum/subscriptions","organizations_url":"https://api.github.com/users/gregtatum/orgs","repos_url":"https://api.github.com/users/gregtatum/repos","events_url":"https://api.github.com/users/gregtatum/events{/privacy}","received_events_url":"https://api.github.com/users/gregtatum/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-08-29T19:55:29Z","updated_at":"2018-08-30T18:59:23Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/devtools-html/perf.html/pulls/1227","html_url":"https://github.com/devtools-html/perf.html/pull/1227","diff_url":"https://github.com/devtools-html/perf.html/pull/1227.diff","patch_url":"https://github.com/devtools-html/perf.html/pull/1227.patch"},"body":"This PR updates both the Redux store and the MarkerTable component to use TracingMarkers. It takes us towards the path of consolidating how we use markers, and is based off of the findings of my markers work from this past week.\r\n\r\nRather than switching between the MarkersTable and TracingMarkers, eventually we can have one data structure that has all the processing we need done to it. I was originally leaning towards doing this step in profile processing, but keeping it dynamic will avoid the profile upgrading process, and makes it easier to split this work up into smaller parts. TracingMarkers are probably not the final shape of what this structure could look like, but it's a smaller footprint to moving to a more unified marker view that is easier to work with in a consistent manner. \r\n\r\nThis change allows for a one-step processing of TracingMakers in the Redux store that is easily memoizable. This processing takes the form:\r\n\r\n * getProcessedMarkersTable - Process marker payloads out of raw strings, and other future processing needs.\r\n * getTracingMarkers - Match up start/end markers\r\n * getCommittedRangeFilteredTracingMarkers - Match up start/end markers, and remove duplicates.\r\n * getSearchFilteredTracingMarkers - Apply the search string\r\n * getPreviewFilteredTracingMarkers - Apply the preview range\r\n\r\nThis will work will make these follow-ups easier:\r\n\r\n* Search filtering the MarkerChart, that is consistent with the MarkerChart.\r\n* Tracing Markers can be the common processed format for various views like the Screenshots, and the Network.\r\n* Future refactors can focus on making the `TracingMarker` information more precise.\r\n* Future refactors can make it clearer that the `MarkersTable` is not a processed format, and give a clear space to do that work.\r\n\r\nIn addition, I added a bit of polish to the Marker Table, since we have more information about what is going on with it.\r\n\r\n[Deploy preview with marker table](https://deploy-preview-1227--perf-html.netlify.com/public/bc6b930e420e246a24e2a4bbcd1e9f6c31fb01d2/marker-table/?globalTrackOrder=0-1-2-3&hiddenGlobalTracks=1-2&hiddenLocalTracksByPid=3972-1-3-4-0~3976-1&localTrackOrderByPid=3972-0-1-3-4-2~3976-0-1~&markerSearch=&thread=7&v=3)\r\n\r\nIncidentally resolves #1195"},"comment":{"url":"https://api.github.com/repos/devtools-html/perf.html/issues/comments/417430470","html_url":"https://github.com/devtools-html/perf.html/pull/1227#issuecomment-417430470","issue_url":"https://api.github.com/repos/devtools-html/perf.html/issues/1227","id":417430470,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNzQzMDQ3MA==","user":{"login":"gregtatum","id":1588648,"node_id":"MDQ6VXNlcjE1ODg2NDg=","avatar_url":"https://avatars3.githubusercontent.com/u/1588648?v=4","gravatar_id":"","url":"https://api.github.com/users/gregtatum","html_url":"https://github.com/gregtatum","followers_url":"https://api.github.com/users/gregtatum/followers","following_url":"https://api.github.com/users/gregtatum/following{/other_user}","gists_url":"https://api.github.com/users/gregtatum/gists{/gist_id}","starred_url":"https://api.github.com/users/gregtatum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregtatum/subscriptions","organizations_url":"https://api.github.com/users/gregtatum/orgs","repos_url":"https://api.github.com/users/gregtatum/repos","events_url":"https://api.github.com/users/gregtatum/events{/privacy}","received_events_url":"https://api.github.com/users/gregtatum/received_events","type":"User","site_admin":false},"created_at":"2018-08-30T18:59:23Z","updated_at":"2018-08-30T18:59:23Z","author_association":"MEMBER","body":"> Another concern I have is the memory usage. It won't change with this patch (after all, we already had the tracing markers before), but we may want to convert the array of tracing markers to a flatter table like where we have our other data. But this is definitely not for this PR because this is a preexisting problem.\r\n\r\nYes we should re-evaluate it. I started doing this in my monstrous markers refactor which shall not land. I am curious to measure the impact and see if it's actually slow. We end up retaining the tracing markers once they are created, so we don't have intermediate versions as of right now that would put pressure on the garbage collector."}}
{"actor":{"display_login":"gregtatum"}}