Commit Graph

69 Commits

Author SHA1 Message Date
Martin Ridgers
dffee30340 Build field's properties outside of the dispatch builder so that different protocol versions can adapt to suit
#rb none
#rnx
#ushell-unshelve of 9957048

[CL 10470513 by Martin Ridgers in Dev-Core branch]
2019-11-27 11:27:27 -05:00
Martin Ridgers
c8872777a7 Encapsulated the look up of a field's index by name into a method of FDispatch.
#rb none
#rnx
#ushell-unshelve of 9957048

[CL 10470137 by Martin Ridgers in Dev-Core branch]
2019-11-27 11:16:39 -05:00
Martin Ridgers
06bcc0ffe9 Let's not sort fields. We're not leveraging the sorted order and we will soon be relying on field indices so it'd be convenient to keep the original order.
#rb none
#rnx
#ushell-unshelve of 9957048

[CL 10468501 by Martin Ridgers in Dev-Core branch]
2019-11-27 10:14:05 -05:00
Martin Ridgers
9c5edb26bb Don't increment the log serial until the full event can be processed.
#rb none
#rnx

[CL 10385428 by Martin Ridgers in Dev-Core branch]
2019-11-24 08:56:29 -05:00
Martin Ridgers
a59776ecd8 Resynchronised traced events across threads by using a rolling serial number. The coordination of the serialised order happens at analysis time.
#rb none
#rnx

[CL 10241774 by Martin Ridgers in Dev-Core branch]
2019-11-15 09:28:16 -05:00
Martin Ridgers
79b8a7d48f Having these as scoped enums really doesn't work very well when their purposes to give some symantic meaning to bytes in a stream received across the wire.
#rb none
#rnx

[CL 10236876 by Martin Ridgers in Dev-Core branch]
2019-11-15 08:47:47 -05:00
Martin Ridgers
2c7a039131 Store the protocol version instead of comparing function pointers
#rb none
#rnx

[CL 10236834 by Martin Ridgers in Dev-Core branch]
2019-11-15 08:36:49 -05:00
Martin Ridgers
2b36e8e55c Removed the inner FStreamReader::FData and folded it into FStreamReader. FStreamReader now also has its own home instead of crashing DataStreams' home.
#rb none
#rnx

[CL 10081958 by Martin Ridgers in Dev-Core branch]
2019-11-08 08:30:40 -05:00
Martin Ridgers
bdbde2f305 Retire analyzers immediately if they don't add any routes.
#rb trivial
#rnx

[CL 9954155 by Martin Ridgers in Dev-Core branch]
2019-11-01 05:54:08 -04:00
Martin Ridgers
003bf1b9da Include the master trace version in the SessionContext object available to analyzers.
#rb trivial
#rnx

[CL 9954119 by Martin Ridgers in Dev-Core branch]
2019-11-01 05:52:14 -04:00
Martin Ridgers
0e2160a7c2 Fixed Clang compile errors
#rb trivial
#rnx

[CL 9881457 by Martin Ridgers in Dev-Core branch]
2019-10-29 12:15:17 -04:00
Martin Ridgers
ece2911659 Fixed field name offset calculation that we really rather wrong.
#rb none
#rnx

[CL 9881372 by Martin Ridgers in Dev-Core branch]
2019-10-29 11:56:28 -04:00
Martin Ridgers
655e46f7d4 Gave the transport and protocol magic numbers some names so it is easier to follow
#rb none
#rnx

[CL 9879561 by Martin Ridgers in Dev-Core branch]
2019-10-29 08:17:56 -04:00
Martin Ridgers
53153f9740 Allow the dispatch builder's SetLoggerName/SetEventName to be used without knowing the string length ahead of time
#rb trivial
#rnx

[CL 9741923 by Martin Ridgers in Dev-Core branch]
2019-10-22 03:36:05 -04:00
Martin Ridgers
99d0670fa0 Only sort routes that were added by analyzers. As dispatches link to routes by index this ensures we don't invalidate any existing dispatches. It also help to hide internals as writers of analyzers won't be able to route events internal to the operation of Trace and analysis.
#rb jb
#rnx

[CL 9741909 by Martin Ridgers in Dev-Core branch]
2019-10-22 03:30:50 -04:00
Martin Ridgers
5d19d53a93 Fixed a couple of rule breaks
#rb trivilal
#rnx

[CL 9686418 by Martin Ridgers in Dev-Core branch]
2019-10-18 08:05:16 -04:00
Martin Ridgers
4b3c8fbd8b Consolidated everything related to the trace event "protocol" (headers, new-event event's format) into one place and wrapped it in a namespace so it is versioned. Updated analysis engine to support multiple protocols (of which there is currently exactly one).
#rb jb
#rnx

[CL 9685096 by Martin Ridgers in Dev-Core branch]
2019-10-18 07:53:17 -04:00
Martin Ridgers
b8d7123bcf Removed unused FDispatch member. Explicitly calling out available padding is not necessary, and in this instance, completely wrong.
#rb trivial
#rnx

[CL 9683655 by Martin Ridgers in Dev-Core branch]
2019-10-18 07:41:26 -04:00
Martin Ridgers
6ffa9554ed Renamed FPayloadTransort to FPacketTransport
#rb trivial
#rnx

[CL 9615070 by Martin Ridgers in Dev-Core branch]
2019-10-16 08:12:53 -04:00
Martin Ridgers
51b9881a1e Advance the transport after we've found a valid dispatch for an event
#rb trivial
#rnx

[CL 9614993 by Martin Ridgers in Dev-Core branch]
2019-10-16 07:42:17 -04:00
Martin Ridgers
d49d1a6b53 Transport rename was supposed to be to "Packet", not "Payload". Now corrected.
#rb none
#rnx

[CL 9614522 by Martin Ridgers in Dev-Core branch]
2019-10-16 04:03:18 -04:00
Martin Ridgers
75934badc8 Renamed TLS transport to payload transport as it really has nothing to do with TLS.
#rb undefined
#rnx

[CL 9581056 by Martin Ridgers in Dev-Core branch]
2019-10-15 05:01:11 -04:00
Martin Ridgers
28cf72d727 Fixed bad whitespace merge from RenPlatStag
#rb trivial
#rnx

(ushell-p4-cherrypick of 9580218 by Martin.Ridgers)

[CL 9580519 by Martin Ridgers in Dev-Core branch]
2019-10-15 03:58:11 -04:00
Martin Ridgers
573288b617 Fixed merge conflicts from Main for 9551447.
#rb none
#rnx

[CL 9579699 by Martin Ridgers in Dev-Core branch]
2019-10-15 03:02:11 -04:00
Martin Ridgers
0598424b43 Simplified hashing helper as it no longer needs to return the "next" pointer
#rb trivial
#rnx

[CL 9566687 by Martin Ridgers in Dev-Core branch]
2019-10-14 08:01:42 -04:00