Hi Thomas,
Under linux the System.getProperty("java.io.tmpdir") returns /tmp
without trailing path separator '/' character which is different from
Windows (....\LOCALS~1\Temp\). This most likely causes the problem in
getFilePrefix method in SessionRemote class as the database name is
appended after the directory string.
On 2 loka, 10:25, pepez <[EMAIL PROTECTED]> wrote:
> And same with the latest:
>
> 1.0.79 (2008-09-26)
> Exception in thread "main" org.h2.jdbc.JdbcSQLException: IO Exception:
> java.io.IOException: Permission denied; mem:appDB [90031-79]
> at org.h2.message.Message.getSQLException(Message.java:103)
> at org.h2.message.Message.convertIOException(Message.java:271)
> at org.h2.engine.SessionRemote.createTempFile(SessionRemote.java:459)
> at org.h2.value.ValueLob.initLarge(ValueLob.java:375)
> at org.h2.value.ValueLob.createFromReader(ValueLob.java:201)
> at org.h2.value.ValueLob.createClob(ValueLob.java:169)
> at org.h2.jdbc.JdbcConnection.createClob(JdbcConnection.java:1521)
> at
> org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> 945)
> at
> org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> 917)
> at
> org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> 928)
> at H2Test.main(H2Test.java:17)
> Caused by: java.io.IOException: Permission denied
> at java.io.UnixFileSystem.createFileExclusively(Native Method)
> at java.io.File.checkAndCreate(File.java:1704)
> at java.io.File.createTempFile(File.java:1793)
> at org.h2.store.fs.FileSystemDisk.createTempFile(FileSystemDisk.java:
> 157)
> at org.h2.util.FileUtils.createTempFile(FileUtils.java:158)
> at org.h2.engine.SessionRemote.createTempFile(SessionRemote.java:457)
> ... 8 more
>
> On Oct 2, 10:21 am, pepez <[EMAIL PROTECTED]> wrote:
>
> > Here is the output of the test (Java 1.6.0_06, Ubuntu 8.04, 2.6.24-19-
> > generic):
>
> > 1.0.78 (2008-08-28)
> > Exception in thread "main" org.h2.jdbc.JdbcSQLException: IO Exception:
> > java.io.IOException: Permission denied; mem:appDB [90031-78]
> > at org.h2.message.Message.getSQLException(Message.java:103)
> > at org.h2.message.Message.convertIOException(Message.java:271)
> > at
> > org.h2.engine.SessionRemote.createTempFile(SessionRemote.java:459)
> > at org.h2.value.ValueLob.initLarge(ValueLob.java:375)
> > at org.h2.value.ValueLob.createFromReader(ValueLob.java:201)
> > at org.h2.value.ValueLob.createClob(ValueLob.java:169)
> > at org.h2.jdbc.JdbcConnection.createClob(JdbcConnection.java:1500)
> > at
> > org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> > 945)
> > at
> > org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> > 917)
> > at
> > org.h2.jdbc.JdbcPreparedStatement.setCharacterStream(JdbcPreparedStatement.java:
> > 928)
> > at H2Test.main(H2Test.java:17)
> > Caused by: java.io.IOException: Permission denied
> > at java.io.UnixFileSystem.createFileExclusively(Native Method)
> > at java.io.File.checkAndCreate(File.java:1704)
> > at java.io.File.createTempFile(File.java:1793)
> > at
> > org.h2.store.fs.FileSystemDisk.createTempFile(FileSystemDisk.java:
> > 157)
> > at org.h2.util.FileUtils.createTempFile(FileUtils.java:158)
> > at
> > org.h2.engine.SessionRemote.createTempFile(SessionRemote.java:457)
> > ... 8 more
>
> > On Oct 1, 9:34 pm, "Thomas Mueller" <[EMAIL PROTECTED]>
> > wrote:
>
> > > Hi,
>
> > > I can reproduce this problem with previous versions, but so far I
> > > couldn't reproduce it with version 1.0.78. Could you post a simple
> > > test case similar to the one below? Or maybe this test doesn't work
> > > for you?
>
> > > public static void main(String[] args) throws Exception {
> > > org.h2.Driver.load();
> > > Server server = Server.createTcpServer(new String[0]).start();
> > > Connection conn =
> > > DriverManager.getConnection("jdbc:h2:tcp://localhost/mem:appDB");
> > >
> > > System.out.println(conn.getMetaData().getDatabaseProductVersion());
> > > PreparedStatement prep = conn.prepareStatement("CALL ?");
> > > prep.setCharacterStream(1, new StringReader(new String(new
> > > char[100000])));
> > > prep.executeQuery();
> > > conn.close();
> > > server.stop();
> > > }
>
> > > Regards,
> > > Thomas
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "H2
Database" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/h2-database?hl=en
-~----------~----~----~----~------~----~------~--~---