Skip to content

Commit 837801a

Browse files
committed
Challenge redislabs-training#2 & 3 reviewed
Added key expiration in Challenge redislabs-training#2. Added `try-with-resources` and use already initialised script in Chanllenge redislabs-training#3.
1 parent a262692 commit 837801a

2 files changed

Lines changed: 11 additions & 12 deletions

File tree

src/main/java/com/redislabs/university/RU102J/dao/MetricDaoRedisZsetImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ private void insertMetric(Jedis jedis, long siteId, double value, MetricUnit uni
5353
Integer minuteOfDay = getMinuteOfDay(dateTime);
5454

5555
jedis.zadd(metricKey, minuteOfDay, new MeasurementMinute(value, minuteOfDay).toString());
56-
56+
jedis.expire(metricKey, METRIC_EXPIRATION_SECONDS);
5757
// END Challenge #2
5858
}
5959

src/main/java/com/redislabs/university/RU102J/dao/SiteStatsDaoRedisImpl.java

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -81,20 +81,19 @@ private void updateBasic(Jedis jedis, String key, MeterReading reading) {
8181
// Challenge #3
8282
private void updateOptimized(Jedis jedis, String key, MeterReading reading) {
8383
// START Challenge #3
84-
String reportingTime = ZonedDateTime.now(ZoneOffset.UTC).toString();
85-
86-
Transaction t = jedis.multi();
87-
CompareAndUpdateScript script = new CompareAndUpdateScript(jedisPool);
84+
try (Transaction t = jedis.multi()) {
85+
String reportingTime = ZonedDateTime.now(ZoneOffset.UTC).toString();
8886

89-
t.hset(key, SiteStats.reportingTimeField, reportingTime);
90-
t.hincrBy(key, SiteStats.countField, 1);
91-
t.expire(key, weekSeconds);
87+
t.hset(key, SiteStats.reportingTimeField, reportingTime);
88+
t.hincrBy(key, SiteStats.countField, 1);
89+
t.expire(key, weekSeconds);
9290

93-
script.updateIfGreater(t, key, SiteStats.maxWhField, reading.getWhGenerated());
94-
script.updateIfLess(t, key, SiteStats.minWhField, reading.getWhGenerated());
95-
script.updateIfGreater(t, key, SiteStats.maxCapacityField, getCurrentCapacity(reading));
91+
this.compareAndUpdateScript.updateIfGreater(t, key, SiteStats.maxWhField, reading.getWhGenerated());
92+
this.compareAndUpdateScript.updateIfLess(t, key, SiteStats.minWhField, reading.getWhGenerated());
93+
this.compareAndUpdateScript.updateIfGreater(t, key, SiteStats.maxCapacityField, getCurrentCapacity(reading));
9694

97-
t.exec();
95+
t.exec();
96+
}
9897
// END Challenge #3
9998
}
10099

0 commit comments

Comments
 (0)