Commit Graph

114 Commits

Author SHA1 Message Date
Hamish Friedlander
3d18903552 API Add support for Solr 4 and make it the default
Solr::configure_server now takes "version" as one of the keys in the
option array, and behaves slightly differently depending on whether
that version is 3 or 4, to provide support for both Solr versions.

The Solr extras and templates have also moved, so that different
versions can be provided for the two different Solr versions.
2013-11-08 15:03:47 +13:00
Andrew Short
3dfbfdb8ef BUG: Ensure excerpts are returned as HTMLText instances.
a7629c8bb2 inadvertently made it so
they were returned as plain strings due to the replace operation.
2013-10-08 18:56:07 +11:00
Sean Harvey
915219b6c4 BUG Fixing fuzzy not being applied to standard keyword searches.
At the moment it only applies fuzzy to specific field searches, but not when you haven't specified any fields.
2013-09-27 10:45:22 +12:00
Stig Lindqvist
7dd8d888cf Merge pull request #30 from hafriedlander/fix/subsitesvariant
FIX subsites not activating after recent subsite session changes
2013-09-16 20:33:42 -07:00
Hamish Friedlander
b75e243276 FIX subsites not activating after recent subsite session changes 2013-09-17 14:59:48 +12:00
Hamish Friedlander
b6fe2ff17d Make how Solr_Configure uploads config replaceable
Solr_Configure takes the `indexstore.mode` configuration variable to set how
to upload new configuration to the Solr server. However the various modes
were within Solr_Configure and you couldnt add more without altering the module

This changes Solr_Configure to make the configuration upload portion
contained with a seperate class thats selected via `indexstore.mode`
to fix that.
2013-09-11 14:37:36 +12:00
Hamish Friedlander
03a206109a Make tests run 2013-09-11 14:35:01 +12:00
Hamish Friedlander
dbd68dc300 API Move SearchUpdate queue handling to DIed processor, add QueuedJob support 2013-07-25 14:28:10 +12:00
Ingo Schommer
a7629c8bb2 BUG Remove non-displayable chars from Solr highlight results 2013-05-07 18:43:38 +02:00
Hamish Friedlander
b2098a3ebf FIX Throw error if trying to add a table-less DataObject class to index
Its impossible for SearchUpdater#handle_manipulation to figure out the difference
between writing to a table-less class (like Page if theres no $db set) and the
table-having parent (like SiteTree) because it only examines the DB manipulation

This meant if you tried to index Page without setting $db fields, only subclasses
that did have $db fields would be indexed

We cant fix, but we can throw an error if you try to do that
2013-05-03 09:23:21 +12:00
Sean Harvey
f9998a2266 Use the correct class name instead of $databaseConfig['type'] 2013-04-12 16:31:10 +12:00
Sean Harvey
801aa48d07 Fixing SS 3.1 support. Changing minimum requirement to 3.1 as a result. 2013-04-03 15:43:08 +13:00
Sean Harvey
6562ad2f2b Check for !empty() on includeSubclasses so you don't get an undefined notice 2013-02-18 16:42:32 +13:00
Sean Harvey
224844fd44 Casting the Excerpt field as HTMLText so we can format it in the template 2013-02-13 14:03:50 +13:00
Sean Harvey
7a9a698c2d Merge branch 'docs' of github.com:silverstripe-big-o/silverstripe-fulltextsearch into silverstripe-big-o-docs 2013-02-13 10:43:05 +13:00
Sean Harvey
3508aadf56 Merge branch 'pull/field-defs-analyzers' of github.com:silverstripe-big-o/silverstripe-fulltextsearch into silverstripe-big-o-pull/field-defs-analyzers 2013-02-13 10:40:08 +13:00
Sean Harvey
cc144aa33e Merge branch 'pull/highlighting-support' of github.com:silverstripe-big-o/silverstripe-fulltextsearch into silverstripe-big-o-pull/highlighting-support 2013-02-13 10:36:20 +13:00
Sean Harvey
756e307562 Merge branch 'pull/custom-query-params' of github.com:silverstripe-big-o/silverstripe-fulltextsearch into silverstripe-big-o-pull/custom-query-params 2013-02-13 10:29:53 +13:00
Sean Harvey
428b8f3db5 fixing broken Solr_configure 2013-02-13 10:21:42 +13:00
Sean Harvey
7f2e9a4e72 NEW Add variant for regular subsite module. 2013-02-13 10:16:39 +13:00
Sean Harvey
75938c19a9 Ensure all cores are initialised on configure 2013-02-13 10:15:14 +13:00
Sean Harvey
deddbe5f15 Better checking for permissions when running Solr_configure 2013-02-13 09:59:14 +13:00
Sean Harvey
871f2065c4 WebDAV::exists() should add a trailing slash for checking dirs
Without it, some WebDAV servers will thrown an error.
2013-02-13 09:57:13 +13:00
Sean Harvey
a6fd64eacd If no remote dir set for WebDAV, just use the index name by itself 2013-02-13 09:56:07 +13:00
Sean Harvey
4f58937636 Logging Solr communication exceptions as warnings
Before we didn't catch exceptions, the CMS would break when communication
errors with Solr occurred, this change will log those exceptions as warnings
so that creating new and publishing pages will continue gracefully.
2013-02-13 09:52:06 +13:00
Hamish Friedlander
5036f9e93c Merge pull request #14 from silverstripe-big-o/pull/instance-of-sslist
BUG Check for instanceof SS_List rather than deprecated DataObjectSet
2012-11-01 14:33:28 -07:00
Hamish Friedlander
b10c263784 Merge pull request #13 from silverstripe-big-o/pull/spell-checking
ENHANCEMENT Better spell checking default config and docs
2012-11-01 14:32:58 -07:00
Hamish Friedlander
94f271da7f Merge pull request #12 from silverstripe-big-o/pull/custom-source-paths
ENHANCEMENT Configurable source paths for Solr config
2012-11-01 14:31:51 -07:00
Hamish Friedlander
9ce4545bb9 Merge pull request #6 from silverstripe-big-o/ignore-empty-fields
Ignore empty fields
2012-11-01 14:27:31 -07:00
Hamish Friedlander
e98b9e229f Merge pull request #5 from silverstripe-big-o/excludevariantstate
NEW SearchIndex->excludeVariantState()
2012-11-01 14:23:59 -07:00
Ingo Schommer
874bd32300 ENHANCEMENT Solr->addCopyFields() 2012-10-05 15:16:15 +02:00
Ingo Schommer
0ef78f905c ENHANCEMENT Per-field analyser support for SolrIndex 2012-10-05 12:40:46 +02:00
Ingo Schommer
b6fd7b7b89 ENHANCEMENT Extra field definition options for SolrIndex 2012-10-05 12:40:43 +02:00
Ingo Schommer
8a6e426676 ENHANCEMENT Better spell checking default config and docs 2012-09-05 22:20:28 +02:00
Ingo Schommer
1b069fe07b ENHANCEMENT Configurable source paths for Solr config
- Made Solr_Configure task output more expressive by exposing the directories involved
- Documented configuration copying process, and how to override it
2012-09-05 22:16:18 +02:00
Ingo Schommer
78c5daa186 ENHANCEMENT Basic highlighting support 2012-09-05 22:14:44 +02:00
Ingo Schommer
0f557915e1 BUG Check for instanceof SS_List rather than deprecated DataObjectSet 2012-09-05 22:08:06 +02:00
Ingo Schommer
65ce258578 ENHANCEMENT Custom query params support in SolrIndex->search() 2012-09-03 23:21:44 +02:00
Ingo Schommer
29b17a860a Documentation 2012-08-29 21:57:45 +02:00
Ingo Schommer
2c7d6d0ab8 BUG Only index date fields with values
Otherwise the values end up being the start of epoch (1970-01-01)
by default, which can throw off search filters. See README additions for details.
2012-08-29 21:00:40 +02:00
Ingo Schommer
50304e4b0c NEW SearchIndex->excludeVariantState() 2012-08-28 23:34:51 +02:00
Ingo Schommer
989cc36766 NEW Added search-time boost support to SolrIndex 2012-08-23 18:30:46 +02:00
Ingo Schommer
2a3e882d70 BUG Fixed SolrIndex::$sortTypeMap usage
Wasn't defined, so broke with a fatal error when
calling addSortField(). Have it fall back to $filterTypeMap.
2012-08-23 18:13:16 +02:00
Ingo Schommer
bcff30d9ca Allow limiting of classes on Solr_Reindex task 2012-08-23 18:13:10 +02:00
Ingo Schommer
fefd704582 Better feedback in Solr_Configure task 2012-08-23 18:10:29 +02:00
Ingo Schommer
fd8c721799 Pass through Apache_Solr_Response from SolrService
Useful for detailed success status
(failures are handled through exceptions)
2012-07-19 17:17:30 +02:00
Ingo Schommer
566791655c Better feedback in Solr_Configure task 2012-07-19 17:16:50 +02:00
Ingo Schommer
d7546a4020 Show executed cmd on Solr_Reindex with verbose=1
Makes actual operation a bit clearer, easier to kickstart debugging
2012-07-19 16:35:26 +02:00
Ingo Schommer
b6aa87d116 Fix results aggregation in SolrIndex (ArrayAccess broken)
Needs to use push() explicitly, native operators don't
seem to work on ArrayList (see http://open.silverstripe.org/ticket/7686)
2012-07-19 14:35:24 +02:00
Hamish Friedlander
e5bf1473d6 BUG Make process_dirty_indexes act cleanly
process_dirty_indexes wasnt saving variant state or restoring or exit, because
I thought it was only called at the end of a request and so didnt need to

But tests call it regularly throughout a request. So now its clean
and safe to call when-ever
2012-07-19 17:07:48 +12:00
Hamish Friedlander
f4fd71665a BUG New capture method wouldnt carry test db name through to clone in tests 2012-07-19 14:14:12 +12:00
Hamish Friedlander
b2152b4c5e FIX Dont error out if bind_manipulation_capture called to early 2012-07-19 13:50:10 +12:00
Ingo Schommer
be507824d0 Setting include_path *before* requiring paths relying on it 2012-07-19 13:48:58 +12:00
Ingo Schommer
c464c826d0 API Moved module paths from /solr to /fulltextsearch 2012-07-19 13:48:12 +12:00
Hamish Friedlander
afaf3071d4 FIX Use ArrayList and PaginatedList instead of DataObjectSet 2012-07-19 13:46:46 +12:00
Hamish Friedlander
38c88094b9 FIX Use addInnerJoin instead of innerJoin to fix deprec error 2012-07-19 13:41:05 +12:00
Hamish Friedlander
3cc660484c FIX Use DataList intead of DataObject->get() 2012-07-19 13:41:05 +12:00
Hamish Friedlander
590e7bef5d Make the default update_method be AUTO 2012-07-19 13:41:05 +12:00
Russell Michell
c77da7d42c ENHANCEMENT: Made the search ofr cli-script.php a little more flexible in light of sapphire dirname change 2012-07-19 13:41:05 +12:00
Hamish Friedlander
cc36237c94 BUGFIX: Converted reindex queries to use DataList/DataQuery instead of deprecated buoldSQL() on DataObject 2012-07-19 13:41:05 +12:00
Hamish Friedlander
b9c6ff44ec BUG Dont try and load SearchVariants that dont apply to this env 2012-07-19 13:41:05 +12:00
Hamish Friedlander
9534eeff8a BUGFIX: Fixed deprecation errors for ClassInfo::is_subclass_of 2012-07-19 13:41:05 +12:00
Hamish Friedlander
1ee50dd9ab BUG make bind_manipulation_capture call correctly
When the module was called solr we could call SearchUpdater::bind_manipulation_capture in _config.php, because
solr/_config.php was included after mysite/_config.php. This isnt true when the module is called fulltextsearch

Instead we hook into the new RequestProcessor in 3.0 to make the manipulation capture. We also make
bind_manipulation_capture re-callable, so you can call it any time you need to make sure.
2012-07-19 12:09:44 +12:00
Hamish Friedlander
17be5a3e63 Import first version of fulltextsearch module 2011-05-02 16:33:05 +12:00