You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@continuum.apache.org by "Matt Kern (JIRA)" <ji...@codehaus.org> on 2008/04/10 18:18:58 UTC

[jira] Commented: (CONTINUUM-1688) Maximum length for name column in object ChangeFile is too small

    [ http://jira.codehaus.org/browse/CONTINUUM-1688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=130386#action_130386 ] 

Matt Kern commented on CONTINUUM-1688:
--------------------------------------

You might consider setting it to either 8192+18, 131072+18 or unbounded, assuming the database supports this.   The error in question is caused by a string "PATH, (from PATH:REV)".  Linux PATH_MAX is 4096 and  Windows Unicode paths can be up to 32k characters.  I can see legitimate, non-pathological cases tripping up over any other arbitrary limit.

> Maximum length for name column in object ChangeFile is too small
> ----------------------------------------------------------------
>
>                 Key: CONTINUUM-1688
>                 URL: http://jira.codehaus.org/browse/CONTINUUM-1688
>             Project: Continuum
>          Issue Type: Bug
>          Components: Database
>    Affects Versions: 1.1-beta-2
>            Reporter: Olivier Lamy
>            Assignee: Olivier Lamy
>             Fix For: 1.2
>
>
> This bug is similar to a bunch of other bugs like this, it seems the data model has been consistently designed with too few characters in the name field. This particular bugs occurs when Continuum tries to store the test results (SuiteResult in the model). Using -Dmaven.test.skip=true made the problem disappear.
> I've attached a very simple fix for the problem, however, I note that TestCaseFailure has no stash.maxSize set, and as soon as my Test breaks it will probably crash with the same problem.
> Here's the stack trace:
> 863290102 [Thread-6] ERROR org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor:build-project  - Error executing task
> edu.emory.mathcs.backport.java.util.concurrent.ExecutionException: javax.jdo.JDOFatalUserException: Attempt to store value "/new-web/newweb-erp-integration/trunk/src/main/ja
> va/com/pointcarbon/erp/agresso/domain/agressostatus/AcuhistrStatus.java (from /new-web/newweb-erp-integration/trunk/src/main/java/com/pointcarbon/erp/agresso/domain/agressos
> tatus/AcuhistrStatusEnum.java:4297)" in column ""NAME"" that has maximum length of 255. Please correct your data!
>         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.getResult(FutureTask.java:299)
>         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.get(FutureTask.java:118)
>         at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable.waitForTask(ThreadedTaskQueueExecutor.java:159)
>         at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable.run(ThreadedTaskQueueExecutor.java:127)
> Caused by: javax.jdo.JDOFatalUserException: Attempt to store value "/new-web/newweb-erp-integration/trunk/src/main/java/com/pointcarbon/erp/agresso/domain/agressostatus/Acuh
> istrStatus.java (from /new-web/newweb-erp-integration/trunk/src/main/java/com/pointcarbon/erp/agresso/domain/agressostatus/AcuhistrStatusEnum.java:4297)" in column ""NAME""
> that has maximum length of 255. Please correct your data!
>         at org.jpox.store.rdbms.mapping.CharRDBMSMapping.setString(CharRDBMSMapping.java:214)
>         at org.jpox.store.mapping.SingleFieldMapping.setString(SingleFieldMapping.java:203)
>         at org.jpox.store.rdbms.fieldmanager.ParameterSetter.storeStringField(ParameterSetter.java:122)
>         at org.jpox.state.StateManagerImpl.providedStringField(StateManagerImpl.java:2757)
>         at org.apache.maven.continuum.model.scm.ChangeFile.jdoProvideField(ChangeFile.java)
>         at org.apache.maven.continuum.model.scm.ChangeFile.jdoProvideFields(ChangeFile.java)
>         at org.jpox.state.StateManagerImpl.provideFields(StateManagerImpl.java:3115)
>         at org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:252)
>         at org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2519)
>         at org.jpox.store.StoreManager.insert(StoreManager.java:920)
>         at org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3667)
>         at org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3646)
>         at org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1198)
>         at org.jpox.AbstractPersistenceManager.makePersistentInternal(AbstractPersistenceManager.java:1243)
>         at org.jpox.store.rdbms.scostore.FKListStore.validateElementForWriting(FKListStore.java:1231)
>         at org.jpox.store.rdbms.scostore.FKListStore.internalAdd(FKListStore.java:772)
>         at org.jpox.store.rdbms.scostore.AbstractListStore.addAll(AbstractListStore.java:386)
>         at org.jpox.store.mapping.CollectionMapping.postInsert(CollectionMapping.java:209)
>         at org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:464)
>         at org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2519)
>         at org.jpox.store.StoreManager.insert(StoreManager.java:920)
>         at org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3667)
>         at org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3646)
>         at org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1198)
>         at org.jpox.AbstractPersistenceManager.makePersistentInternal(AbstractPersistenceManager.java:1243)
>         at org.jpox.store.rdbms.scostore.FKListStore.validateElementForWriting(FKListStore.java:1231)
>         at org.jpox.store.rdbms.scostore.FKListStore.internalAdd(FKListStore.java:772)
>         at org.jpox.store.rdbms.scostore.AbstractListStore.addAll(AbstractListStore.java:386)
>         at org.jpox.store.mapping.CollectionMapping.postInsert(CollectionMapping.java:209)
>         at org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:464)
>         at org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2519)
>         at org.jpox.store.StoreManager.insert(StoreManager.java:920)
>         at org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3667)
>         at org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3646)
>         at org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1198)
>         at org.jpox.AbstractPersistenceManager.makePersistentInternal(AbstractPersistenceManager.java:1243)
>         at org.jpox.store.mapping.PersistenceCapableMapping.setObject(PersistenceCapableMapping.java:450)
>         at org.jpox.store.rdbms.fieldmanager.ParameterSetter.storeObjectField(ParameterSetter.java:144)
>         at org.jpox.state.StateManagerImpl.providedObjectField(StateManagerImpl.java:2771)
>         at org.apache.maven.continuum.model.project.BuildResult.jdoProvideField(BuildResult.java)
>         at org.apache.maven.continuum.model.project.BuildResult.jdoProvideFields(BuildResult.java)
>         at org.jpox.state.StateManagerImpl.provideFields(StateManagerImpl.java:3115)
>         at org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:252)
>         at org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2519)
>         at org.jpox.store.StoreManager.insert(StoreManager.java:920)
>         at org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3667)
>         at org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3646)
>         at org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1198)
>         at org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1261)
>         at org.codehaus.plexus.jdo.PlexusJdoUtils.makePersistent(PlexusJdoUtils.java:175)
>         at org.apache.maven.continuum.store.JdoContinuumStore.makePersistent(JdoContinuumStore.java:763)
>         at org.apache.maven.continuum.store.JdoContinuumStore.addBuildResult(JdoContinuumStore.java:436)
>         at org.apache.maven.continuum.buildcontroller.DefaultBuildController.makeAndStoreBuildResult(DefaultBuildController.java:686)
>         at org.apache.maven.continuum.buildcontroller.DefaultBuildController.updateBuildResult(DefaultBuildController.java:230)
>         at org.apache.maven.continuum.buildcontroller.DefaultBuildController.performAction(DefaultBuildController.java:444)
>         at org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(DefaultBuildController.java:145)
>         at org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.executeTask(BuildProjectTaskExecutor.java:50)
>         at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable$1.run(ThreadedTaskQueueExecutor.java:116)
>         at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
>         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
>         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:595)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira