Koha-clms/Koha
Jacek Ablewicz 38663a4af3 Bug 13431 - Shared FastMmap file causes issues
Koha::Cache package does not take into account that, when using
fastmmap caching variant, mmaped cache file created in /tmp
(typically: /tmp/sharefile-koha-koha), would only be further
accessible to the one given OS user - the one which created it.
In many Koha setups, in the circumstances when various system scripts
are executed by 2+ users with diffrent UIDs (like multi-tenant servers,
for example) this may cause many kinds of issues. Observable symptom
is usually the appearance of the below error when searching, or looking
at MARC Framework pages and a few other places:

Open of share file /tmp/sharefile-koha-koha failed: Permission denied
at /usr/lib/perl5/Cache/FastMmap.pm line 640.

This patch:
- disables initialisation of fastmmap caching subsystem unless it is
explicitly requested by the user (CACHING_SYSTEM=fastmmap)
- disables fastmmap cache usage for command line scripts
(i.e. when GATEWAY_INTERFACE environment variable is not defined)
- adds the database name, host name and an ID of the OS user to the
mmaped file name created in /tmp, to prevent various kinds of
unintentional conflicts and/or permission problems from happening

To test:

1) remove the /tmp/sharefile-koha-* file[s] (if any)
2) do something which would lead to its re-creation (e.g., performing
any search in OPAC should be sufficient to cause that)
3) observe that /tmp/sharefile-koha-koha got created
4) remove it
5) apply patch
6) redo step 2)
7) observe that aforementioned file is no longer created in /tmp
8) set CACHING_SYSTEM environment variable to 'fastmmap'
9) redo step 2), observe that /tmp/sharefile-koha-* file got created
and that it's name now contains hostname, database name and UID
10) ensure that everything still works like it should and that there
are no regressions of any kinds anywhere in the system ;)

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit 9e701294dd)
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2015-02-14 20:36:52 +13:00
..
Acquisition Bug 13319: Fix Koha::Acq::Order should set parent_ordernumber 2015-02-14 20:26:53 +13:00
Borrower Bug 12784: Patron cannot change his personal details 2014-08-21 09:36:19 -03:00
Cache Bug 12041 - improve Koha::Cache 2014-06-19 13:05:04 -03:00
Filter/MARC Bug 9620: IncludeSeeFromInSearches and data in $9 subfields can break indexing 2013-03-07 09:31:11 -05:00
Indexer Bug 10143 - Fixing license headers 2013-05-01 06:47:50 -04:00
Item/Search Bug 11425: Add unit tests 2014-11-04 19:10:28 -03:00
List Bug 15065: (follow-up) update license header 2013-10-14 21:50:10 +00:00
Misc Bug 3050 - Add an option to upload scanned invoices #1/3 2014-05-25 21:14:00 +00:00
Number Revert "Bug 13352: On editing, prices should not be formatted" 2015-02-13 14:19:54 +13:00
Plugins Bug 9971 - Plugins system is broken! 2013-04-03 06:02:09 -04:00
QueryParser/Driver Bug 12647: PQF QueryParser driver and unit tests fixes 2014-08-11 10:09:38 -03:00
RecordProcessor Bug 7417: Include see from references in bibliographic searches 2012-09-13 14:19:28 +02:00
Schema/Result Bug 1861: (RM followup) DNIx updates 2015-01-01 09:25:32 +13:00
SuggestionEngine Bug 9239: Allow the use of QueryParser for all queries 2013-03-16 21:32:32 -04:00
Template/Plugin Revert "Bug 13352: On editing, prices should not be formatted" 2015-02-13 14:19:54 +13:00
Util Bug 13223: [QA Follow-up] Trivial change to one POD line 2014-11-19 13:28:23 -03:00
AuthUtils.pm Bug 9611: (follow-up) move new password hashing routines to separate module 2013-10-09 03:29:22 +00:00
Authority.pm Bug 5202: QA follow-up - correct license and POD errors 2013-10-10 21:39:15 +00:00
Cache.pm Bug 13431 - Shared FastMmap file causes issues 2015-02-14 20:36:52 +13:00
Calendar.pm Bug 11634 [QA Followup] - Make unit tests pass 2014-11-12 14:56:41 -03:00
Database.pm Bug 11891: (follow-up) set DBIC storage flags correctly 2014-06-19 11:55:23 -03:00
DateUtils.pm Bug 13242: Remove warning if no parameter given 2014-11-26 11:17:08 -03:00
Email.pm Bug 9530: Adding a new Koha::Email module 2014-10-27 10:38:14 -03:00
I18N.pm Bug 11848: (follow-up) update license statment 2014-05-05 04:51:42 +00:00
Linktracker.pm Bug 8917 : [ Sign followup ] Track clicks to links external to Koha 2013-03-07 11:14:25 -05:00
MetadataRecord.pm Bug 9755 QA follow-up: move MARC-specific functionality to utility class 2013-07-23 23:10:21 +00:00
NorwegianPatronDB.pm Bug 11401: QA followup - Make the tests pass 2014-11-14 09:42:56 -03:00
Plugins.pm Bug 9907 - Plugins test dies early on some servers 2013-03-22 17:50:09 -04:00
RecordProcessor.pm Bug 7417: Include see from references in bibliographic searches 2012-09-13 14:19:28 +02:00
Schema.pm Bug 11891: (follow-up) remove custom storage class 2014-06-19 11:55:03 -03:00
SimpleMARC.pm Bug 11413: Fix field_numbers 2014-11-14 12:05:47 -03:00
SuggestionEngine.pm Bug 8726: ExplodedTerms suggestion plugin (functionality) 2012-09-28 17:08:21 +02:00
XSLT_Handler.pm Bug 11826: (follow-up) run perltidy on Koha/XSLT_Handler.pm 2014-05-26 03:59:11 +00:00