diff options
author | Robert Speicher <robert@gitlab.com> | 2016-01-04 18:20:58 +0000 |
---|---|---|
committer | Robert Speicher <robert@gitlab.com> | 2016-01-04 18:20:58 +0000 |
commit | ce4c38b35cca14eb50640e138c5faa354f8d6e72 (patch) | |
tree | ed891c0fcb330c006ecea45c93ba1fd667fec7fd | |
parent | e586492e48ab9fd9a2cdf21f8d9ff686ac6e5abf (diff) | |
parent | 4b027bc93a7875c3937f6b90ac1049b4a4d72da5 (diff) | |
download | gitlab-ce-ce4c38b35cca14eb50640e138c5faa354f8d6e72.tar.gz |
Merge branch 'debug-banzai-cache' into 'master'
Add DEBUG_BANZAI_CACHE env var to debug Banzai cache issue.
See https://gitlab.com/gitlab-org/gitlab-ce/issues/4130#note_3012511
See merge request !2283
-rw-r--r-- | lib/banzai/renderer.rb | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/lib/banzai/renderer.rb b/lib/banzai/renderer.rb index 115ae914524..910e1c6994e 100644 --- a/lib/banzai/renderer.rb +++ b/lib/banzai/renderer.rb @@ -1,7 +1,5 @@ module Banzai module Renderer - CACHE_ENABLED = false - # Convert a Markdown String into an HTML-safe String of HTML # # Note that while the returned HTML will have been sanitized of dangerous @@ -20,13 +18,22 @@ module Banzai cache_key = context.delete(:cache_key) cache_key = full_cache_key(cache_key, context[:pipeline]) - if cache_key && CACHE_ENABLED - Rails.cache.fetch(cache_key) do - cacheless_render(text, context) + cacheless = cacheless_render(text, context) + + if cache_key && ENV["DEBUG_BANZAI_CACHE"] + cached = Rails.cache.fetch(cache_key) { cacheless } + + if cached != cacheless + Rails.logger.warn "Banzai cache mismatch" + Rails.logger.warn "Text: #{text.inspect}" + Rails.logger.warn "Context: #{context.inspect}" + Rails.logger.warn "Cache key: #{cache_key.inspect}" + Rails.logger.warn "Cacheless: #{cacheless.inspect}" + Rails.logger.warn "With cache: #{cached.inspect}" end - else - cacheless_render(text, context) end + + cacheless end def self.render_result(text, context = {}) |