Jump to content

Creating Subsubmodules fails


JanReimer

Recommended Posts

Hi,

 

I've got some trouble with testing the SubModules Feature. Suppose following commands:

cm mkrep MyRepo
cm mkrep MyRepo/Test/Bla
cm lrep 

This shows MyRepo and MyRepo/Test but not MyRepo/Test/Bla

 

cm mkrep MyRepo/Test/Bla gives an error: already exists.

cm rmrep MyRepo/Test/Bla deletes MyRepo/Test (!!)

cm mkrep MyRepo/Test gives an error: There has been an unexpected error "Table definition has changed, please retry transaction". For more information check the server log. Repeating the command works.

 

 

Theses are tests due to a bigger Problem I had before. I was fast-importing a git fast-export file into a SubSubModule:

cm mkrep MyImport
cm fi MyImport/Plugins/Api Api.fe
   Repository MyImport/Plugins/Api does not exist. It will be created
   [importing]

Further repo-commands lead to error of this kind:

There has been an unexpected error "Table 'rep_11.mod6_seid' doesn't exist".

 

The only chance was to delete the whole Repo MyImport and start from scratch.

 

I think there is something wrong with the submodule handling.

 

btw: cm checkdatabase reposerver is timing out.

Is there a way to clean up databases in terms of finally deleting deleted repositories? I have the feeling that deleted repos are kept within the database (mysql).

 

This is my config:

Server: Windows Server 2008 R2

Database: MySQL (XAMPP 5.6.8)

Plastic SCM 5.4.16.663

Client: Windows 7 x64 Ultimate

Everything running within VMWare due to evaluation.

 

Best regards

Jan

 

 

Link to comment
Share on other sites

Hello Jan!

 

Only first level submodules are supported. So you are right, subsubmodules are not supported.

 

This will work:

cm mkrep MyRepo
cm mkrep MyRepo/Test1
cm mkrep MyRepo/Test2

This wont:

cm mkrep MyRepo/Test2/SubRepo1

We'll consider improving the error message explaining it better, sorry for the inconveniences.

Link to comment
Share on other sites

Alright. Thanks for the feedback.

 

I think the handling should be more failsafe here. The client shouldn't pass a MyRepo/Test2/SubRepo1 request to the server, or the server should deny it, at all. The current handling leads to undefined or unexpected behavior. E.g.

cm rmrep MyRepo/Test2/SubRepo1 

deletes MyRepo/Test2.

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...