[
https://issues.apache.org/jira/browse/DERBY-2591?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bernt M. Johnsen closed DERBY-2591.
-----------------------------------
> DataDictionaryImpl.getSystemSQLName() may generate duplicates
> -------------------------------------------------------------
>
> Key: DERBY-2591
> URL: https://issues.apache.org/jira/browse/DERBY-2591
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Reporter: Bernt M. Johnsen
> Assigned To: Bernt M. Johnsen
> Fix For: 10.3.0.0
>
> Attachments: DERBY-2591.diff
>
>
> DataDictionaryImpl.getSystemSQLName() may generates names on the form
> SQLYYMMDDHHMMSSmmN where mm is in 10 milliseconds and N is number to avoid
> collisions with 10 milliseconds. The name was probably generated this way to
> fit into the 18 caharcter limit of constraint names in older derby versions.
> However, if a getSystemSQLName() is called 12 hours after a call on the same
> date (e.g at 01:00:00 and 13:00:00), which is unlikely but not very unlikely,
> a duplicate name is generated, since the HH-part is filled by the call
>
> generatedSystemSQLName.append(twoDigits(calendarForLastSystemSQLName.get(Calendar.HOUR)));
> and Calendar.HOUR implementes the pretty stupid idea that there are only 12
> hours. It was definitely Calendar.HOUR_OF_DAY which gives you the hour for a
> 24-hour clock that should have been used.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.