Investigate JSON.NET async API

Description

None

Environment

None

Gerrit Reviews

None

Release Notes Description

None

Activity

Show:

Jeffry Morris July 23, 2019 at 11:58 PM

Jeffry Morris September 18, 2018 at 5:10 PM
Edited

After doing some research, there are a couple of points required to make this happen:

  1. IQueryResult needs an overload for QueryAsync

  2. StreamingQueryResult needs to implement QueryAsync - since we walk the JSON response we would use the methods in JToken/JsonReader:  http://james.newtonking.com/archive/2017/03/21/json-net-10-0-release-1-async-performance-documentation-and-more

  3. QueryClient needs to implement QueryAsync and use Task.Run() to await the operation - as of today there is no async methods for JsonSerializer (that I know about, but may change): https://github.com/JamesNK/Newtonsoft.Json/issues/1193

This is just a terse summary of what needs to be done - there is quite a bit of work to-do, might make sense to move to 3.0.

Jeffry Morris April 23, 2018 at 11:25 PM

Moving this to 2.6.0 because its a version bump of JSON.NET with potential backwards compatibility issues: http://james.newtonking.com/archive/2017/03/21/json-net-10-0-release-1-async-performance-documentation-and-more

Note: at least one customer cannot upgrade from v2.4.X to the latest SDK version because the have an 3rd party dependency on JSON.NET < 9.0 and we bumped the JSON. NET version to 9.0 around that time.

Duplicate
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Labels

Story Points

Components

Fix versions

Affects versions

Priority

Instabug

Open Instabug

PagerDuty

Sentry

Zendesk Support

Created February 9, 2018 at 7:08 PM
Updated April 24, 2020 at 8:23 PM
Resolved July 23, 2019 at 11:58 PM
Instabug