All Projects → jkraemer → redmine_postgresql_search

jkraemer / redmine_postgresql_search

Licence: GPL-3.0 License
PostgreSQL full text search plugin for Redmine

Programming Languages

ruby
36898 projects - #4 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to redmine postgresql search

redmine convert textile to markown
Redmine rake task to convert content from textile to markdown
Stars: ✭ 45 (+221.43%)
Mutual labels:  redmine
bestest timer
This is an awesome punch clock/timer plugin for Redmine. It's great. It's the bestest.
Stars: ✭ 15 (+7.14%)
Mutual labels:  redmine
redmine tracker
Multi platform application to track time and synchronize it into Redmine.
Stars: ✭ 14 (+0%)
Mutual labels:  redmine
ansible-role-redmine
Ansible Role To Install Redmine
Stars: ✭ 17 (+21.43%)
Mutual labels:  redmine
Redmine-Touch
Redmine plugin to add missing function of "Last updated by"
Stars: ✭ 18 (+28.57%)
Mutual labels:  redmine
redmine default custom query
Redmine plugin for setting default custom query of Issues for each project
Stars: ✭ 67 (+378.57%)
Mutual labels:  redmine
redmine customize
Plugin for some Redmine customizations.
Stars: ✭ 32 (+128.57%)
Mutual labels:  redmine
redmine issue todo lists
Organize Redmine issues in to-do lists by manually ordering their priority.
Stars: ✭ 20 (+42.86%)
Mutual labels:  redmine
RedArmory
Backup and Restore tool for Bitnami Redmine Stack
Stars: ✭ 15 (+7.14%)
Mutual labels:  redmine
redtimer
RedTimer - Redmine Time Tracker
Stars: ✭ 59 (+321.43%)
Mutual labels:  redmine
time logger
Redmine Time logger plugin. More than likely there is only going to be one more public release. New version has new time logging with the option of multiple loggers running at the same time, fixes for excessive loggng, and a whole new look.
Stars: ✭ 58 (+314.29%)
Mutual labels:  redmine
redmine issue template
Allows to manage templates of issues, and adding them to issue body
Stars: ✭ 25 (+78.57%)
Mutual labels:  redmine
deployer
Redmine plugin to group issues into deploys and send notifications when needed
Stars: ✭ 14 (+0%)
Mutual labels:  redmine
additional tags
Redmine Plugin for adding tags functionality to issues and wiki pages.
Stars: ✭ 25 (+78.57%)
Mutual labels:  redmine
redminetoolbar
Firefox add-on to improve handling of Redmine projects
Stars: ✭ 27 (+92.86%)
Mutual labels:  redmine
cookbook-redmine
Chef's Cookbook for installing Redmine
Stars: ✭ 25 (+78.57%)
Mutual labels:  redmine
redmine persist wfmt
redmine_persist_wfmt is a plugin for Redmine that persists wiki format.
Stars: ✭ 28 (+100%)
Mutual labels:  redmine
docker-redmine-orchestration
🐳 An easy docker-compose for Redmine (Nginx + Unicorn + MariaDB)
Stars: ✭ 18 (+28.57%)
Mutual labels:  redmine
kanban
Kanban plugin for redmine
Stars: ✭ 68 (+385.71%)
Mutual labels:  redmine
redmine recurring tasks
Plugin for creating scheduled tasks from templates
Stars: ✭ 37 (+164.29%)
Mutual labels:  redmine

Redmine PostgreSQL Search Build Status

Makes Redmine search use PostgreSQL full text search instead of LIKE queries.

http://redmine-search.com/

Installation

Follow the generic Redmine plugin installation instructions, but with a twist for Redmine installations with mostly non-english content:

Before running the plugin migrations, set the language environment variable to the language your Redmine content (mostly) is in. The setup_tsearch migration uses this to create a matching text search configuration in your Redmine database. This directly influences search results quality so don't just skip this (unless your language would be english, this is the default used by the migration).

To find out which languages are supported by your PostgreSQL installation, run \dF in a shell:

redmine=# \dF
                List of text search configurations
   Schema   |     Name     |              Description
------------+--------------+---------------------------------------
 pg_catalog | danish       | configuration for danish language
 pg_catalog | dutch        | configuration for dutch language
 pg_catalog | english      | configuration for english language
 pg_catalog | finnish      | configuration for finnish language
 pg_catalog | french       | configuration for french language
 pg_catalog | german       | configuration for german language
 pg_catalog | hungarian    | configuration for hungarian language
 pg_catalog | italian      | configuration for italian language
 pg_catalog | norwegian    | configuration for norwegian language
 pg_catalog | portuguese   | configuration for portuguese language
 pg_catalog | romanian     | configuration for romanian language
 pg_catalog | russian      | configuration for russian language
 pg_catalog | simple       | simple configuration
 pg_catalog | spanish      | configuration for spanish language
 pg_catalog | swedish      | configuration for swedish language
 pg_catalog | turkish      | configuration for turkish language

So if your Redmine installation has mostly German text, you would run

language=german bundle exec rake redmine:plugins:migrate

after unpacking the plugin to YOUR_REDMINE/plugins/redmine_postgresql_search.

After running the migrations, make sure to index all your existing content by running

bundle exec rake redmine_postgresql_search:rebuild_index

In case you want to learn more about the internals of PostgreSQL full text search - I found these two articles quite helpful:

unaccent extension

The setup_tsearch migration attempts to install the unaccent PostgreSQL extension, which may fail due to insufficient privileges of your application's database user. To get around this, set up the extension manually (create extension unaccent) using a privileged user account and re-run the plugin migrations. On Ubuntu/Debian this extension is part of the postgresql-contrib package.

Known Issues

Please report any issues not mentioned here on Github.

Result Completeness

Search on custom fields and journal entries is done separately from search in issues - therefore a search for all words of the query foo bar will not find issues with foo in the description and bar in a journal entry or custom field. The reason is the way Redmine search works on a fundamental level. To make things a little better this plugin indexes the issue's subject along with each journal, so if you have foo in the subject and bar in a journal entry you will find the issue.

License

Copyright (C) 2015 Jens Krämer

The Postgresql Search plugin for Redmine is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The Postgresql Search plugin for Redmine is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the plugin. If not, see www.gnu.org/licenses.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].