Recently, we started noticing data reservations getting stuck in a created state, and email notification not going out for those reservations. This seems to be sporadic. Currently we are running TDMWeb-4.9.437.0.
We noticed this error in the TDMDataReservation.log:
java.io.IOException: The filename, directory name, or volume label syntax is incorrect
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2063)
at java.io.File.createTempFile(File.java:2109)
at com.ca.tdm.datareservation.util.DataReservationMailUtil.sendMailPerReservation(DataReservationMailUtil.java:121)
at com.ca.tdm.datareservation.util.DataReservationNotificationManager.SendNotification(DataReservationNotificationManager.java:384)
at com.ca.tdm.datareservation.util.DataReservationNotificationManager.lambda$sendNotificationAsync$0(DataReservationNotificationManager.java:135)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Further investigation shows that records are getting into the OrientDB reservation table, but not into the gtrep repository table for reservations. So they are orphaned in OrientDB.
TDM Portal 4.9.x and 4.10.67 or older.
This is caused by having a double colon in the name, or some other invalid character in a similar field.
For example: XXXX3543_Portfolio_XXXX_02-27 1:46:57PM
By default, the reservation names take this format when including dates.
This issue has been addressed in TDMWeb-4.10.68.0 or higher, is the recommendation is to upgrade to the latest 4.10 or 4.11 release.
Due to architecture changes and schema changes in 4.11, you must upgrade to 4.10 before jumping to 4.11.
The latest TDM patches are available for download at the Test Data Manager (TDM) Support Patches page.