Skip to content
This repository was archived by the owner on Mar 24, 2020. It is now read-only.

Commit 67aa3c4

Browse files
committed
Resolving potential cache collision scenario
1 parent 697216e commit 67aa3c4

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/main/scala/com/sparcedge/turbine/query/Grouping.scala

+6-2
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ abstract class DurationGrouping extends Grouping {
6363
val duration: String
6464
val segment = "ts"
6565
val offset: Int
66+
val uniqueId: String
6667

6768
override def apply(event: Event): String = {
6869
apply(event.ts)
@@ -74,43 +75,46 @@ abstract class DurationGrouping extends Grouping {
7475
}
7576

7677
def calculateDurationValue(ts: Long): Long
77-
78-
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
7978
}
8079

8180
class YearDurationGrouping(offsetOpt: Option[Int]) extends DurationGrouping {
8281
val duration = "year"
8382
val offset = offsetOpt.getOrElse(0)
8483

8584
def calculateDurationValue(ts: Long): Long = calculateYearCombined(ts)
85+
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
8686
}
8787

8888
class MonthDurationGrouping(offsetOpt: Option[Int]) extends DurationGrouping {
8989
val duration = "month"
9090
val offset = offsetOpt.getOrElse(0)
9191

9292
def calculateDurationValue(ts: Long): Long = calculateMonthCombined(ts)
93+
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
9394
}
9495

9596
class DayDurationGrouping(offsetOpt: Option[Int]) extends DurationGrouping {
9697
val duration = "day"
9798
val offset = offsetOpt.getOrElse(0)
9899

99100
def calculateDurationValue(ts: Long): Long = calculateDayCombined(ts)
101+
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
100102
}
101103

102104
class HourDurationGrouping(offsetOpt: Option[Int]) extends DurationGrouping {
103105
val duration = "hour"
104106
val offset = offsetOpt.getOrElse(0)
105107

106108
def calculateDurationValue(ts: Long): Long = calculateHourCombined(ts)
109+
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
107110
}
108111

109112
class MinuteDurationGrouping(offsetOpt: Option[Int]) extends DurationGrouping {
110113
val duration = "minute"
111114
val offset = offsetOpt.getOrElse(0)
112115

113116
def calculateDurationValue(ts: Long): Long = calculateMinuteCombined(ts)
117+
val uniqueId: String = s"DurationGrouping.${duration}.${offset}"
114118
}
115119

116120
class IndexGrouping(val indexDuration: String) extends Grouping {

0 commit comments

Comments
 (0)