Jump to content

How to change default repository location?


Ross

Recommended Posts

I installed Plastic SCM for evaluation on a Windows workstation. The default repository database is somewhere and is using the Microsoft SQL Server (CE) Embedded. How to I change the location of the repository?

 

I previously tried using the database migration tool to migrate from the SQL Server CE to SQLite, and specified the desired path, but the client was still looking for the SQL Server CE database.

Link to comment
Share on other sites

Hello,

 

If you go to: "C:\Program Files\PlasticSCM4\server" you will see server folder. This folder contains repository files (if you are using SQL Server CE, repos will be something like "repo_1.sdf"). Repositories are always located in server folder. 

If you want to switch to SQL Lite, overwrite db.conf file (same folder) with this information:  db.conf define database backend.

 

<?xml version="1.0"?>
<DbConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <ProviderName>sqlite</ProviderName>
  <ConnectionString>Data Source={0};Synchronous=Off;Pooling=true;</ConnectionString>
  <DatabasePath />
  <DatabaseSuffix />
  <DatabasePrefix />
</DbConfig>

 

 

Best regards,

Carlos
 

Link to comment
Share on other sites

That makes sense. But I get errors after the move.

 

The db.conf file contains:

<DbConfig>  
<ProviderName>sqlserverce</ProviderName>  
<ConnectionString>DataSource={0};Persist Security Info=False;Max Database 
Size=4090;Max Buffer Size = 4096;Password=;</ConnectionString>  
<DatabaseSuffix></DatabaseSuffix>  
<DatabasePath>S:\Biomed\HLGLAB\SrcCodeRepo\I2I\dev</DatabasePath></DbConfig>

And server log file contains the following error:

 

2013-02-06 13:02:31,011 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Using certificate file ssl-certificate.pfx
2013-02-06 13:02:33,571 (null) NT AUTHORITY\SYSTEM at (null) ERROR DataManager - Error trying to create the database S:\Biomed\HLGLAB\SrcCodeRepo\I2I\dev\repositories.plastic.sdf: The path is not valid. Check the directory for the database. [ Path = S:\Biomed\HLGLAB\SrcCodeRepo\I2I\dev\repositories.plastic.sdf ]
2013-02-06 13:02:33,631 (null) NT AUTHORITY\SYSTEM at (null) ERROR Codice.CM.Server.RepositoryHandler - The database {0} can't be created. Check the server log (plastic.server.log). Error: {1}    at Codice.CM.Data.BaseDataManager.ExecuteCreateDatabaseScript(String databaseName, String contentResourceName)
   at Codice.CM.Data.BaseDataManager.CreateRepositoriesData()
   at Codice.CM.Server.RepositoryHandler.InitService()

 

Yet, on the server I can browse to the path wihout any problems. I have attached a screenshot of the new location of the database files. (I copied/pasted the path into the db.conf file so there is no typographical error.) I don't see what I am missing.

 

In installed PlasticSCM using all of the defaults except for having specified to use Active Drirectory integration for user authentication mode.

 

Addendum: S: is a network drive. I think that this is causing the problem.

 

Regards,

Ross

post-3917-0-73119900-1360174445_thumb.png

Link to comment
Share on other sites

I´ve been investigating the problem more, and it seems that SQLServer CE has problems to work on shared networks (http://connect.microsoft.com/SQLServer/feedback/details/646333/sql-ce-4-0-no-longer-supports-opening-files-on-a-network-share).

 

With SQLite you wouldn´t have problems to change the location of your repositories(same .xml I posted but adding DatabasePath). Or maybe you prefer/need SQLExpress or MySQL. The connection should work with all of them but SQLServer CE.

 

Regards,

Carlos

Link to comment
Share on other sites

Hi Ross,

 

I´ve been testing in the office with SQLite with remote drive and worked fine. Let me know if you decide to install another database server and continue having problems or we can try to check what´s happening with SQLite configuration. :)

 

Regards,

Carlos

Link to comment
Share on other sites

  • 3 years later...
Hello,In this case, you have to add "DatabasePath" statement.  <DatabasePath>G:\repo</DatabasePath>

But remember to add repositories(repo_1.sdf) and also "repositories.plastic.sdf" file.

 

Regards,

Carlos

 

 

Hi there!

I followed all the steps mentioned above and am currently unable to access any of my repositories while getting this error on the client end:

"SQL logic error or missing database

no such table: seid"

And this is what the log says:

 
2016-06-07 12:24:56,814 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at JONNE-PC ERROR Operations - OnError catching exception [sql logic error or missing database
no such table: seid] - Plastic server version: 5.4.16.684
2016-06-07 12:24:56,814  NT AUTHORITY\SYSTEM at  ERROR ExceptionTracerSink - Dumping in-transit exception:There has been an unexpected error "SQL logic error or missing database
no such table: seid". For more information check the server log.
 
2016-06-07 12:24:56,814  NT AUTHORITY\SYSTEM at  INFO  ChannelCall - recb:   523|rect:  0|sentb:  2960|sendt:  0|prt:      16|th:    9|dest:   0|mt:      16|sert:   0|zip:   0|   192.168.0.127|GetRepositoryList
2016-06-07 12:25:08,147 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC INFO  Operations - Get repository info default
2016-06-07 12:25:08,147 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR CmCommand - Error ExecuteReader. SQL [sELECT * FROM seid WHERE sactive = 'T' AND sgroup = 'F'] - Exception: SQL logic error or missing database
no such table: seid
2016-06-07 12:25:08,163 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR DataConnection - Error in ExecuteReader. Query SELECT * FROM seid WHERE sactive = 'T' AND sgroup = 'F'
SQL logic error or missing database
no such table: seid
   at Codice.CM.Data.CmCommand.ExecuteReader()
   at Codice.CM.Data.CmDataReader..ctor(CmConnection A_0, CmCommand A_1, DataConnection A_2)
   at Codice.CM.Data.DataConnection.ExecuteReader(CmConnection conn, CmCommand command)
 
2016-06-07 12:25:08,163 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR Operations - OnError catching exception [sql logic error or missing database
no such table: seid] - Plastic server version: 5.4.16.684
2016-06-07 12:25:08,163  NT AUTHORITY\SYSTEM at  ERROR ExceptionTracerSink - Dumping in-transit exception:There has been an unexpected error "SQL logic error or missing database
no such table: seid". For more information check the server log.
 
2016-06-07 12:25:08,163  NT AUTHORITY\SYSTEM at  INFO  ChannelCall - recb:   762|rect:  0|sentb:  3027|sendt:  0|prt:      15|th:   10|dest:   0|mt:      15|sert:   0|zip:   0|   192.168.0.119|GetRepositoryInfo
2016-06-07 12:25:24,038 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Connection  113 from 192.168.0.127 closed
2016-06-07 12:25:27,028 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Connection  114 from 192.168.0.127 closed
2016-06-07 12:25:38,891 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Connection  115 from 192.168.0.119 closed
2016-06-07 12:27:09,766  NT AUTHORITY\SYSTEM at  INFO  Operations - Get working mode
2016-06-07 12:27:09,766  NT AUTHORITY\SYSTEM at  INFO  ChannelCall - recb:   483|rect:  0|sentb:   294|sendt:  0|prt:       0|th:    8|dest:   0|mt:       0|sert:   0|zip:   0|   192.168.0.119|GetWorkingMode
2016-06-07 12:27:17,969  NT AUTHORITY\SYSTEM at  INFO  Operations - Get working mode
2016-06-07 12:27:17,969  NT AUTHORITY\SYSTEM at  INFO  ChannelCall - recb:   483|rect:  0|sentb:   294|sendt:  0|prt:       0|th:   12|dest:   0|mt:       0|sert:   0|zip:   0|   192.168.0.119|GetWorkingMode
2016-06-07 12:27:19,343 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - conn  117. Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.
2016-06-07 12:27:21,934 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Connection  116 from 192.168.0.119 closed
2016-06-07 12:28:36,334 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC INFO  Operations - Retrieve repository list
2016-06-07 12:28:36,334 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR CmCommand - Error ExecuteReader. SQL [sELECT * FROM seid WHERE sactive = 'T' AND sgroup = 'F'] - Exception: SQL logic error or missing database
no such table: seid
2016-06-07 12:28:36,334 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR DataConnection - Error in ExecuteReader. Query SELECT * FROM seid WHERE sactive = 'T' AND sgroup = 'F'
SQL logic error or missing database
no such table: seid
   at Codice.CM.Data.CmCommand.ExecuteReader()
   at Codice.CM.Data.CmDataReader..ctor(CmConnection A_0, CmCommand A_1, DataConnection A_2)
   at Codice.CM.Data.DataConnection.ExecuteReader(CmConnection conn, CmCommand command)
 
2016-06-07 12:28:36,334 00000000-0000-0000-0000-000000000000 NT AUTHORITY\SYSTEM at DFPLASTIC-PC ERROR Operations - OnError catching exception [sql logic error or missing database
no such table: seid] - Plastic server version: 5.4.16.684
2016-06-07 12:28:36,334  NT AUTHORITY\SYSTEM at  ERROR ExceptionTracerSink - Dumping in-transit exception:There has been an unexpected error "SQL logic error or missing database
no such table: seid". For more information check the server log.
 
2016-06-07 12:28:36,334  NT AUTHORITY\SYSTEM at  INFO  ChannelCall - recb:   535|rect:  0|sentb:  2972|sendt:  0|prt:       0|th:    9|dest:   0|mt:       0|sert:   0|zip:   0|   192.168.0.119|GetRepositoryList
2016-06-07 12:28:36,366 (null) NT AUTHORITY\SYSTEM at (null) INFO  Channel - Connection  118 from 192.168.0.119 closed

I've kept copies of all the repositories in both the to and from folders. Reverting back to the previous db.conf file did not help to resolve the issue either

pls advise.

Link to comment
Share on other sites

  • 2 weeks later...

Hi Carlos, 

Thanks for the reply. Well basically, I was trying to move my repository files to another directory as the default directory was starting to fill up. Sorry for the late reply, but I managed to resolve the issue. Turns out all that needed to be done was to change the drivename in <DatabasePath> to lowercase and then restart the service.

Still, thanks for the help!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...