Upgrading from a Previous Release
This page takes you through the steps for upgrading from DSS 3.2.2 to DSS 3.5.0. For more information on release versions, see the Release Matrix .
Preparing to upgrade
The following prerequisites must be completed before upgrading:
- Make a backup of the DSS 3.2.2 database and copy the
<DSS_HOME_3.2.2>
directory in order to backup the product configurations. - Download WSO2 Data Services Server 3.5.0 from http://wso2.com/products/data-services-server/.
The downtime is limited to the time taken for switching databases when in the production environment.
Migrating the configurations
Since there are no database changes between these two DSS versions, you are only required to migrate the configurations and settings from DSS 3.2.2 to DSS 3.5.0 as explained below.
Updating the configuration files
The following are the updates that need to be done to the configuration files in DSS 3.5.0:
Note that configuration files should not be copied directly between servers.
- Create a new database for DSS 3.5.0 and restore the backup of the old database in this new database.
- To connect DSS 3.5.0 to the new database, configure the following files:
Configure the
<DSS_HOME_3.5.0>/repository/conf/datasources/masterdatasources.xml
file as shown in the following example:<datasource> user manager</description> <name>WSO2_CARBON_DB</name> <description>The datasource used for registry and <jndiConfig> <name>jdbc/WSO2CarbonDB</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:mysql://localhost:3306/<new_database></url> <username>username</username> <password>password</password> <driverClassName>com.mysql.jdbc.Driver</driverClassName> <maxActive>80</maxActive> <maxWait>60000</maxWait> <minIdle>5</minIdle> <testOnBorrow>true</testOnBorrow> <validationQuery>SELECT 1</validationQuery> <validationInterval>30000</validationInterval> </configuration> </definition> </datasource>
Go to the
<DSS_HOME_3.5.0>/repository/conf/
directory and update the datasource references in theuser-mgt.xml
andregistry.xml
files to match the updated configurations in themasterdatasources.xml
file. The following are sample configurations if the datasource is “jdbc/WSO2CarbonDB”:
registry.xml<dbConfig name="wso2registry"> <dataSource>jdbc/WSO2CarbonDB</dataSource> </dbConfig>
usermgt.xml
<UserManager> <Realm> <Configuration> ... <Property name="dataSource">jdbc/WSO2CarbonDB</Property> </Configuration> ... </Realm> </UserManager>
Check for any other configurations that were done for DSS 3.2.2 (based on your solutions), and update the configuration files in DSS 3.5.0 accordingly. For example, external user stores, caching, mounting, etc.
Note that the properties of data services listed below have changed for all 3.x.x versions of WSO2 DSS. Therefore, if you have any .dbs files moved from an older DSS version (DSS 2.x.x version) to DSS 3.5.0, be sure to update these properties as applicable to the DSS 3.x.x versions. The following table shows how the properties have changed between DSS 2.x.x versions to DSS 3.x.x versions.
DSS 2.x.x versions DSS 3.x.x versions org.wso2.ws.dataservice.driver driverClassName org.wso2.ws.dataservice.protocol url org.wso2.ws.dataservice.user username org.wso2.ws.dataservice.password password org.wso2.ws.dataservice.query_timeout queryTimeout org.wso2.ws.dataservice.autocommit autoCommit org.wso2.ws.dataservice.fetch_direction fetchDirection org.wso2.ws.dataservice.fetch_size fetchSize org.wso2.ws.dataservice.max_field_siz maxFieldSize org.wso2.ws.dataservice.max_rows maxRows org.wso2.ws.dataservice.transaction_isolation defaultTransactionIsolation org.wso2.ws.dataservice.initial_size initialSize org.wso2.ws.dataservice.maxpoolsize maxActive org.wso2.ws.dataservice.max_idle maxIdle org.wso2.ws.dataservice.minpoolsize minIdle org.wso2.ws.dataservice.max_wait maxWait org.wso2.ws.dataservice.validation_query validationQuery org.wso2.ws.dataservice.test_on_borrow testOnBorrow org.wso2.ws.dataservice.test_on_return testOnReturn org.wso2.ws.dataservice.test_while_idle testWhileIdle org.wso2.ws.dataservice.time_between_eviction_runs_mills timeBetweenEvictionRunsMillis org.wso2.ws.dataservice.num_test_per_eviction_run numTestsPerEvictionRun org.wso2.ws.dataservice.min_evictable_idle_time_millis minEvictableIdleTimeMillis org.wso2.ws.dataservice.remove_abandoned removeAbandoned org.wso2.ws.dataservice.remove_abandoned_timeout removeAbandonedTimeout org.wso2.ws.dataservice.log_abandoned logAbandoned org.wso2.ws.dataservice.xa_datasource_class dataSourceClassName org.wso2.ws.dataservice.xa_datasource_properties dataSourceProps org.wso2.ws.dataservice.force_stored_proc forceStoredProc org.wso2.ws.dataservice.force_jdbc_batch_requests forceJDBCBatchRequests
Migrating the tenant settings and applications
You can migrate all artifacts etc. relevant to tenants by copying the following directories from the old server to the new server.
- Copy the following directories from the old database to the staging database.
- To migrate the super tenant settings, copy the
<DSS_HOME>/repository/
deployment/server
directory. - If multitenancy is used, copy the
<DSS_HOME>/repository/tenants/
directory.
- To migrate the super tenant settings, copy the
- Start the server.
Testing the upgrade
Verify that all the required scenarios are working as expected with DSS 3.5.0. This confirms that the upgrade is successful.