Uploaded image for project: 'Couchbase .NET client library'
  1. Couchbase .NET client library
  2. NCBC-2318

Refactor view queries to be strongly typed

    XMLWordPrintable

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 3.0.0
    • library
    • None
    • 1

    Description

      Delaying deserialization of view result row keys and values until explicitly requested has very little value. The deserializer is still required to deserialize the rows, it just does so onto a dynamic object such as a JToken. This is adding more heap allocations, and adding an extra step to convert that to a POCO when Value<T> or Key<T> is called later. It is also interfering with fallbacks for non-streaming deserializers, which need to deserialize the whole response in one shot.

      Instead, we can use strongly-typed results of IViewRow<TKey, TValue> which allows the deserializer to create the POCO directly.

      Note: This is a PoC change for consideration.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          There are no commits yet on this issue.

          People

            btburnett3 Brant Burnett
            btburnett3 Brant Burnett
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty