Skip to content

Commit fd71be9

Browse files
Merge pull request #359 from topcoder-platform/revert-355-plat-1703-tg-submit-url-issue
Revert "removed caching while getting groups"
2 parents fa3e79f + 2c779de commit fd71be9

File tree

1 file changed

+13
-19
lines changed

1 file changed

+13
-19
lines changed

src/services/groups.js

+13-19
Original file line numberDiff line numberDiff line change
@@ -320,32 +320,26 @@ class GroupService {
320320
* @return {Promise} Resolves to ID array.
321321
*/
322322
async getGroupTreeIds(rootGroupId, maxage = 5 * 60 * 1000) {
323-
//TODO: Once the fix is validated and working, remove all commented code related to caching
324-
/**
325-
* Removing the caching mechanism,
326-
* as the group created on the day will only be pickedup on the next day
327-
* and stored in the cache
328-
*/
329-
// const now = Date.now();
330-
// const cache = this.private.cache.groupTreeIds;
323+
const now = Date.now();
324+
const cache = this.private.cache.groupTreeIds;
331325

332326
/* Clean-up: removes stale records from the cache. */
333-
// const CLEAN_UP_INTERVAL = 24 * 60 * 60 * 1000; // 1 day in ms.
334-
// if (now - cache.lastCleanUp > CLEAN_UP_INTERVAL) {
335-
// _.forOwn(cache, ({ timestamp }, key) => {
336-
// if (now - timestamp > CLEAN_UP_INTERVAL) delete cache[key];
337-
// });
338-
// cache.lastCleanUp = now;
339-
// }
327+
const CLEAN_UP_INTERVAL = 24 * 60 * 60 * 1000; // 1 day in ms.
328+
if (now - cache.lastCleanUp > CLEAN_UP_INTERVAL) {
329+
_.forOwn(cache, ({ timestamp }, key) => {
330+
if (now - timestamp > CLEAN_UP_INTERVAL) delete cache[key];
331+
});
332+
cache.lastCleanUp = now;
333+
}
340334

341335
/* If result is found in cache, and is fresh enough, return it. */
342-
// const cached = cache[rootGroupId];
343-
// if (cached && now - cached.timestamp < maxage) return _.clone(cached.data);
336+
const cached = cache[rootGroupId];
337+
if (cached && now - cached.timestamp < maxage) return _.clone(cached.data);
344338

345339
/* Otherwise, fetch result from the API, write it to the cache, and
346340
* finally return that. */
347341
const res = reduceGroupIds(await this.getGroup(rootGroupId));
348-
// cache[rootGroupId] = { data: res, timestamp: now };
342+
cache[rootGroupId] = { data: res, timestamp: now };
349343
return _.clone(res);
350344
}
351345

@@ -415,4 +409,4 @@ export function getService(tokenV3) {
415409
return lastInstance;
416410
}
417411

418-
export default undefined;
412+
export default undefined;

0 commit comments

Comments
 (0)