Exemplo n.º 1
0
        private bool FilterSingleTimeSeriesSegmentByLoadBehaviorScript(
            ref IEnumerable <SingleResult> timeSeriesEntries,
            LazyStringValue docId,
            TimeSeriesSegmentEntry segmentEntry,
            string loadBehaviorFunction)
        {
            if (ShouldFilterByScriptAndGetParams(docId, segmentEntry.Name, loadBehaviorFunction, out (DateTime begin, DateTime end)? toLoad))
            {
                return(true);
            }

            if (toLoad == null)
            {
                return(false);
            }

            var lastTimestamp = segmentEntry.Segment.GetLastTimestamp(segmentEntry.Start);

            if (segmentEntry.Start > toLoad.Value.end || lastTimestamp < toLoad.Value.begin)
            {
                return(true);
            }

            if (toLoad.Value.begin > segmentEntry.Start)
            {
                timeSeriesEntries = SkipUntilFrom(timeSeriesEntries, toLoad.Value.begin);
            }

            if (toLoad.Value.end < lastTimestamp)
            {
                timeSeriesEntries = BreakOnTo(timeSeriesEntries, toLoad.Value.end);
            }

            return(false);
        }
Exemplo n.º 2
0
 public RavenEtlItem(TimeSeriesSegmentEntry timeSeriesSegmentEntry, string collection)
 {
     DocumentId             = timeSeriesSegmentEntry.DocId;
     Etag                   = timeSeriesSegmentEntry.Etag;
     Collection             = collection;
     ChangeVector           = timeSeriesSegmentEntry.ChangeVector;
     Type                   = EtlItemType.TimeSeries;
     TimeSeriesSegmentEntry = timeSeriesSegmentEntry;
 }
Exemplo n.º 3
0
 public override bool Set(object item)
 {
     _segmentEntry = (TimeSeriesSegmentEntry)item;
     _entries      = null;
     _summary      = null;
     _min          = null;
     _max          = null;
     _sum          = null;
     _name         = null;
     return(true);
 }
Exemplo n.º 4
0
 public TimeSeriesIndexItem(LazyStringValue id, LazyStringValue sourceDocumentId, long etag, DateTime lastModified, string timeSeriesName, int size, TimeSeriesSegmentEntry item)
     : base(id, id, sourceDocumentId, sourceDocumentId, etag, lastModified, timeSeriesName, size, item, empty: item.Segment.NumberOfLiveEntries == 0, IndexItemType.TimeSeries)
 {
 }