Files @ a40824531f68
Branch filter:

Location: kallithea/docs/usage/statistics.rst

a40824531f68 1.2 KiB text/prs.fallenstein.rst Show Annotation Show as Raw Download as Raw
Thomas De Schampheleire
controllers: don't pass rendered templates in context variables

Some controllers used the followifng pattern:
- render a data template into a context variable
- for partial (ajax) requests, return the contents of this variable
- for full-page requests, render the full page, which expands the value of
the context variable

Instead, avoid context variables let the controller simply render the full or partial page, and let
the full page template include the partial page.

Remove this context variable for templating and use render exclusively.
From templates, use %include instead of context variables.

This in line with the suggestions in the Pylons documentation:
http://pylons-webframework.readthedocs.org/en/latest/helpers.html#partial-updates-with-ajax
.. _statistics:

==========
Statistics
==========

The Kallithea statistics system makes heavy demands of the server resources, so
in order to keep a balance between usability and performance, the statistics are
cached inside db and are gathered incrementally, this is how Kallithea does
this:

With Celery disabled
--------------------

- On each first visit to the summary page a set of 250 commits are parsed and
  updates statistics cache.
- This happens on each single visit to the statistics page until all commits are
  fetched. Statistics are kept cached until additional commits are added to the
  repository. In such a case Kallithea will only fetch the new commits when
  updating it's cache.


With Celery enabled
-------------------

- On the first visit to the summary page Kallithea will create tasks that will
  execute on celery workers. This task will gather all of the stats until all
  commits are parsed, each task will parse 250 commits, and run the next task to
  parse next 250 commits, until all of the commits are parsed.

.. note::
   At any time you can disable statistics on each repository via the repository
   edit form in the admin panel. To do this just uncheck the statistics checkbox.