Skip to content

Commit 98769be

Browse files
committed
fix backward
1 parent dc0c159 commit 98769be

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

NRedisTimeSeries/DataTypes/TimeSeriesInformation.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,11 @@ public class TimeSeriesInformation
4242
/// <summary>
4343
/// Maximum Number of samples per Memory Chunk.
4444
/// </summary>
45+
[ObsoleteAttribute("This method has been deprecated. Use ChunkSize instead.")]
4546
public long MaxSamplesPerChunk { get; private set; }
4647

4748
/// <summary>
48-
/// Chunk size in bytes.
49+
/// Memory Chunk size in Bytes.
4950
/// </summary>
5051
public long ChunkSize { get; private set; }
5152

@@ -63,22 +64,20 @@ public class TimeSeriesInformation
6364
/// A readonly list of TimeSeriesRules that represent compaction Rules of the time-series.
6465
/// </summary>
6566
public IReadOnlyList<TimeSeriesRule> Rules { get; private set; }
66-
67-
internal TimeSeriesInformation(long totalSamples, long memoryUsage, TimeStamp firstTimeStamp,
68-
TimeStamp lastTimeStamp, long retentionTime, long chunkCount, long maxSamplesPerChunk,
69-
long chunkSize, IReadOnlyList<TimeSeriesLabel> labels, string sourceKey, IReadOnlyList<TimeSeriesRule> rules)
67+
internal TimeSeriesInformation(long totalSamples, long memoryUsage, TimeStamp firstTimeStamp, TimeStamp lastTimeStamp, long retentionTime, long chunkCount, long chunkSize, IReadOnlyList<TimeSeriesLabel> labels, string sourceKey, IReadOnlyList<TimeSeriesRule> rules)
7068
{
7169
TotalSamples = totalSamples;
7270
MemoryUsage = memoryUsage;
7371
FirstTimeStamp = firstTimeStamp;
7472
LastTimeStamp = lastTimeStamp;
7573
RetentionTime = retentionTime;
7674
ChunkCount = chunkCount;
77-
MaxSamplesPerChunk = maxSamplesPerChunk;
78-
ChunkSize = chunkSize;
7975
Labels = labels;
8076
SourceKey = sourceKey;
8177
Rules = rules;
78+
// backwards compatible with RedisTimeSeries < v1.4
79+
MaxSamplesPerChunk = chunkSize/16;
80+
ChunkSize = chunkSize;
8281
}
8382
}
8483
}

NRedisTimeSeries/TimeSeriesClientResponseParser.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,9 @@ private static TimeSeriesInformation ParseInfo(RedisResult result)
135135
chunkSize = (long)redisResults[i];
136136
break;
137137
case "maxSamplesPerChunk":
138-
maxSamplesPerChunk = (long)redisResults[i];
138+
// If the property name is maxSamplesPerChunk then this is an old
139+
// version of RedisTimeSeries and we used the number of samples before ( now Bytes )
140+
chunkSize = chunkSize * 16;
139141
break;
140142
case "firstTimestamp":
141143
firstTimestamp = ParseTimeStamp(redisResults[i]);
@@ -155,7 +157,7 @@ private static TimeSeriesInformation ParseInfo(RedisResult result)
155157
}
156158
}
157159
return new TimeSeriesInformation(totalSamples, memoryUsage, firstTimestamp,
158-
lastTimestamp, retentionTime, chunkCount, maxSamplesPerChunk, chunkSize, labels, sourceKey, rules);
160+
lastTimestamp, retentionTime, chunkCount, chunkSize, labels, sourceKey, rules);
159161
}
160162

161163
private static IReadOnlyList<string> ParseStringArray(RedisResult result)

0 commit comments

Comments
 (0)