Hi there,
SDDM Version: Version 23.1.0.087 Build: 087.0806
Windows 10
I was trying to get to grips with using the Git Version Control system from SQL Developer Data Modeler, so followed the text in the help system under “Using Versioning” and “Using Git with DataModeler”. At the point of “Changing the design - branching and merging” I ran into problems and eventually found in the External Log (Menu→View→External Log), the error message:
2024-08-15 15:01:12 SEVERE - java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 1
As I have already stated, I was following the tutorial as closely as possible, but I will describe what I did here:
- Create a remote Git repository on the local file system using the “GIT INIT ”
- Use the SDDM Git clone (Menu→Team→Git-Clone) command to create a local repository directory.
- Create a new design with three entities called ENT1, ENT2, ENT3 each with one attribute.
- Save the design to the local repository directory, and allow it to be brought under Git control. This creates branch “Master” in the local repository.
- Close the design.
- Open the “Versions” window (Menu→Team→Versions)
- Open the “Files” window (Menu-View-Files) and navigate to the local repository on the file system, so that the local repository will be found, and displayed in the Versions window.
- In the Version window, navigate to the Master branch in the local repository (Git→local-repo→Branches→Local)
- Right click on the Master branch and click “Create Branch…”. Call the new branch “demo”, and click Ok. The demo branch now appears in the Version window.
- Right click on the demo branch, and click “Check Out…” followed by “OK”.
- Re-open the design. The current branch “demo” is displayed next to the design name in the Browser window.
- Save the design, and commit the change to the local repository (Menu→Team→Git-Commit All…)
- Checkout the Master branch, from the Versions window, as described for the demo branch in 10 above.
- Re-open the design, and add a new attribute to entity ENT2 (i.e. the entity that has been deleted in branch demo, so will cause a merge conflict).
- Save and commit the design to the local repository.
- Close the design.
It is at this point that we try to merge branch demo into branch Master:
- Our current branch is Master, so right click on branch demo in the Versions window, and click “Merge…”, followed by Ok.
- Re-open the design. A message saying “The design contains unresolved merge conflicts. Do you wish to resolve them?” is displayed.
- Click Yes. The “Merge Conflicts” window is displayed with ENT2 displayed with a status of Modified/Deleted. Click in the “Action” column where it says “Resolve later” and select “Edit conflict”. Take a note of the current time when you do this action.
- At this point nothing seems to happen, but I would expect the “XML Comparator” mentioned in the Help system to be displayed.
- Click Cancel, and the view the External Log (Menu→View→External Log), and scroll to the bottom of the window"
- At the bottom the SEVERE error message is displayed, with the timestamp noted above in 3.
I have tried the same scenario using Subversion as the versioning system and got a similar result, namely a null pointer exception with a traceback history in the Subversion Console log.
Hope this is detailed enough to reproduce the problem, but if anymore info is required, I'd be more that happy to provide it.
Regards.
John.