Andy Staudacher fd94f4bec2 Fix Kohana's internal cache for Gallery's usage pattern. Instead of deleting the whole find_files cache when ever include_paths (=core.modules) change, keep a separate find_files cache for each set of include_paths.
Benefits for Gallery:
 - There are about 3000 is_file() invocations for a photo / album page in a vanilla Gallery installation. These are mostly triggered by Kohana::find_file().
 - Enabling internal_cache doesn't help at all (see explanation below). The number of is_file() invocations is about the same with or without this cache.
 - With this patch, more than 95% of these invocations are gone. The cache works as intended.

Kohana's internal_cache for find_file wasn't working in Gallery because
the cache would be emptied on each request after reading it from disk and
before most lookups would run.
 1. Bootstrap sets initial core.modules (= include path): forge, kohana23_compat, gallery.
 2. Kohana::setup() loads find_file cache from disk.
 3. Gallery loads list of active modules and themes, and updates the core.modules value (=include path), which forces the internal find_file cache to be empties (which makes sense).
 4. Request processing starts, and thus 80+% of all Kohana::find_file() triggered  is_file() invocations start off with an empty find_file cache.

The patch doesn't have a significant impact on performance for Kohana applications which don't change their include paths at runtime (after Kohana::setup). And the patch should benefit all Kohana applications which have modules / extensions, i.e. which first need to bootstrap Kohana before they can load a list of all active modules from the database.
2010-02-28 13:51:18 -08:00
2009-07-11 04:41:06 -07:00
2008-12-17 17:10:08 +00:00
2009-09-12 22:30:05 -07:00

ABOUT:
Gallery 3 is a web based software product that lets you manage your
photos on your own website.  You must have your own website with PHP
and database support in order to install and use it.  With Gallery you
can easily create and share albums of photos via an intuitive
interface.


SECURITY (& INTENDED AUDIENCE):
This is the third and final beta release of Gallery 3.0 and while it's
not a finished product, it's heading into the home stretch.  You can
install it on public websites, but remember that until the final
release is out, we make no guarantees that it won't do bad things.

Note:
 - We've contracted a professional security audit, received their results
   and resolved all the really dire issues they found.  There are still some
   issues, but they are more along the lines of "you should ask for the old
   password as a confirmation when you let users change their password".
   Ie, they're issues but they're not really bad.  We'll take care of them
   before the final release.
 - Most of the key features are in, but some of them (notably the "add from
   server" and "organize album" features) are probably going to be completely
   rewritten.
 - You can upgrade from beta 1, but not from alpha releases.

The intended audience of this release is folks who are willing to live
a little bit on the edge. We'll do our best to take care of your data
and your security, but we might screw it up here or there.  We welcome
theme and module developers to play with this release and start
turning out slick new designs for our happy users.

Did you find a security flaw?  Please email security@gallery.menalto.com
with the details and we'll fix it ASAP!


SUPPORTED CONFIGURATION:
 - Platform: Linux / Unix.
 - Web server: Apache 2.2 and newer.
 - PHP 5.2.3 and newer (PHP's safe_mode must be disabled and simplexml,
   filter, and json must be installed).
 - Database: MySQL 5 and newer.


INSTALLATION VIA THE WEB:
- Point your web browser at gallery3/installer/ and follow the
  instructions.


INSTALLATION FROM THE COMMAND LINE:
- php installer/index.php [-h host] [-u user] [-p pass] [-d dbname]

 Command line parameters:
 -h     Database host          (default: localhost)
 -u     Database user          (default: root)
 -p     Database user password (default: )
 -d     Database name          (default: gallery3)
 -x     Table prefix           (default: )


BUGS?
Go to http://apps.sourceforge.net/trac/gallery/ click the "login" link
and log in with your SourceForge username and password, then click the
"new ticket" button.  Mark any issues you find with the "Beta 2"
milestone and we'll try to get 'em done for the next release.


QUESTIONS, PROBLEMS:
 - Check out the gallery3 FAQ http://codex.gallery2.org/Gallery3:FAQ
 - Post to the Gallery 3 forums: http://gallery.menalto.com/forum/96
 - Email gallery-devel@lists.sourceforge.net



Description
The simplest, most intuitive way to host your photos on your website.
https://galleryrevival.com
Readme GPL-2.0 33 MiB
Languages
PHP 87.7%
CSS 6.4%
JavaScript 5.7%
Perl 0.1%