Upgrading from Jama Software 2014.1 with Microsoft SQL Server

By Alexander posted 03-16-2015 14:07

As part of our release for Jama Software 2014.1,we made some improvements to our indexing and search functionality that
required an upgraded library for connecting to Microsoft SQL Server. However, after doing a bit of additional testing we found that we could make some significant performance improvements by modifying the original jTDS connector and moving away from Microsoft's official library. If you have installed 2014.1 with Microsoft SQL Server at any point, this change applies to you. Whether you're upgrading from 2014.1 now or have in the past, you'll need to make the following changes in order to take advantage of the improved performance.

Who does this affect?

This issue will only affect users whose installations use Microsoft SQL Server as Jama Software's database management system, and who have installed the sqljdbc4.jar driver as part of the installation process for Jama Software 2014.1 (build date 2014/05/16). The version number and build date can be found on Jama Software's login page. For more information, please see  How can I tell what version of Jama Software I'm using?



You will only need to follow the steps outlined once, as part of your upgrade from Jama Software 2014.1 (regardless of which Jama Software version you are upgrading to).

How do I make the change?

  1. Shut down Tomcat
  2. If necessary, go through the normal process to upgrade Jama Software, stopping before Tomcat is restarted
  3. Remove the sqljdbc4.jar file from [Tomcat home]/lib
  4. In your contour_home  directory, remove the database.properties file (make sure you have your database connection information on-hand)
  5. Restart Tomcat and go through Jama Software's initial setup to reenter the database connection settings
Note: Microsoft's URL format for specifying a named instance (jdbc:jtds:sqlserver://[host]\[instance]:[port]/[database]) is not supported with the jTDS driver.  To specify a named instance of SQL server, you’ll need to use the format jdbc:jtds:[server_type]://[host]:[port];database_name=[database];instance= [instance]  See the jTDS FAQ for further details.



03-30-2015 14:53

The general issue has been discovered. Again, thanks for pointing these out to us. It turns out the rich text editor of this platform *looks* like it supports copy & pasting of images, so some of my co-workers copy-and-pasted into the edtior docs they wrote within Jama and exported to Word. Internally we all have access to this instance of Jama so we didn't realize this folly. We're working on fixing it as we speak...hopefully the documentation will make more sense now!

03-30-2015 06:03

This seems to be a general issue. I can't see the images in a lot of articles (e.g. here: https://community.jamasoftware.com/jama/topics/how-to-expire-user-sessions-in-tomcat) I only see the file name..

If I try to open the image in a new tab, I'm redirected to a hosted JAMA instance and have to log in...


03-30-2015 05:45

Hi Alexander,
The image in the main article isn't working. 

03-27-2015 18:06

Yes, it does solve the issue. The only downside to this approach is that Jama doesn't do any error checking from the properties files, so if there's a typo in the connection string or any issues connecting with your database, recovery can get a bit ugly. In that case, however, you can always fall back on the instructions we originally provided to correct the error.

03-19-2015 06:22

George, thanks for this hint. It seems to be a little bit easier...

@Alexander: Does this solve the issue you have explained above, completely?

03-17-2015 17:49

Hi Sebastian,

We do recommend that you carry out the following steps to make sure you're using the jTDS driver. This will speed up the process of reading from and writing to the database, especially when performing bulk transactions like a system-wide reindex or duplicating a large project. Depending on the size of your data set, the impact of the change can vary, with smaller data sets seeing less of a change.

I don't believe the 2015.1 release will address this change with any kind of automated migration. As it stands now, both drivers will work fine aside from the speed differences for larger instances, so if you're happy with your performance there is no need to make the change immediately.


03-17-2015 14:05

We encountered this issue when upgrading from 2014.1 to 2014.2
Instead of deleting database.properties you can change the line:
  • database.url=jdbc\:sqlserver\://<SQL Server Name>\:1433 blah blah blah
  • database.url=jdbc\:jtds\:sqlserver\://<SQL Server Name>\:1433 blah blah blah
This is approach is useful if you don't have the database connection information on-hand!

03-17-2015 03:38

Alexander, we have upgraded from 2014.1 to 2014.2 (on-prem) in December and using a SQL database. If I get your point right, I should carry out the procedure you explained above, right? What kind of performance advantage can I expect? Faster behavior? 

Will there be a correct installation routine in 2015.1 fixing this issue? 2015.1 will be released in the next months, right? Isn't it enough to wait on the new release?

Best regards,