diff options
| author | Scott Ostler <sbsotler@gmail.com> | 2010-12-22 12:04:59 -0800 |
|---|---|---|
| committer | Scott Ostler <sbsotler@gmail.com> | 2010-12-22 12:04:59 -0800 |
| commit | 438747cbab4d6c81f1257c8c3e875aa7cd452a87 (patch) | |
| tree | 8e1336247e262fb264c5377f90d57661bc9bc736 /src/site.clj | |
| parent | b46593cf74033a93ad97fad9bca7c34860af1c8c (diff) | |
Add retry to directory fetch
Diffstat (limited to 'src/site.clj')
| -rw-r--r-- | src/site.clj | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/site.clj b/src/site.clj index fc7d541..3ec07a5 100644 --- a/src/site.clj +++ b/src/site.clj @@ -566,8 +566,19 @@ ORDER BY cnt DESC (for [u users] (merge u (find-first #(= (:nick u) (:nick %)) res)))))) +(defn try-execute [f n] + (try + (f) + (catch Exception e + (if (> n 0) + (try-execute f (dec n)) + (throw e))))) + +(def redis-directory-attempts 3) + (defn get-directory-info [user-id offset] - (let [res (fetch-redis-directory offset *per-directory-page*)] + (let [res (try-execute #(fetch-redis-directory offset *per-directory-page*) + redis-directory-attempts)] (map process-directory-entry (add-recent-posts-nick user-id res)))) @@ -1430,7 +1441,7 @@ ORDER BY cnt DESC (start-user-flusher!) (start-session-pruner!) -;(if (not= *server-url* "http://dump.fm") -; (start! random-poster)) +(if (not= *server-url* "http://dump.fm") + (start! random-poster)) |
