[ 
http://issues.apache.org/jira/browse/DERBY-1280?page=comments#action_12377969 ] 

Knut Anders Hatlen commented on DERBY-1280:
-------------------------------------------

Hi Sunitha,

I haven't run your test program, but I ran into this problem myself a couple of 
months ago. I don't remember the details, but it seemed to me that IBM's JVM 
1.5 would truncate the position argument to RandomAccessFile.seek(long) to an 
int so that the position could be interpreted as negative when it exceeded 
Integer.MAX_VALUE.

See my comments to DERBY-733 and in this mail thread 
http://www.nabble.com/-jira-Created%3A-%28DERBY-758%29-CachedPage.readPage%28%29-can-loop-forever-on-insane-builds-if-the-read-from-the-container-keep-failing-with-IO-Exceptions.-t738216.html

> Derby throws "ERROR XSDG1: Page could not be written to disk, please check if 
> disk is full" when there is 20+ gigs of free space
> --------------------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-1280
>          URL: http://issues.apache.org/jira/browse/DERBY-1280
>      Project: Derby
>         Type: Bug

>   Components: Store
>     Versions: 10.1.2.1
>  Environment:  Environment: IBM ThinkCentre, pentium 4, 1 gig memory, 40 gigs 
> of disk
> Redhat Linux rel 3.
> IBM Java 1.5
>     Reporter: Justin Hill
>  Attachments: Limits.java
>
> ------------------ Java Information ------------------
> Java Version:    1.5.0
> Java Vendor:     IBM Corporation
> Java home:       /opt/ibm/java2-i386-50/jre
> Java classpath:  
> /home/jhills/JazzDev0411/org.apache.derby.core/derby.jar:/home/jhills/JazzDev0411/org.apache.derby.core/derbyclient.jar:/home/jhills/JazzDev0411/org.apache.derby.core/derbytools.jar:/home/jhills/JazzDev0411/org.apache.derby.core/derbynet.jar
> OS name:         Linux
> OS architecture: x86
> OS version:      2.4.21-37.EL
> Java user name:  jhills
> Java user home:  /home/jhills
> Java user dir:   /home/jhills/JazzDev0411/org.apache.derby.core
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.5
> --------- Derby Information --------
> JRE - JDBC: J2SE 5.0 - JDBC 3.0
> [/home/jhills/JazzDev0411/org.apache.derby.core/derby.jar] 10.1.2.1 - (330608)
> [/home/jhills/JazzDev0411/org.apache.derby.core/derbyclient.jar] 10.1.2.1 - 
> (330608)
> [/home/jhills/JazzDev0411/org.apache.derby.core/derbytools.jar] 10.1.2.1 - 
> (330608)
> [/home/jhills/JazzDev0411/org.apache.derby.core/derbynet.jar] 10.1.2.1 - 
> (330608)
> ------------------------------------------------------
> ----------------- Locale Information -----------------
> ------------------------------------------------------
> We are an IBM project that is using Derby and we need a solution or a 
> workaround to this problem.  The Derby error is thrown after about 3 hours of 
> running the application which involves a large number of inserts to the 
> database.   Even though it is not easy to provide a way to reproduce the 
> error , we can easily reproduce it and are we are willing to work with anyone 
> to assist in finding a solution to this problem.  
>  This issue seems to be related to a previously reported issue Derby-151.  We 
> are running with  autocommit off.  It appears that the XSDG1 error is in 
> response to a java.io.IOException being thrown by the native method "length" 
> in java.io.RandomAccessFile.    It  always seems to happen while trying to 
> write page #65536 to disk.
> Below is the derby.log file. 
> ----------------------------------------------------------------
> 2006-04-28 14:07:03.389 GMT:
>  Booting Derby version The Apache Software Foundation - Apache Derby - 
> 10.1.2.1 - (330608): instance c013800d-010a-e0d2-ba43-00000016c308
> on database directory /home/jhills/magnolia-runtime/teamRepositoryDB 
> Database Class Loader started - derby.database.classpath=''
> 2006-04-28 17:26:22.961 GMT Thread[Worker-1,5,main] (XID = 1707467), 
> (SESSIONID = 0), (DATABASE = /home/jhills/magnolia-runtime/teamRepositoryDB), 
> (DRDAID = null), Cleanup action starting
> 2006-04-28 17:26:22.961 GMT Thread[Worker-1,5,main] (XID = 1707467), 
> (SESSIONID = 0), (DATABASE = /home/jhills/magnolia-runtime/teamRepositoryDB), 
> (DRDAID = null), Failed Statement is: insert into core.content_storage values 
> (?, ?, ?, ?, ?, ?)
> ERROR XSDG1: Page Page(65536,Container(0, 17488)) could not be written to 
> disk, please check if disk is full.
>                at 
> org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.CachedPage.writePage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.CachedPage.createIdentity(Unknown Source)
>                at 
> org.apache.derby.impl.services.cache.CachedItem.takeOnIdentity(Unknown Source)
>                at org.apache.derby.impl.services.cache.Clock.addEntry(Unknown 
> Source)
>                at org.apache.derby.impl.services.cache.Clock.create(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.FileContainer.initPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.FileContainer.newPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.BaseContainer.addPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.StoredPage.getNewOverflowPage(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insertLongColumn(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insertAllowOverflow(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insert(Unknown Source)
>                at 
> org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocation(Unknown
>  Source)
>                at 
> org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
>                at 
> org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown 
> Source)
>                at 
> org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
>                at 
> org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown 
> Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown 
> Source)
>                at 
> com.ibm.team.core.repository.db.jdbcwrappers.stat.PreparedStatementStatWrapper.executeUpdate(PreparedStatementStatWrapper.java:63)
>                at 
> com.ibm.team.core.repository.db.jdbcwrappers.leak.PreparedStatementLeakWrapper.executeUpdate(PreparedStatementLeakWrapper.java:63)
>                at 
> com.ibm.team.core.repository.db.filestorage.ContentStorage.saveContent(ContentStorage.java:160)
>                at 
> com.ibm.team.core.repository.db.filestorage.ContentStorage.saveContent(ContentStorage.java:172)
>                at 
> com.ibm.team.internal.repository.RdbRepositoryDataMediator.saveContent(RdbRepositoryDataMediator.java:1257)
>                at 
> com.ibm.team.core.repository.content.impl.DefaultContentServiceImpl.internalPersistStoredContent(DefaultContentServiceImpl.java:452)
>                at 
> com.ibm.team.core.repository.content.impl.DefaultContentServiceImpl.internalPersistAndMaybeCompressStoredContent(DefaultContentServiceImpl.java:484)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveContent(BaseItemUtils.java:34)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveAllContent(BaseItemUtils.java:70)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveAllContent(BaseItemUtils.java:49)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalSaveVersionable(ConfigurationServiceInternal.java:2591)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalSaveVersionables(ConfigurationServiceInternal.java:2536)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalCommit(ConfigurationServiceInternal.java:1798)
>                at 
> com.ibm.team.internal.repository.ConfigurationService$22.run(ConfigurationService.java:786)
>                at 
> com.ibm.team.internal.repository.rdb.RepositoryDatabase$Transaction.run(RepositoryDatabase.java:192)
>                at 
> com.ibm.team.internal.repository.rdb.RepositoryDatabase.runInTransaction(RepositoryDatabase.java:129)
>                at 
> com.ibm.team.core.service.utils.AbstractService.runInTransaction(AbstractService.java:253)
>                at 
> com.ibm.team.internal.repository.ConfigurationService.commit(ConfigurationService.java:779)
>                at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>                at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>                at java.lang.reflect.Method.invoke(Method.java:615)
>                at 
> com.ibm.team.internal.core.services.LocalProxiedTeamService.invokeMethodUsingNewMarshaller(LocalProxiedTeamService.java:155)
>                at 
> com.ibm.team.internal.core.services.LocalProxiedTeamService.invoke(LocalProxiedTeamService.java:108)
>                at 
> com.ibm.team.internal.core.services.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:43)
>                at $Proxy1.commit(Unknown Source)
>                at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
>                at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>                at java.lang.reflect.Method.invoke(Method.java:615)
>                at 
> com.ibm.team.internal.core.client.ServiceInterfaceProxy.invoke(ServiceInterfaceProxy.java:50)
>                at $Proxy15.commit(Unknown Source)
>                at 
> com.ibm.team.internal.core.client.configuration.WorkspaceConnection.commit(WorkspaceConnection.java:1737)
>                at 
> com.ibm.team.internal.core.client.configuration.DeprecatedWorkspaceConnection.commit(DeprecatedWorkspaceConnection.java:177)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commit(ChangeSetArchiveImporter.java:430)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commitChangesFromMap(ChangeSetArchiveImporter.java:406)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commitChanges(ChangeSetArchiveImporter.java:278)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.importChangeSetArchive(ChangeSetArchiveImporter.java:190)
>                at 
> com.ibm.team.migration.operations.ImportOperation.doImport(ImportOperation.java:191)
>                at 
> com.ibm.team.migration.ccvs.ui.ChangeArchiveImportWizard$1.run(ChangeArchiveImportWizard.java:148)
>                at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
> ============= begin nested exception, level (1) ===========
> java.io.IOException: Value too large for defined data type
>                at java.io.RandomAccessFile.length(Native Method)
>                at 
> org.apache.derby.impl.store.raw.data.RAFContainer.padFile(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.RAFContainer.writePage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.CachedPage.writePage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.CachedPage.createIdentity(Unknown Source)
>                at 
> org.apache.derby.impl.services.cache.CachedItem.takeOnIdentity(Unknown Source)
>                at org.apache.derby.impl.services.cache.Clock.addEntry(Unknown 
> Source)
>                at org.apache.derby.impl.services.cache.Clock.create(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.FileContainer.initPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.FileContainer.newPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.BaseContainer.addPage(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.StoredPage.getNewOverflowPage(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insertLongColumn(Unknown Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insertAllowOverflow(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.raw.data.BasePage.insert(Unknown Source)
>                at 
> org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown 
> Source)
>                at 
> org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocation(Unknown
>  Source)
>                at 
> org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
>                at 
> org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown 
> Source)
>                at 
> org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
>                at 
> org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown 
> Source)
>                at 
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown 
> Source)
>                at 
> com.ibm.team.core.repository.db.jdbcwrappers.stat.PreparedStatementStatWrapper.executeUpdate(PreparedStatementStatWrapper.java:63)
>                at 
> com.ibm.team.core.repository.db.jdbcwrappers.leak.PreparedStatementLeakWrapper.executeUpdate(PreparedStatementLeakWrapper.java:63)
>                at 
> com.ibm.team.core.repository.db.filestorage.ContentStorage.saveContent(ContentStorage.java:160)
>                at 
> com.ibm.team.core.repository.db.filestorage.ContentStorage.saveContent(ContentStorage.java:172)
>                at 
> com.ibm.team.internal.repository.RdbRepositoryDataMediator.saveContent(RdbRepositoryDataMediator.java:1257)
>                at 
> com.ibm.team.core.repository.content.impl.DefaultContentServiceImpl.internalPersistStoredContent(DefaultContentServiceImpl.java:452)
>                at 
> com.ibm.team.core.repository.content.impl.DefaultContentServiceImpl.internalPersistAndMaybeCompressStoredContent(DefaultContentServiceImpl.java:484)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveContent(BaseItemUtils.java:34)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveAllContent(BaseItemUtils.java:70)
>                at 
> com.ibm.team.internal.repository.BaseItemUtils.saveAllContent(BaseItemUtils.java:49)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalSaveVersionable(ConfigurationServiceInternal.java:2591)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalSaveVersionables(ConfigurationServiceInternal.java:2536)
>                at 
> com.ibm.team.internal.repository.ConfigurationServiceInternal.internalCommit(ConfigurationServiceInternal.java:1798)
>                at 
> com.ibm.team.internal.repository.ConfigurationService$22.run(ConfigurationService.java:786)
>                at 
> com.ibm.team.internal.repository.rdb.RepositoryDatabase$Transaction.run(RepositoryDatabase.java:192)
>                at 
> com.ibm.team.internal.repository.rdb.RepositoryDatabase.runInTransaction(RepositoryDatabase.java:129)
>                at 
> com.ibm.team.core.service.utils.AbstractService.runInTransaction(AbstractService.java:253)
>                at 
> com.ibm.team.internal.repository.ConfigurationService.commit(ConfigurationService.java:779)
>                at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>                at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>                at java.lang.reflect.Method.invoke(Method.java:615)
>                at 
> com.ibm.team.internal.core.services.LocalProxiedTeamService.invokeMethodUsingNewMarshaller(LocalProxiedTeamService.java:155)
>                at 
> com.ibm.team.internal.core.services.LocalProxiedTeamService.invoke(LocalProxiedTeamService.java:108)
>                at 
> com.ibm.team.internal.core.services.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:43)
>                at $Proxy1.commit(Unknown Source)
>                at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
>                at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>                at java.lang.reflect.Method.invoke(Method.java:615)
>                at 
> com.ibm.team.internal.core.client.ServiceInterfaceProxy.invoke(ServiceInterfaceProxy.java:50)
>                at $Proxy15.commit(Unknown Source)
>                at 
> com.ibm.team.internal.core.client.configuration.WorkspaceConnection.commit(WorkspaceConnection.java:1737)
>                at 
> com.ibm.team.internal.core.client.configuration.DeprecatedWorkspaceConnection.commit(DeprecatedWorkspaceConnection.java:177)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commit(ChangeSetArchiveImporter.java:430)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commitChangesFromMap(ChangeSetArchiveImporter.java:406)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.commitChanges(ChangeSetArchiveImporter.java:278)
>                at 
> com.ibm.team.migration.ccvs.ChangeSetArchiveImporter.importChangeSetArchive(ChangeSetArchiveImporter.java:190)
>                at 
> com.ibm.team.migration.operations.ImportOperation.doImport(ImportOperation.java:191)
>                at 
> com.ibm.team.migration.ccvs.ui.ChangeArchiveImportWizard$1.run(ChangeArchiveImportWizard.java:148)
>                at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
> ============= end nested exception, level (1) ===========
> 2006-04-28 17:26:27.629 GMT:
> Shutting down instance c013800d-010a-e0d2-ba43-00000016c308
> ----------------------------------------------------------------
> Cleanup action completed
> ----------------------------------------------------------------
> 2006-04-28 17:26:30.258 GMT:
>  Booting Derby version The Apache Software Foundation - Apache Derby - 
> 10.1.2.1 - (330608): instance 13e1c7d6-010a-e0d2-ba43-00000016c308
> on database directory /home/jhills/magnolia-runtime/teamRepositoryDB 
> Database Class Loader started - derby.database.classpath=''

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

Reply via email to