Uploaded image for project: 'Spring Batch'
  1. Spring Batch
  2. BATCH-2699

Derby generated files should be under build directory

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Complete
    • Affects Version/s: 4.0.0
    • Fix Version/s: 4.1.0, 4.0.2, 3.0.10, 4.1.0.M1
    • Component/s: Build
    • Labels:
      None

      Description

      When building the project, the derby generated files are under the root directory of the spring-batch-infrastructure module:

      $>cd spring-batch-infrastructure
      $>tree -L 1
      .
      ├── build
      ├── derby-home
      ├── derby.log
      ├── derbydb
      ├── out
      └── src
      
      5 directories, 1 file
      

      These files are not cleaned up by ./gradlew clean command. These files are better placed under the build directory.

      The issue with this is when switching from branch to branch (let's say from master to 3.0.x), issuing a ./gradlew clean build causes the build to fail:

      $> git checkout master
      $> ./gradlew clean build
      ...
      BUILD SUCCESSFUL
      
      Total time: 6 mins 55.565 secs
      $>git checkout 3.0.x
      Switched to branch '3.0.x'
      Your branch is up to date with 'origin/3.0.x'.
      $>./gradlew clean build
      ...
      :spring-batch-infrastructure:test
      
      org.springframework.batch.support.DatabaseTypeIntegrationTests > testDerby FAILED
          org.springframework.jdbc.support.MetaDataAccessException at DatabaseTypeIntegrationTests.java:43
              Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException at DatabaseTypeIntegrationTests.java:43
                  Caused by: org.apache.commons.dbcp.SQLNestedException at DatabaseTypeIntegrationTests.java:43
                      Caused by: java.sql.SQLException at DatabaseTypeIntegrationTests.java:43
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at DatabaseTypeIntegrationTests.java:43
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at DatabaseTypeIntegrationTests.java:43
                                  Caused by: org.apache.derby.iapi.error.StandardException at DatabaseTypeIntegrationTests.java:43
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testRollbackOnFirstChunkAndRestart FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testRestartOnSecondPage FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testInvalidRestore FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testMultipleRestarts FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testNormalProcessing FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testRestoreFromEmptyData FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testRestart FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testRollbackAndRestart FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderIntegrationTests > testTransacted FAILED
          java.lang.IllegalStateException
              Caused by: org.springframework.beans.factory.BeanCreationException
                  Caused by: org.springframework.transaction.CannotCreateTransactionException
                      Caused by: java.sql.SQLException
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                              Caused by: org.apache.derby.impl.jdbc.EmbedSQLException
                                  Caused by: org.apache.derby.iapi.error.StandardException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testRestartWithDriverSupportsAbsolute FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testReadBeforeOpen FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testReadToExhaustion FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testResetAndRestart FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testRestart FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testReopen FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testEmptyInput FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      org.springframework.batch.item.database.StoredProcedureItemReaderCommonTests > testRead FAILED
          org.springframework.beans.factory.BeanCreationException at StoredProcedureItemReaderCommonTests.java:49
              Caused by: org.springframework.transaction.CannotCreateTransactionException at StoredProcedureItemReaderCommonTests.java:49
                  Caused by: java.sql.SQLException at StoredProcedureItemReaderCommonTests.java:49
                      Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                          Caused by: org.apache.derby.impl.jdbc.EmbedSQLException at StoredProcedureItemReaderCommonTests.java:49
                              Caused by: org.apache.derby.iapi.error.StandardException at StoredProcedureItemReaderCommonTests.java:49
          java.lang.NullPointerException
      
      1306 tests completed, 18 failed, 1 skipped
      :spring-batch-infrastructure:test FAILED
      
      FAILURE: Build failed with an exception.
      
      * What went wrong:
      Execution failed for task ':spring-batch-infrastructure:test'.
      > There were failing tests. See the report at: file:///projects/spring-batch/spring-batch-infrastructure/build/reports/tests/index.html
      
      * Try:
      Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
      
      BUILD FAILED
      
      Total time: 8 mins 12.304 secs
      $ 
      
      

      The build fails due to the following error:

      org.springframework.jdbc.support.MetaDataAccessException: Could not get Connection for extracting meta data; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Failed to start database 'derby-home/test' with class loader sun.misc.Launcher$AppClassLoader@18b4aac2, see the next exception for details.)
      
      	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:293)
      	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:320)
      	at org.springframework.batch.support.DatabaseType.fromMetaData(DatabaseType.java:98)
      	at org.springframework.batch.support.DatabaseTypeIntegrationTests.testDerby(DatabaseTypeIntegrationTests.java:43)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
      	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
      	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
      	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
      	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
      	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
      	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
      	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
      	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
      	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
      	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
      	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
      	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
      	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
      	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
      	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
      	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
      Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Failed to start database 'derby-home/test' with class loader sun.misc.Launcher$AppClassLoader@18b4aac2, see the next exception for details.)
      	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
      	at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:280)
      	... 25 more
      Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Failed to start database 'derby-home/test' with class loader sun.misc.Launcher$AppClassLoader@18b4aac2, see the next exception for details.)
      	at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
      	at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
      	at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
      	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
      	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
      	... 26 more
      Caused by: java.sql.SQLException: Failed to start database 'derby-home/test' with class loader sun.misc.Launcher$AppClassLoader@18b4aac2, see the next exception for details.
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
      	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
      	at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
      	at org.apache.derby.impl.jdbc.EmbedConnection.bootDatabase(Unknown Source)
      	at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
      	at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown Source)
      	at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown Source)
      	at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
      	at org.apache.derby.jdbc.Driver20.connect(Unknown Source)
      	at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
      	at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
      	at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
      	at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556)
      	at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545)
      	... 30 more
      Caused by: java.sql.SQLException: Failed to start database 'derby-home/test' with class loader sun.misc.Launcher$AppClassLoader@18b4aac2, see the next exception for details.
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
      	... 44 more
      Caused by: java.sql.SQLException: Database at /projects/spring-batch/spring-batch-infrastructure/derby-home/test has an incompatible format with the current version of the software.  The database was created by or upgraded by version 10.14.
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
      	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
      	at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
      	... 41 more
      Caused by: ERROR XSLAN: Database at /projects/spring-batch/spring-batch-infrastructure/derby-home/test has an incompatible format with the current version of the software.  The database was created by or upgraded by version 10.14.
      	at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
      	at org.apache.derby.impl.store.raw.log.LogToFile.readControlFile(Unknown Source)
      	at org.apache.derby.impl.store.raw.log.LogToFile.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
      	at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown Source)
      	at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.bootLogFactory(Unknown Source)
      	at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.setRawStoreFactory(Unknown Source)
      	at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
      	at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown Source)
      	at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
      	at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown Source)
      	at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
      	at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
      	at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.startProviderService(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.findProviderAndStartService(Unknown Source)
      	at org.apache.derby.impl.services.monitor.BaseMonitor.startPersistentService(Unknown Source)
      	at org.apache.derby.iapi.services.monitor.Monitor.startPersistentService(Unknown Source)
      	... 41 more
      

      Removing derby generated files by hand fixes the issue. This can be done automatically by the clean task of gradle if these files are moved under build directory.

        Attachments

          Activity

            People

            • Assignee:
              mbenhassine Mahmoud Ben Hassine
              Reporter:
              mbenhassine Mahmoud Ben Hassine
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: