Merge branch '15306-api-nonjson-params'
[arvados.git] / doc / admin / upgrading.html.textile.liquid
index e00ef1536f404a71c201dc49df4dad6f122b6b2e..79e11285725902dba5d3cc895a938f50fdb99817 100644 (file)
@@ -30,13 +30,19 @@ Note to developers: Add new items at the top. Include the date, issue number, co
 TODO: extract this information based on git commit messages and generate changelogs / release notes automatically.
 {% endcomment %}
 
-h3. current master branch
+h3. v1.4.0 (2019-06-05)
+
+h4. Populating the new file_count and file_size_total columns on the collections table
+
+As part of story "#14484":https://dev.arvados.org/issues/14484, two new columns were added to the collections table in a database migration. If your installation has a large collections table, this migration may take some time. We've seen it take ~5 minutes on an installation with 250k collections, but your mileage may vary.
+
+The new columns are initialized with a zero value. In order to populate them, it is necessary to run a script called <code class="userinput">populate-file-info-columns-in-collections.rb</code> from the scripts directory of the API server. This can be done out of band, ideally directly after the API server has been upgraded to v1.4.0.
 
 h4. Stricter collection manifest validation on the API server
 
-As a consequence of "#14482":https://dev.arvados.org/issues/14482, the Ruby SDK does a more rigorous collection manifest validation. Additionally, the API server's dependency on the Ruby SDK was updated on "#14870":https://dev.arvados.org/issues/14870 so it may be convenient to check your existing collections against this updated validation code before upgrading.
+As a consequence of "#14482":https://dev.arvados.org/issues/14482, the Ruby SDK does a more rigorous collection manifest validation. Collections created after 2015-05 are unlikely to be invalid, however you may check for invalid manifests using the script below.
 
-One way you could easily do this is by setting up a new rvm gemset and install the specific arvados gem for testing, like so:
+You could set up a new rvm gemset and install the specific arvados gem for testing, like so:
 
 <notextile>
 <pre><code>~$ <span class="userinput">rvm gemset create rubysdk-test</span>
@@ -47,7 +53,7 @@ One way you could easily do this is by setting up a new rvm gemset and install t
 
 Next, you can run the following script using admin credentials, it will scan the whole collection database and report any collection that didn't pass the check:
 
-{% codeblock as python %}
+{% codeblock as ruby %}
 require 'arvados'
 require 'arvados/keep'
 
@@ -80,7 +86,11 @@ while true
     break if offset > req[:items_available]
 end
 
-invalid.each {|c| puts "#{c[:uuid]} (Created at #{c[:created_at]}): #{c[:error]}" }
+if invalid.empty?
+    puts "No invalid collection manifests found"
+else
+    invalid.each {|c| puts "#{c[:uuid]} (Created at #{c[:created_at]}): #{c[:error]}" }
+end
 {% endcodeblock %}
 
 The script will return a final report enumerating any invalid collection by UUID, with its creation date and error message so you can take the proper correction measures, if needed.
@@ -121,6 +131,10 @@ h4. Centos7 package for libpam-arvados depends on the python-pam package, which
 
 As part of story "#9945":https://dev.arvados.org/issues/9945, it was discovered that the Centos7 package for libpam-arvados was missing a dependency on the python-pam package, which is available from the EPEL repository. The dependency has been added to the libpam-arvados package. This means that going forward, the EPEL repository will need to be enabled to install libpam-arvados on Centos7.
 
+h4. New configuration
+
+Arvados is migrating to a centralized configuration file for all components.  During the migration, legacy configuration files will continue to be loaded.  See "Migrating Configuration":config-migration.html for details.
+
 h3. v1.3.0 (2018-12-05)
 
 This release includes several database migrations, which will be executed automatically as part of the API server upgrade. On large Arvados installations, these migrations will take a while. We've seen the upgrade take 30 minutes or more on installations with a lot of collections.