URGENT: Redmine 0.9.1 upgrade failed : our forge is down

Upgrading redmine to version 0.9.1 ..
Downloading http://rubyforge.org/frs/download.php/68872/redmine-0.9.1.tar.gz ..
Downloading http://files.rubyforge.vm.bytemark.co.uk/redmine/redmine-0.9.1.tar.gz (4578461 bytes) ..
     Received 1024 bytes (0 %)
     Received 458752 bytes (10 %)
     Received 916480 bytes (20 %)
     Received 1374208 bytes (30 %)
     Received 1831936 bytes (40 %)
     Received 2289664 bytes (50 %)
     Received 2747392 bytes (60 %)
     Received 3205120 bytes (70 %)
     Received 3662848 bytes (80 %)
     Received 4121600 bytes (90 %)
     Received 4578461 bytes (100 %)
.. download complete.
Mongrel server did not start :
** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with production environment...
/usr/lib/ruby/1.8/rubygems/version.rb:237:in `initialize': undefined method `collect' for #<Gem::Version::Requirement:0x7fb416e52050> (NoMethodError)
from /usr/lib/ruby/1.8/rubygems/version.rb:29:in `new'
from /usr/lib/ruby/1.8/rubygems/version.rb:29:in `initialize'
from /home/forge/public_html/config/../vendor/rails/railties/lib/rails/gem_dependency.rb:63:in `initialize'
from /home/forge/public_html/config/../vendor/rails/railties/lib/initializer.rb:812:in `new'
from /home/forge/public_html/config/../vendor/rails/railties/lib/initializer.rb:812:in `gem'
from /home/forge/public_html/config/environment.rb:53
from /home/forge/public_html/config/../vendor/rails/railties/lib/initializer.rb:111:in `run'
from /home/forge/public_html/config/environment.rb:20
... 11 levels...
from /var/lib/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/command.rb:212:in `run'
from /var/lib/gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
from /var/lib/gems/1.8/bin/mongrel_rails:16:in `load'
from /var/lib/gems/1.8/bin/mongrel_rails:16

Problem is that 0.9.1 is half installed but VirtualMinPro says 0.8.7 is installed so it's kind of hard to go back.

Not a ruby expert either... This didn't work to tried to update:

# sudo gem install rubygems-update
Need to update 1 gems from http://gems.rubyforge.org
.
complete
ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-update requires builder >= 0

# sudo gem update --system
Updating RubyGems...
Attempting remote update of rubygems-update
ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-update requires builder >= 0

# sudo gem install rails -v=2.3.5
ERROR:  While executing gem ... (Gem::GemNotFoundException)
    Could not find rails (= 2.3.5) in any repository
Status: 
Closed (fixed)

Comments

Try the following :

gem install builder
gem update --system
gem install rails

Didn't work: first command took like 20 secs, but errored:

# gem install builder
ERROR:  While executing gem ... (Gem::GemNotFoundException)
    Could not find builder (> 0) in any repository

# gem update --system
Updating RubyGems...
Attempting remote update of rubygems-update
ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-update requires builder >= 0

# gem install rails
ERROR:  While executing gem ... (Gem::GemNotFoundException)
    Could not find rails (> 0) in any repository

(That's on Ubuntu 8.04LTS)

Sounds like gem is broken in some way. Can you even list available gems with a command like gem list or gem list --remote ?

following this: http://weblog.rubyonrails.org/2007/2/6/in-case-you-re-having-trouble-ins...

also tried this:

# gem env
RubyGems Environment:
  - VERSION: 0.9.4 (0.9.4)
  - INSTALLATION DIRECTORY: /var/lib/gems/1.8
  - GEM PATH:
     - /var/lib/gems/1.8
  - REMOTE SOURCES:
     - http://gems.rubyforge.org

# rm /var/lib/gems/1.8/source_cache

# gem install builder
Need to update 1 gems from http://gems.rubyforge.org
.
complete
ERROR:  While executing gem ... (Gem::GemNotFoundException)
    Could not find builder (> 0) in any repository

# ls -al /var/lib/gems/1.8/source_cache
-rw-r--r-- 1 root root 4 Feb  2 02:12 /var/lib/gems/1.8/source_cache

# more /var/lib/gems/1.8/source_cache
{
#

with no success.

Doesn't look that broken, it was working fine with redmine 0.8.7. Looks like redmine 0.9.1 has different prerequisites.

Both commands don't look that bad at first glance:

# gem list

*** LOCAL GEMS ***

actionmailer (2.3.2, 2.2.2)
    Service layer for easy email delivery and testing.

actionpack (2.3.2, 2.2.2)
    Web-flow and rendering framework putting the VC in MVC.

activerecord (2.3.2, 2.2.2)
    Implements the ActiveRecord pattern for ORM.

activeresource (2.3.2, 2.2.2)
    Think Active Record for web resources.

activesupport (2.3.2, 2.2.2)
    Support and utility classes used by the Rails framework.

cgi_multipart_eof_fix (2.5.0)
    Fix an exploitable bug in CGI multipart parsing.

daemons (1.0.10)
    A toolkit to create and control daemons in different ways

fastthread (1.0.7)
    Optimized replacement for thread.rb primitives

gem_plugin (0.2.3)
    A plugin system based on rubygems that uses dependencies only

mongrel (1.1.5)
    A small fast HTTP library and server that runs Rails, Camping, Nitro
    and Iowa apps.

mysql (2.7)
    MySQL/Ruby provides the same functions for Ruby programs that the
    MySQL C API provides for C programs.

rails (2.3.2, 2.2.2)
    Web-application framework with template engine, control-flow layer,
    and ORM.

rake (0.8.7, 0.8.3)
    Ruby based make-like utility.

sources (0.0.1)
    This package provides download sources for remote gem installation


# gem list --remote

*** REMOTE GEMS ***

rubygems-update (1.3.5)
    RubyGems is a package management framework for Ruby

Searched in aptitude for any anomality re: "gem", webmin-ruby-gem package is not installed, but wasn't before either.

Versions seems to not fulfill prerequisites of 0.9.1:

http://www.redmine.org/wiki/redmine/RedmineInstall

We were waiting for redmine 0.9 eagerly, as it solves an issue with lots of users that 0.8.7 has (drop-downs), so would like to spend another half hour on trying to make 0.9.1 run if possible.

If there are no other ideas for now, What's the method to get back to redmine 0.8.7 ? Just restore only files from backup i took just before ?

Yes, Redmine 0.9.1 has new pre-requisites, as I just discovered :-(

However, you should be able to install them pretty easily with the gem install command. It looks like your gem command is quite out of date though .. you should check if Ubuntu has a newer version. I run 1.3.4 with no problems..

Nope:

# gem install rubygems-update
Need to update 1 gems from http://gems.rubyforge.org
.
complete
ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-update requires builder >= 0

Thing is that we are on Ubuntu Server 8.04LTS.

Our rubygems package is up-to-date to latest on that distro. :-(

   This package contains RubyGems' commands like /usr/bin/gem.             

    Homepage: http://rubygems.org/                                          
  Priority: optional                                                        
  Section: universe/interpreters                                            
  Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>         
  Compressed size: 51.7k                                                    
  Uncompressed size: 168k                                                   
  Source Package: libgems-ruby                                              
  --\ Depends                                                               
    --- libgems-ruby1.8 (= 0.9.4-4)                                         
    --- ruby1.8                                                             
  --- Packages which depend on rubygems                                     
  --\ Versions                                                              
i    0.9.4-4                                                                

Hate to install packages outside debian apt...it's just programing unplaned future trouble :-(

Looks like i borked my gem install for real this time: did according to this: http://gems.rubyforge.org/pages/download

# wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
100%[=================================>] 278,469      860.30K/s            
02:38:54 (856.19 KB/s) - `rubygems-1.3.5.tgz' saved [278469/278469]

# tar xfz rubygems-1.3.5.tgz
# cd rubygems-1.3.5
# ruby setup.rb
RubyGems 1.3.5 installed

=== 1.3.5 / 2009-07-21

Bug fixes:

* Fix use of prerelease gems.
* Gem.bin_path no longer escapes path with spaces. Bug #25935 and #26458.

Deprecation Notices:

* Bulk index update is no longer supported (the code currently remains, but not
  the tests)
* Gem::manage_gems was removed in 1.3.3.
* Time::today was removed in 1.3.3.


------------------------------------------------------------------------------

RubyGems installed the following executables:
/usr/bin/gem1.8

because now it's less good:

# gem update --system/usr/bin/gem:10: undefined method `manage_gems' for Gem:Module (NoMethodError)

and trying to upgrade redmine fails even earlier:

Upgrading redmine to version 0.9.1 ..
Found http://rubyforge.org:80/frs/download.php/68872/redmine-0.9.1.tar.gz in cache ..
Mongrel GEM install failed :
/usr/bin/gem:10: undefined method `manage_gems' for Gem:Module (NoMethodError)

.. failed! See the error message above for the reason why.

Any suggestions ? :-(

EDIT: trying this now: http://www.videc.at/2009/04/30/rubygems-undefined-method-manage_gems-for...

right ?

That hint seems to have removed that error:

# vi /usr/bin/gem
# gem update --system
Updating RubyGems
Nothing to update

# gem list

*** LOCAL GEMS ***

actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (2.3.5)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
mongrel (1.1.5)
rack (1.0.1)
rails (2.3.5)
rake (0.8.7)

# gem list --remote

*** REMOTE GEMS ***

360_services (0.0.1)
_ (1.2)
a2smbla (0.2.1)
a2ws (0.1.9)
a_b (0.1.1)
a_b_plugin (0.1.0)
a_la_chart (0.1.5)
a_okay (0.1.0)
aaalex-off_github (1.1.2)
aalib-ruby (0.7.1)
...

So seems much better at first glance.

Now the update of Redmine to 0.9.1 was spinning for 5 minutes in Virtualmin and gem was at 100% all the time, but now output is as follows:

Upgrading redmine to version 0.9.1 ..
Found http://rubyforge.org:80/frs/download.php/68872/redmine-0.9.1.tar.gz in cache ..
Rails MySQL driver install failed :
INFO:  `gem install -y` is now default and will be removed
INFO:  use --ignore-dependencies to install only the gems you list
Building native extensions.  This could take a while...
Successfully installed mysql-2.8.1
1 gem installed
Installing ri documentation for mysql-2.8.1...

No definition for next_result

No definition for field_name

No definition for field_table

No definition for field_def

No definition for field_type

No definition for field_length

No definition for field_max_length

No definition for field_flags

No definition for field_decimals

No definition for time_inspect

No definition for time_to_s

No definition for time_get_year

No definition for time_get_month

No definition for time_get_day

No definition for time_get_hour

No definition for time_get_minute

No definition for time_get_second

No definition for time_get_neg

No definition for time_get_second_part

No definition for time_set_year

No definition for time_set_month

No definition for time_set_day

No definition for time_set_hour

No definition for time_set_minute

No definition for time_set_second

No definition for time_set_neg

No definition for time_set_second_part

No definition for time_equal

No definition for error_errno

No definition for error_sqlstate
Installing RDoc documentation for mysql-2.8.1...

No definition for next_result

No definition for field_name

No definition for field_table

No definition for field_def

No definition for field_type

No definition for field_length

No definition for field_max_length

No definition for field_flags

No definition for field_decimals

No definition for time_inspect

No definition for time_to_s

No definition for time_get_year

No definition for time_get_month

No definition for time_get_day

No definition for time_get_hour

No definition for time_get_minute

No definition for time_get_second

No definition for time_get_neg

No definition for time_get_second_part

No definition for time_set_year

No definition for time_set_month

No definition for time_set_day

No definition for time_set_hour

No definition for time_set_minute

No definition for time_set_second

No definition for time_set_neg

No definition for time_set_second_part

No definition for time_equal

No definition for error_errno

No definition for error_sqlstate

.. failed! See the error message above for the reason why.

so looks like it has advanced a bit, now what from there ?

At second trial got:

Upgrading redmine to version 0.9.1 ..
Found http://rubyforge.org:80/frs/download.php/68872/redmine-0.9.1.tar.gz in cache ..
redmine installation complete. Go to http://removed to manage it.

.. done

but still error 503 Service Temporarily Unavailable

Tried restarting Rails from redmine script in virtualmin it still says "Down"

Tried restarting Apache (no errors).

Any hint how to restart rails ?

To fix the gem issue, you could also have run :

rm /usr/bin/gem
ln -s /usr/bin/gem-1.8 /usr/bin/gem

As for the problem starting the Redmine server, check the redmine.*.log log file under ~/logs ..

ouch: sounds like chinese to me... :

# cat /home/forge/logs/redmine.3000.log
** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with production environment...
/home/forge/public_html/vendor/rails/activesupport/lib/active_support/dependencies.rb:440:in `load_missing_constant': uninitialized constant ActionController::AbstractRequest (NameError)
from /home/forge/public_html/vendor/rails/activesupport/lib/active_support/dependencies.rb:80:in `const_missing'
from /home/forge/public_html/vendor/plugins/actionwebservice/lib/action_web_service/protocol/abstract.rb:74
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /home/forge/public_html/vendor/rails/activesupport/lib/active_support/dependencies.rb:158:in `require'
from /home/forge/public_html/vendor/plugins/actionwebservice/lib/action_web_service/protocol.rb:1
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
... 30 levels...
from /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/command.rb:212:in `run'
from /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
from /usr/bin/mongrel_rails:19:in `load'
from /usr/bin/mongrel_rails:19

I don't think that is the same bug..

You might want to try upgrading all the other Rails dependencies, with the commands :

gem install test-spec
gem install camping
gem install fcgi
gem install memcache-client
gem install ruby-openid
gem install rack
gem install mongrel_rails

Thanks again very much for your help, really appreciated. Hopefully we're advancing in the right direction.

Just to be sure: Does redmine 0.9.1 run fine on your test installation ?

I did the steps suggested above: still no luck (not all installed ok):

Before:

# gem list

*** LOCAL GEMS ***

actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (2.3.5)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
mongrel (1.1.5)
mysql (2.8.1)
rack (1.1.0, 1.0.1)
rails (2.3.5)
rake (0.8.7)

After:

# gem list
*** LOCAL GEMS ***

actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (2.3.5)
builder (2.1.2)
camping (1.5.180)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
markaby (0.5)
memcache-client (1.7.7)
metaid (1.0)
mongrel (1.1.5)
mysql (2.8.1)
rack (1.1.0, 1.0.1)
rails (2.3.5)
rake (0.8.7)
ruby-openid (2.1.7)
test-spec (0.10.0)

Details (not all installed ok):

# gem install test-spec
Successfully installed test-spec-0.10.0
1 gem installed
Installing ri documentation for test-spec-0.10.0...
Installing RDoc documentation for test-spec-0.10.0...

# gem install camping
Successfully installed builder-2.1.2
Successfully installed markaby-0.5
Successfully installed metaid-1.0
Successfully installed camping-1.5.180
4 gems installed
Installing ri documentation for builder-2.1.2...
ERROR:  While generating documentation for builder-2.1.2
... MESSAGE:   Unhandled special: Special: type=17, text="<!-- HI -->"
... RDOC args: --ri --op /usr/lib/ruby/gems/1.8/doc/builder-2.1.2/ri --title Builder -- Easy XML Building --main README --line-numbers --quiet lib CHANGES Rakefile README doc/releases/builder-1.2.4.rdoc doc/releases/builder-2.0.0.rdoc doc/releases/builder-2.1.1.rdoc --title builder-2.1.2 Documentation
(continuing with the rest of the installation)
Installing ri documentation for markaby-0.5...
Installing ri documentation for metaid-1.0...
Installing ri documentation for camping-1.5.180...
Installing RDoc documentation for builder-2.1.2...
Installing RDoc documentation for markaby-0.5...
Installing RDoc documentation for metaid-1.0...
Installing RDoc documentation for camping-1.5.180...

# gem install fcgi
Building native extensions.  This could take a while...
ERROR:  Error installing fcgi:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for fcgiapp.h... no
checking for fastcgi/fcgiapp.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/ruby1.8
--with-fcgi-dir
--without-fcgi-dir
--with-fcgi-include
--without-fcgi-include=${fcgi-dir}/include
--with-fcgi-lib
--without-fcgi-lib=${fcgi-dir}/lib


Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.8 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.8/ext/fcgi/gem_make.out

l# cat /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.8/ext/fcgi/gem_make.out
/usr/bin/ruby1.8 extconf.rb
checking for fcgiapp.h... no
checking for fastcgi/fcgiapp.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/ruby1.8
--with-fcgi-dir
--without-fcgi-dir
--with-fcgi-include
--without-fcgi-include=${fcgi-dir}/include
--with-fcgi-lib
--without-fcgi-lib=${fcgi-dir}/lib

# gem install memcache-client
Successfully installed memcache-client-1.7.7
1 gem installed
Installing ri documentation for memcache-client-1.7.7...
Installing RDoc documentation for memcache-client-1.7.7...

l# gem install ruby-openid
Successfully installed ruby-openid-2.1.7
1 gem installed
Installing ri documentation for ruby-openid-2.1.7...
Installing RDoc documentation for ruby-openid-2.1.7...

l# gem install rack
Successfully installed rack-1.1.0
1 gem installed
Installing ri documentation for rack-1.1.0...
Installing RDoc documentation for rack-1.1.0...

# gem install mongrel_rails
ERROR:  could not find gem mongrel_rails locally or in a repository

# gem install mongrel-rails
ERROR:  could not find gem mongrel-rails locally or in a repository

# gem install mongrel
      Building native extensions.  This could take a while...
Successfully installed mongrel-1.1.5
1 gem installed
Installing ri documentation for mongrel-1.1.5...
Installing RDoc documentation for mongrel-1.1.5...

Yes, for me it installs and runs fine.

So after installing all those packages, can you start the Mongrel server for the script?

Also, I would be interested to know if it runs OK if you install it into a separate test domain.

Opened a bug here too http://www.redmine.org/issues/4712

But now found this bug here: http://www.redmine.org/issues/4499

Looks like there is a leftover from 0.8.7 which VIrtualmin script didn't remove :-(

See comments:

Jean-Philippe Lang wrote:

Your stack trace shows:

/var/www/redmine/vendor/plugins/actionwebservice/lib/action_web_service/protocol/abstract.rb

which is no longer present in 0.9. Do a fresh checkout and retry before reopening this ticket please.

Looking at this more precisely now.

Well, 5am, still no sleep :-/

Yes, Virtualmin doesn't generally delete existing files when removing a script, as you wouldn't want to lose data files created by the script after installation.

Thanks a lot for your help. I would have been lost with the rails stuff.

Ok, now finally got forge 0.9.1 to working !!!

The Virtualmin redmine upgrader though seems pretty buggy... :

  • rails dependancies not taken care

  • deleting really the files that are not needed is essential to avoid that bug #4712 = #4499 of redmine

  • perfoming steps 4 and 5 is essential and seems to not have been done, and then not redone.

Yeah, the next Virtualmin release (3.77) will fix these Redmine upgrade issues by installing all the new dependencies. Sadly, on our test systems, those gems were already installed so the upgrade worked OK :-(

What were the files you needed to delete though?

# diff -rq redmine-0.9.1 public_html | more
Only in public_html: .htaccess
Only in public_html/app: apis
Only in public_html/app/controllers: application.rb
Only in public_html/app/views/account: show.rhtml
Only in public_html/app/views/custom_fields: list.rhtml
Only in public_html/app/views/layouts: _project_selector.rhtml
Only in public_html/app/views/mailer: layout.text.html.rhtml
Only in public_html/app/views/mailer: layout.text.plain.rhtml
Only in public_html/app/views/projects: changelog.rhtml
Only in public_html/app/views/repositories: browse.rhtml
Only in public_html/app/views/users: list.rhtml

Only in public_html/config: database.yml     <------------- did NOT REMOVE OF COURSE
Only in public_html/config: email.yml     <------------- did NOT REMOVE OF COURSE

Only in public_html/config/initializers: session_store.rb
Only in public_html/db: schema.rb
Only in public_html/extra/sample_plugin/app/views/settings: _settings.rhtml
Only in public_html/extra/sample_plugin: lang
Only in public_html/files: A LOT: ALL OUR FILES AND ATTACHMENTS

...

Only in public_html: lang
Only in public_html/log: production.log

------ The following group of files we didn't remove:
Only in public_html/public/images: 22x22
Only in public_html/public/images: 32x32
Only in public_html/public/images: admin.png
Only in public_html/public/images: csv.png
Only in public_html/public/images: file.png
Only in public_html/public/images: home.png
Only in public_html/public/images: html.png
Only in public_html/public/images: image.png
Only in public_html/public/images: index.png
Only in public_html/public/images: pdf.png
Only in public_html/public/images: txt.png
Only in public_html/public/images: user_new.png
Only in public_html/public/images: user_page.png
Only in public_html/public/images: users.png
Only in public_html/public/javascripts/calendar/lang: calendar-vn.js
Only in public_html/public/javascripts/jstoolbar/lang: jstoolbar-vn.js
------------

Only in public_html/public: plugin_assets
Only in public_html/public: robots.txt <<<-------------- to be kept

Only in public_html: stats  <<<-------------- to be kept for awstats and co.

Only in public_html/test/functional: enumerations_controller.rb
Only in public_html/test/functional: sys_api_test.rb
Only in public_html/tmp/sessions: ruby_sess.XXXXXXXXXXXXXXXXXXXXXXXXX (a lot)

BTW that's an issue: ruby does NOT delete sessions-files: so i had to add a CRON using FIND (RM *: too much files!!!) to delete ruby_sess.* files older than a day.....) it ends up with hundreds of thousands of tiny files which put backup at a snail pace........

Only in public_html/vendor/plugins: actionwebservice
Only in public_html/vendor/plugins/engines/lib/engines/rails_extensions: action_mailer.rb
Only in public_html/vendor/plugins/engines/lib/engines/rails_extensions: routing.rb
Only in public_html/vendor/plugins: gloc-1.1.0
Only in public_html/vendor/plugins/gravatar: README
Only in public_html/vendor/rails: .gitignore
Only in public_html/vendor/rails: 2-1-CVE-2009-3009-diff1.patch
Only in public_html/vendor/rails: 2-1-CVE-2009-3009-diff2.patch
Only in public_html/vendor/rails/actionmailer/lib/action_mailer: vendor.rb
Only in public_html/vendor/rails/actionmailer/test/fixtures/test_mailer: signed_up.erb
Only in public_html/vendor/rails/actionpack/lib/action_controller: assertions.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller/caching: sql_cache.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller/cgi_ext: session.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller: components.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller: request_profiler.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller/session: active_record_store.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller/session: drb_server.rb
Only in public_html/vendor/rails/actionpack/lib/action_controller/session: drb_store.rb
Only in public_html/vendor/rails/actionpack/lib/action_view/helpers: javascripts
Only in public_html/vendor/rails/actionpack/lib/action_view: partial_template.rb
Only in public_html/vendor/rails/actionpack/lib/action_view: template_finder.rb
Only in public_html/vendor/rails/actionpack/lib/action_view/template_handlers: compilable.rb
Only in public_html/vendor/rails/actionpack/test/controller: cgi_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: components_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: custom_handler_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: http_authentication_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: integration_upload_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: new_render_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: session_fixation_test.rb
Only in public_html/vendor/rails/actionpack/test/controller: session_management_test.rb
Only in public_html/vendor/rails/actionpack/test/fixtures/layout_tests/layouts: symlinked
Only in public_html/vendor/rails/actionpack/test/fixtures/test: block_content_for.erb
Only in public_html/vendor/rails/actionpack/test/fixtures/test: erb_content_for.erb
Only in public_html/vendor/rails/actionpack/test/template: deprecated_erb_variable_test.rb
Only in public_html/vendor/rails/actionpack/test/template: template_finder_test.rb
Only in public_html/vendor/rails/actionpack/test/template: template_object_test.rb
Only in public_html/vendor/rails: activemodel
Only in public_html/vendor/rails/activerecord: MIT-LICENSE
Only in public_html/vendor/rails/activerecord/lib/active_record: vendor
Only in public_html/vendor/rails/activerecord/test/cases: adapter_test_sqlserver.rb
Only in public_html/vendor/rails/activerecord/test/cases: table_name_test_sqlserver.rb
Only in public_html/vendor/rails/activerecord/test/cases: threaded_connections_test.rb
Only in public_html/vendor/rails/activerecord/test/fixtures: .gitignore
Only in public_html/vendor/rails/activerecord/test/schema: sqlserver_specific_schema.rb
Only in public_html/vendor/rails/activeresource: MIT-LICENSE
Only in public_html/vendor/rails/activesupport: MIT-LICENSE
Only in public_html/vendor/rails/activesupport: Rakefile
Only in public_html/vendor/rails/activesupport: install.rb
Only in public_html/vendor/rails/activesupport/lib/active_support: .dependencies.rb.swp
Only in public_html/vendor/rails/activesupport/lib/active_support: clean_logger.rb
Only in public_html/vendor/rails/activesupport/lib/active_support/core_ext/string: unicode.rb
Only in public_html/vendor/rails/activesupport/lib/active_support/core_ext: test
Only in public_html/vendor/rails/activesupport/lib/active_support/core_ext: test.rb
Only in public_html/vendor/rails/activesupport/lib/active_support/multibyte: generators
Only in public_html/vendor/rails/activesupport/lib/active_support/multibyte: handlers
Only in public_html/vendor/rails/activesupport/lib/active_support/vendor: memcache-client-1.5.0
Only in public_html/vendor/rails/activesupport/lib/active_support/vendor: tzinfo-0.3.11
Only in public_html/vendor/rails/activesupport/lib/active_support/vendor: xml-simple-1.0.11
Only in public_html/vendor/rails/activesupport: test
Only in public_html/vendor/rails: doc
Only in public_html/vendor/rails/railties/bin/performance: request
Only in public_html/vendor/rails/railties/bin: process
Only in public_html/vendor/rails/railties/configs: apache.conf
Only in public_html/vendor/rails/railties/configs: lighttpd.conf
Only in public_html/vendor/rails/railties/helpers: application.rb
Only in public_html/vendor/rails/railties/lib/commands/performance: request.rb
Only in public_html/vendor/rails/railties/lib/commands: process
Only in public_html/vendor/rails/railties/lib/commands: servers
Only in public_html/vendor/rails/railties/lib/rails: mongrel_server
Only in public_html/vendor/rails/railties: test

That was the diff and what we also removed.

But really your best bet is PROBABLY to apply the step 3 of http://www.redmine.org/wiki/redmine/RedmineUpgrade

then add back BEFORE step 4 the vendors/plugins folder content maybe to keep the plugins

OR:

fetch installed redmine version installer, then fetch new redmine installer version, and diff files between these 2 PACKAGES to pick-up files and folders to remove.

That second choice would not touch any other additional files installed by user, like plugins and templates.

I would probably be more confident by that second option. It would of course not cover manually installed upgrades (not through virtualmin), but doing that is calling for trouble anyway (Well a few times, specially with Piwik and Wordpress, which allow IN-APPLICATION upgrades easily, I did it too... so average users would do same probably too).

As the above discussion has many good tips and might help others, if you agree (?) would make ticket public after removing private details later today.

Perhaps it would be safer to blow away the entire old redmine directory, except for config , log and files, then extract the new tar.gz file ..

That would be applying the recommended Step 3 here: http://www.redmine.org/wiki/redmine/RedmineUpgrade

In that case I would suggest to also backup/move the previous installation into a folder in the home directory of that virtual-domain.

In vendors/plugins there might be valid (and also ones incompatible with new release) plugins/extensions as it is the place where those should be installed according to step 2 of this: http://www.redmine.org/wiki/redmine/Plugins and in templates too.

So removing everything is not the solution, but moving might, with a big warning BEFORE and AFTER the upgrade in virtualmin.

I did some more testing with this, and what seems to work best is removing most of the directories before extracting the new tar.gz file, such as : app db doc extra lang lib script test vendor/gems vendor/rails , and renaming vendor/plugins

How about the public directory though? Did you find that this needed to be copied over?

I removed this old directory which seemed that it could hurt: Only in public_html/public: plugin_assets

I wasn't sure about the images being still used or not so as they wouldn't hurt probably, kept them.

But according to instructions, there is nothing in public that would be needed to be kept.

You most probably want to save the template = theme of previous install with vendor/plugins, and probably even keep that folder, just overwriting...

See point 7 of: http://www.redmine.org/wiki/redmine/RedmineUpgrade

  1. Check for any themes that you may have installed in the "public/themes" directory. You can copy them over but checking for updated version is ideal.

I'm just afraid that MINOR upgrades, if they remove every plugin and theme become, time-consuming.

But you should probably contact the redmine people, as they could help you much better in your decisions, and maybe also design better upgrade mechanisms.

I did some testing, and found that leaving the public directory worked fine. The docs say that public/themes should be preserved, so that seems OK.

Do you have lots of additional plugins installed? If so, upgrading could be troublesome, as the Virtualmin installer will rename the plugins directory to plugins.old . I can't see any way to avoid this if we want to avoid old plugins breaking the upgraded Redmine :-(

I don't have any installed at present time. Installed at begin a few but the quality of the plugins was low, so I did uninstall as we could live without them and didn't have time to fix.

But there are quite a few actually: http://www.redmine.org/wiki/redmine/Plugin_List Unfortunately, the list's format is such that plugins installations can't be automated or managed through virtualmin. Maybe something to contact the redmine author about ?

Maybe a reasonable compromise would be to move plugins for major releases (0.9->1.0, 1.0->1.1) and keep them for minor ones (0.9.x -> 0.9.y) ?

In each case an appropriate warning message with list with path to files which will be/were left/moved. before and after upgrade would be fine ?

That's a good policy .. I will implement this in the next release.

Removed private info and made this private thread public, as it has lots of good hints on making rails nd redmine working.

Automatically closed -- issue fixed for 2 weeks with no activity.