danmunn / redmine_dmsf

Fork of svn repository for redmine_dmsf
GNU General Public License v2.0
417 stars 195 forks source link

Xapian not available #818

Closed sakman1010 closed 6 years ago

sakman1010 commented 6 years ago

Redmine and DMSF work properly but DMSF Full Text Search Option does not work. Indexing command work properly and my files are successfully indexing. It is "Xapian not available" on DMSF plugin screen settings. Any ideas what can be wrong? Thanks.

Suleyman

xapian_01 xapian_02

picman commented 6 years ago

I think that Xapian binding is probably missing. Have you installed ruby-xapian package?

sakman1010 commented 6 years ago

When i listed installed packages, "ruby-xapian" has already installed. xapian_03

picman commented 6 years ago

Hm, that's strange. The only packages related to Xapian I've installed are ruby-xapian and xapian-omega. The code responsible for the warning message looks like follows.

<% begin %>
  <% require 'xapian' %>
  <% xapian_disabled = false %>
<% rescue LoadError %>
  <p class="warning"><%= l(:warning_xapian_not_available) %></p> 
  <% xapian_disabled = true %>
<% end %>

So, 'require xapian' failed. But the reason is unknown for me, I'm afraid.

picman commented 6 years ago

No feedback => closing.

tsnork commented 6 years ago

Hey, I'm having the same issue on Ubuntu.

sudo apt-get install ruby-xapian Reading package lists... Done Building dependency tree Reading state information... Done ruby-xapian is already the newest version (1.2.22-2build1).

$ irb 2.3.3 :001 > require 'xapian' => true 2.3.3 :002 > exit

Packages installed as per your documentation on current Ubuntu 16.04. Still the message pops up, see: https://i.imgur.com/stXbsoP.png

Thx for your help

picman commented 6 years ago

Could you modify _app/view/settings/dmsfsettings.html.erb as follows and post the warning message from the production.log please?

280     <% begin %>
281     <% require 'xapian' %>
282     <% xapian_disabled = false %>
283 -   <% rescue LoadError %>
    +    <% rescue LoadError => e %>
284      <p class="warning"><%= l(:warning_xapian_not_available) %></p>
    +    <% Rails.logger.warn e.message %>
285      <% xapian_disabled = true %>
286     <% end %>
tsnork commented 6 years ago

The file you wanted me to edit is located in REDMINE_ROOT/plugins/redmine_dmsf/app/views/settings/_dmsf_settings.html.erb for me.

I edited the file, restarted nginx - and the error message went away. I reverted the change, restarted nginx and the error was there again. I just changed line 283 to + <% rescue LoadError => e %>, restarted nginx and the error went away. I reverted this change and the error came up again.

Uhm...

Edit 1: Okay, after some changeing things here and there - the error seems to appear randomly. I'll reload the page as often as I can to provoke the error and geht it to appear in the log.

Edit 2:

No Xapian search engine interface for Ruby installed => Full-text search won't be available. Install a ruby-xapian package or an alternative Xapian binding (https://xapian.org). Rendered plugins/redmine_dmsf/app/views/settings/_dmsf_columns.html.erb (4.1ms) cannot load such file -- xapian Rendered plugins/redmine_dmsf/app/views/settings/_dmsf_settings.html.erb (101.6ms)

acosonic commented 6 years ago

Same problem

apt list --installed | grep xapi ruby-xapian/trusty,now 1.2.16-2ubuntu1 amd64 [installed,automatic] xapian-omega/trusty,now 1.2.16-1 amd64 [installed]

Perhaps version mismatch problem? Should error message then be more descriptive?

acosonic commented 6 years ago

ruby -v ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux] (for that user via RVM installed).

However system ruby is: ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

picman commented 6 years ago

I've a fresh installation of Ubuntu 18.04. Having installed packages ruby 2.5 and ruby-xapian and everything works fine.

uart-aplex commented 2 years ago

I got same problem on ubuntu 20.04, and the ruby-xapian already installed.

sudo apt install ruby-xapian Reading package lists... Done Building dependency tree
Reading state information... Done ruby-xapian is already the newest version (1.4.14-1ubuntu2).

Here is the log of redmine: No Xapian search engine interface for Ruby installed => Full-text search won't be available. Install a ruby-xapian package or an alternative Xapian binding (https://xapian.org). cannot load such file -- xapian

ruby -v ruby 2.6.8p205 (2021-07-07 revision 67951) [x86_64-linux]

picman commented 2 years ago

On Ubuntu 20.04 I have installed the following packages:

$ aptitude search xapian | grep "i "
i  libxapian-dev - Development files for Xapian search engine library
i  libxapian30 - Search engine library
i  ruby-xapian - Xapian search engine interface for Ruby
i  xapian-omega - CGI search interface and indexers using Xapian
i  xapian-tools - Basic tools for Xapian search engine library
uart-aplex commented 2 years ago

Still can't start redmine successfully.

aptitude search xapian | grep "i " p libkf5akonadisearchxapian5 - Akonadi search xapian library i libxapian-dev - Development files for Xapian search engine library p libxapian-jni - Xapian search engine interface for Java (JNI library) i A libxapian30 - Search engine library i ruby-xapian - Xapian search engine interface for Ruby i xapian-omega - CGI search interface and indexers using Xapian i xapian-tools - Basic tools for Xapian search engine library

apt list --installed | grep xapi

_WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libxapian-dev/focal,now 1.4.14-2 amd64 [installed] libxapian30/focal,now 1.4.14-2 amd64 [installed,automatic] ruby-xapian/focal,now 1.4.14-1ubuntu2 amd64 [installed] xapian-omega/focal,now 1.4.14-1 amd64 [installed] xapian-tools/focal,now 1.4.14-2 amd64 [installed]_

Below is the complete log of redmine, I first clear the entire log file, then restart redmine and get this log. _Creating scope :system. Overwriting existing method Enumeration.system. Creating scope :sorted. Overwriting existing method Group.sorted. Creating scope :sorted. Overwriting existing method User.sorted. Creating scope :having_mail. Overwriting existing method User.havingmail. Creating scope :visible. Overwriting existing method AgileQuery.visible. Creating scope :visible. Overwriting existing method AgileVersionsQuery.visible. Creating scope :system. Overwriting existing method AgileSprint.system. No Xapian search engine interface for Ruby installed => Full-text search won't be available. Install a ruby-xapian package or an alternative Xapian binding (https://xapian.org). cannot load such file -- xapian

My redmine installation is bitnami-redmine-4.2.1-3.

picman commented 2 years ago

Hm, I don't know, sorry. Maybe you can try to install it from sources https://xapian.org/. Otherwise, I don't know...

uart-aplex commented 2 years ago

I refer to this webpage to install, https://xapian.org/docs/install.html

And the old version of DMSF did not have this problem before, I'll go back and install the old version first.

Thanks.

uart-aplex commented 2 years ago

After testing, it is found that this problem has occurred since V2.4.8, and there is no problem with V2.4.7 and previous versions.

rprodan commented 1 year ago

I have the same problem with Redmine version 5.0.3 running as redmine:5.0.3-bullseye container and DMSF plugin version 3.0.5.

W, [2022-11-16T09:39:47.493988 #1] WARN -- : No Xapian search engine interface for Ruby installed => Full-text search won't be available. Install a ruby-xapian package or an alternative Xapian binding (https://xapian.org). W, [2022-11-16T09:39:47.499542 #1] WARN -- : cannot load such file -- xapian

OS is Debian GNU/Linux 11 (bullseye) and with list of installed dependencies

$ apt list --installed | grep xapian

ibsearch-xapian-perl/stable,now 1.2.25.4-1 amd64 [installed]
libxapian-dev/stable,now 1.4.18-3 amd64 [installed]
libxapian30/stable,now 1.4.18-3 amd64 [installed,automatic]
python3-xapian/stable,now 1.4.18-1 amd64 [installed,automatic]
ruby-xapian/stable,now 1.4.18-1 amd64 [installed]
xapian-doc/stable,now 1.4.18-3 all [installed]
xapian-examples/stable,now 1.4.18-3 amd64 [installed]
xapian-omega/stable,now 1.4.18-2 amd64 [installed]
xapian-tools/stable,now 1.4.18-3 amd64 [installed]
rprodan commented 1 year ago

@uart-aplex I tried with DMSF plugin V2.4.7 and Redmine container image redmine:4.2.8-bullseye but the warning still persists.

Dependencies

libsearch-xapian-perl/stable,now 1.2.25.4-1 amd64 [installed]
libxapian-dev/stable,now 1.4.18-3 amd64 [installed]
libxapian30/stable,now 1.4.18-3 amd64 [installed,automatic]
python3-xapian/stable,now 1.4.18-1 amd64 [installed,automatic]
ruby-xapian/stable,now 1.4.18-1 amd64 [installed]
xapian-doc/stable,now 1.4.18-3 all [installed]
xapian-examples/stable,now 1.4.18-3 amd64 [installed]
xapian-omega/stable,now 1.4.18-2 amd64 [installed]
xapian-tools/stable,now 1.4.18-3 amd64 [installed

Xapian not available

Xapian_not_available_4_2_8

Redmine information

Redmine_info_4_2_8