Details

    • Sub-task
    • Status: Done
    • Major
    • Resolution: Done
    • None
    • 0.1.0
    • None

    Description

      User query traverse on IndexEdge, and current implemenation for deserialize bytes array into IndexEdge first(IndexEdgeDeserializable), then call IndexEdge#toEdge to create Edge class.

      I found out following parts copy data which is unnecessary.

      props.map { case (k, v) => k -> InnerValLikeWithTs(v, version) }
      

      This inefficiency exist because IndexEdge use Map[Byte, InnerValLike] and Edge use Map[Byte, InnerValLikeWithTs] as type of props value.

      It sounds like micro optimization but since this is called a lot, actually dependent on # fetched edges, I think improving this would create some changes on performance.

      To remove unnecessary copy, I am suggesting change type of IndexEdge's props same with Edge's props type Map[Byte, InnerValLikeWithTs].

      Attachments

        Issue Links

          Activity

            People

              steamshon Do Yung Yoon
              steamshon Do Yung Yoon
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 168h
                  168h
                  Remaining:
                  Remaining Estimate - 168h
                  168h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified