From 53f8078a55888e7e1b3dc47d98ffe12f406b1c30 Mon Sep 17 00:00:00 2001 From: Bertrand Bordage Date: Fri, 26 Sep 2014 16:53:44 +0200 Subject: [PATCH] Version 0.1.0. --- .gitignore | 7 +++ AUTHORS.rst | 6 +++ LICENSE | 27 +++++++++++ README.rst | 39 +++++++++++++++ cachalot/__init__.py | 2 + cachalot/models.py | 5 ++ cachalot/monkey_patch.py | 101 +++++++++++++++++++++++++++++++++++++++ django-cachalot.jpg | Bin 0 -> 117549 bytes requirements.txt | 1 + setup.py | 43 +++++++++++++++++ 10 files changed, 231 insertions(+) create mode 100644 .gitignore create mode 100644 AUTHORS.rst create mode 100644 LICENSE create mode 100644 README.rst create mode 100644 cachalot/__init__.py create mode 100644 cachalot/models.py create mode 100644 cachalot/monkey_patch.py create mode 100644 django-cachalot.jpg create mode 100644 requirements.txt create mode 100644 setup.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..af2e6c9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +__pycache__/ +*.pyc +*.so +build/ +dist/ +sdist/ +*.egg-info/ diff --git a/AUTHORS.rst b/AUTHORS.rst new file mode 100644 index 0000000..b3999f0 --- /dev/null +++ b/AUTHORS.rst @@ -0,0 +1,6 @@ +Authors +======= + +================ ========================== +Bertrand Bordage bordage.bertrand@gmail.com +================ ========================== diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f818d46 --- /dev/null +++ b/LICENSE @@ -0,0 +1,27 @@ +Copyright (c) 2014, Bertrand Bordage +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of django-cachalot nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..d4f84ca --- /dev/null +++ b/README.rst @@ -0,0 +1,39 @@ +Django-cachalot +=============== + +Caches your Django ORM queries and automatically invalidates them. + +**In alpha, do not use for production** + +.. image:: https://raw.github.com/BertrandBordage/django-cachalot/master/django-cachalot.jpg + + +Quick start +----------- + +Requirements +............ + +Django-cachalot currently requires Django 1.6 +and `django-redis `_ as your default +cache backend. It should work with both Python 2 & 3. + +Usage +..... + +#. `pip install -e git+https://github.com/BertrandBordage/django-cachalot#egg=django-cachalot` +#. Add ``'cachalot',`` to your ``INSTALLED_APPS`` +#. Enjoy! + + +What still needs to be done +--------------------------- + +- Correctly invalidate ``.extra`` queries +- Handle transactions +- Handle multiple database +- Write tests, including multi-table inheritance, prefetch_related, etc +- Find out if it’s thread-safe and test it +- Add a ``CACHALOT_ENABLED`` setting +- Add a setting to choose a cache other than ``'default'`` +- Add support for other caches like memcached diff --git a/cachalot/__init__.py b/cachalot/__init__.py new file mode 100644 index 0000000..c1abbca --- /dev/null +++ b/cachalot/__init__.py @@ -0,0 +1,2 @@ +__version__ = (0, 1, 0) +version_string = '.'.join(str(n) for n in __version__) diff --git a/cachalot/models.py b/cachalot/models.py new file mode 100644 index 0000000..cb5220b --- /dev/null +++ b/cachalot/models.py @@ -0,0 +1,5 @@ +from .monkey_patch import is_patched, monkey_patch_orm + + +if not is_patched(): + monkey_patch_orm() diff --git a/cachalot/monkey_patch.py b/cachalot/monkey_patch.py new file mode 100644 index 0000000..c28cea2 --- /dev/null +++ b/cachalot/monkey_patch.py @@ -0,0 +1,101 @@ +# coding: utf-8 + +from __future__ import unicode_literals +from collections import Iterable +from django.core.cache import cache +from django.db.models.query import EmptyResultSet +from django.db.models.sql.compiler import ( + SQLCompiler, SQLAggregateCompiler, SQLDateCompiler, SQLDateTimeCompiler, + SQLInsertCompiler, SQLUpdateCompiler, SQLDeleteCompiler) + + +COMPILERS = (SQLCompiler, + SQLAggregateCompiler, SQLDateCompiler, SQLDateTimeCompiler, + SQLInsertCompiler, SQLUpdateCompiler, SQLDeleteCompiler) +WRITE_COMPILERS = (SQLInsertCompiler, SQLUpdateCompiler, SQLDeleteCompiler) +READ_COMPILERS = [c for c in COMPILERS if c not in WRITE_COMPILERS] + + +PATCHED = False +MISS_VALUE = '[[The cache key was missed]]' + + +def _get_tables_cache_keys(compiler): + q = compiler.query + # FIXME: `.extra` (and maybe more) are not in alias_map + tables = q.alias_map.keys() + + return ['%s_queries' % t for t in tables] + + +def _update_tables_queries(compiler, cache_key): + tables_cache_keys = _get_tables_cache_keys(compiler) + tables_queries = cache.get_many(tables_cache_keys) + for k in tables_cache_keys: + queries = tables_queries.get(k, []) + queries.append(cache_key) + tables_queries[k] = queries + cache.set_many(tables_queries) + + +def _invalidate_tables(compiler): + tables_cache_keys = _get_tables_cache_keys(compiler) + tables_queries = cache.get_many(tables_cache_keys) + queries = [] + for k in tables_cache_keys: + queries.extend(tables_queries.get(k, [])) + cache.delete_many(queries) + cache.delete_many(tables_cache_keys) + + +def _monkey_patch_orm_read(): + def patch_execute_sql(method): + def inner(compiler, *args, **kwargs): + if isinstance(compiler, WRITE_COMPILERS): + return method(compiler, *args, **kwargs) + + try: + cache_key = compiler.as_sql() + except EmptyResultSet: + return method(compiler, *args, **kwargs) + + result = cache.get(cache_key, MISS_VALUE) + + if result == MISS_VALUE: + result = method(compiler, *args, **kwargs) + if isinstance(result, Iterable) \ + and not isinstance(result, (tuple, list)): + result = list(result) + + _update_tables_queries(compiler, cache_key) + + cache.set(cache_key, result) + + return result + + return inner + + for compiler in READ_COMPILERS: + compiler.execute_sql = patch_execute_sql(compiler.execute_sql) + + +def _monkey_patch_orm_write(): + def patch_execute_sql(method): + def inner(compiler, *args, **kwargs): + _invalidate_tables(compiler) + return method(compiler, *args, **kwargs) + return inner + + for compiler in WRITE_COMPILERS: + compiler.execute_sql = patch_execute_sql(compiler.execute_sql) + + +def monkey_patch_orm(): + global PATCHED + _monkey_patch_orm_write() + _monkey_patch_orm_read() + PATCHED = True + + +def is_patched(): + return PATCHED diff --git a/django-cachalot.jpg b/django-cachalot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..09b61c34498fd2e387db25cebff02c403c5e8887 GIT binary patch literal 117549 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 literal 0 HcmV?d00001 diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..d08919c --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +Django>=1.6 diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..a07f309 --- /dev/null +++ b/setup.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python + +import os +from setuptools import setup, find_packages +from cachalot import version_string + + +CURRENT_PATH = os.path.abspath(os.path.dirname(__file__)) + +with open(os.path.join(CURRENT_PATH, 'requirements.txt')) as f: + required = f.read().splitlines() + + +setup( + name='django-cachalot', + version=version_string, + author='Bertrand Bordage', + author_email='bordage.bertrand@gmail.com', + url='https://github.com/BertrandBordage/django-cachalot', + description='Caches your Django ORM queries ' + 'and automatically invalidates them.', + long_description=open('README.rst').read(), + classifiers=[ + 'Development Status :: 3 - Alpha', + 'Framework :: Django', + 'Intended Audience :: Developers', + 'License :: OSI Approved :: BSD License', + 'Operating System :: OS Independent', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.6', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.2', + 'Programming Language :: Python :: 3.3', + 'Programming Language :: Python :: 3.4', + 'Topic :: Internet :: WWW/HTTP', + ], + license='BSD', + packages=find_packages(), + install_requires=required, + include_package_data=True, + zip_safe=False, +)