]> git.kaiwu.me - nginx.git/commitdiff
Modules compatibility: cache purge fields.
authorMaxim Dounin <mdounin@mdounin.ru>
Thu, 29 Sep 2016 15:06:01 +0000 (18:06 +0300)
committerMaxim Dounin <mdounin@mdounin.ru>
Thu, 29 Sep 2016 15:06:01 +0000 (18:06 +0300)
src/core/ngx_file.h
src/http/ngx_http_cache.h
src/http/ngx_http_upstream.h

index a723c3d4c0c0eedba934b4cf177f719a0f667909..4240dc0742caa267f3fc6c4107b693d90261a6f5 100644 (file)
@@ -43,6 +43,7 @@ struct ngx_file_s {
 
 
 typedef time_t (*ngx_path_manager_pt) (void *data);
+typedef ngx_msec_t (*ngx_path_purger_pt) (void *data);
 typedef void (*ngx_path_loader_pt) (void *data);
 
 
@@ -52,6 +53,7 @@ typedef struct {
     size_t                     level[NGX_MAX_PATH_LEVEL];
 
     ngx_path_manager_pt        manager;
+    ngx_path_purger_pt         purger;
     ngx_path_loader_pt         loader;
     void                      *data;
 
index 2667cbbba0b393dc8496519591cf99ec09dd9ca0..4aa947fbeb8995ecab1da788997cf41ceb3b701c 100644 (file)
@@ -50,7 +50,8 @@ typedef struct {
     unsigned                         exists:1;
     unsigned                         updating:1;
     unsigned                         deleting:1;
-                                     /* 11 unused bits */
+    unsigned                         purged:1;
+                                     /* 10 unused bits */
 
     ngx_file_uniq_t                  uniq;
     time_t                           expire;
@@ -85,6 +86,7 @@ struct ngx_http_cache_s {
     ngx_uint_t                       min_uses;
     ngx_uint_t                       error;
     ngx_uint_t                       valid_msec;
+    ngx_uint_t                       vary_tag;
 
     ngx_buf_t                       *buf;
 
@@ -109,6 +111,7 @@ struct ngx_http_cache_s {
     unsigned                         updating:1;
     unsigned                         exists:1;
     unsigned                         temp_file:1;
+    unsigned                         purged:1;
     unsigned                         reading:1;
     unsigned                         secondary:1;
 };
index 315f8566161412cc48c4761f45b6e43d1e95599e..e079eaed3b09c2ee8c67572a3339aea2cf5c23aa 100644 (file)
@@ -205,6 +205,7 @@ typedef struct {
 
     ngx_array_t                     *cache_valid;
     ngx_array_t                     *cache_bypass;
+    ngx_array_t                     *cache_purge;
     ngx_array_t                     *no_cache;
 #endif