Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-866

DBDictionary.maxTableNameLength is not checked when using SynchronizeMappings


    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.2.0, 1.3.0, 2.0.0-M2
    • Fix Version/s: 1.3.0, 2.0.0-M2
    • Component/s: None
    • Labels:


      Per Alan Raison's post to the dev mailing list there appears to be a problem with trimming table names when SynchronizeMappings is used.

      Here's the email that started the conversation :
      I have been writing a DBDictionary for the Ingres database and have been running the test cases. Ingres supports 32 character table names, and this has been set in the dictionary. However some tests have hit an error whereby the table name is too long for the database.

      I notice in the DBDictionary class there is a method called "getValidTableName" but this clearly isn't being used since it is trying to use a table name which is too long. Other databases (such as Oracle) also have quite a short maximum length for table names, so this problem must be able to overcome, but I can't see anything in other Dictionary classes.

      Is there anything special I should be doing to run the tests? I am currently running through mvn test.

      My draft DBDictionary class is attached along with a sample surefire report (with my username and password removed!)

      The full thread can be seen here : http://n2.nabble.com/OpenJPA-1.2.0-Test-Cases---Table-Name-too-Long-td2197132.html


          Issue Links



              • Assignee:
                mcconne Tim McConnell
                alan_raison Alan Raison
              • Votes:
                0 Vote for this issue
                0 Start watching this issue


                • Created: