/// <summary> /// Processes the span query. /// </summary> /// <param name="message">The message.</param> /// <param name="messageContext">The message context.</param> private void ProcessSpanQuery(RelayMessage message, MessageContext messageContext) { SpanQueryResult spanQueryResult = SpanQueryProcessor.Instance.Process(message.GetQueryObject <SpanQuery>(), messageContext, storeContext); bool compressOption = storeContext.GetCompressOption(message.TypeId); message.Payload = new RelayPayload(message.TypeId, message.Id, Serializer.Serialize(spanQueryResult, compressOption), compressOption); }
/// <summary> /// Process a RemoteClusteredSpanQuery /// </summary> /// <param name="message"></param> /// <param name="messageContext"></param> private void ProcessRemoteClusteredSpanQuery(RelayMessage message, MessageContext messageContext) { SpanQueryResult result = RemoteClusteredQueryProcessor.Instance.Process <SpanQueryResult, SpanQuery>( PerformanceCounterEnum.IndexLookupAvgPerRemoteClusteredSpanQuery, message.GetQueryObject <RemoteClusteredSpanQuery>(), messageContext, storeContext, SpanQueryProcessor.Instance); bool compressOption = storeContext.GetCompressOption(message.TypeId); message.Payload = new RelayPayload(message.TypeId, message.Id, Serializer.Serialize(result, compressOption), compressOption); }
internal SpanQueryResult Process(RemoteClusteredSpanQuery remoteClusteredSpanQuery, MessageContext messageContext, IndexStoreContext storeContext) { // increment the performance counter PerformanceCounters.Instance.SetCounterValue( PerformanceCounterEnum.IndexLookupAvgPerRemoteClusteredSpanQuery, messageContext.TypeId, remoteClusteredSpanQuery.IndexIdList.Count); // creating a spanQuery with copy ctor VirtualSpanQuery query = new VirtualSpanQuery(remoteClusteredSpanQuery) { CacheTypeName = storeContext.GetTypeName(messageContext.TypeId), // we get only reference at this point ExcludeData = true }; SpanQueryResult queryResult = RelayClient.Instance.SubmitQuery <VirtualSpanQuery, SpanQueryResult>(query); GetDataItems(remoteClusteredSpanQuery.FullDataIdInfo, remoteClusteredSpanQuery.ExcludeData, messageContext, storeContext, queryResult); return(queryResult); }