Hello,

Managed to reproduce it now. The first error was hiding the "real" cause 
because of connecting in server mode. In embedded mode I'm getting the 
error (NPE) below. It occurs with xmltext changed to the data type clob. A 
reproduction is below.

create table xmledittest (id serial, xmltext clob);
insert into xmledittest ( xmltext ) values (select xmlstartdoc() || 
XMLNODE('a', XMLATTR('href', 'http://h2database.com')));
@loop 50 update xmledittest set xmltext = xmltext || XMLNODE('a', 
XMLATTR('href', 'http://h2database.com'));

Greetings,

Remco

07-04 18:41:49 jdbc[2]: exception
org.h2.jdbc.JdbcSQLException: General error: 
"java.lang.NullPointerException" [50000-167]
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
    at org.h2.message.DbException.get(DbException.java:158)
    at org.h2.message.DbException.convert(DbException.java:281)
    at org.h2.message.DbException.toSQLException(DbException.java:254)
    at org.h2.message.TraceObject.logAndConvert(TraceObject.java:368)
    at org.h2.jdbc.JdbcResultSet.updateRow(JdbcResultSet.java:2782)
    at org.h2.server.web.WebApp.editResult(WebApp.java:1024)
    at org.h2.server.web.WebApp.process(WebApp.java:221)
    at org.h2.server.web.WebApp.processRequest(WebApp.java:164)
    at org.h2.server.web.WebThread.process(WebThread.java:137)
    at org.h2.server.web.WebThread.run(WebThread.java:93)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
    at org.h2.value.ValueLobDb.getInputStream(ValueLobDb.java:290)
    at org.h2.value.ValueLobDb.getReader(ValueLobDb.java:276)
    at org.h2.value.ValueLobDb.getString(ValueLobDb.java:197)
    at org.h2.value.ValueLobDb.compareSecure(ValueLobDb.java:262)
    at org.h2.value.Value.compareTo(Value.java:895)
    at org.h2.jdbc.JdbcResultSet.patchCurrentRow(JdbcResultSet.java:3476)
    at org.h2.jdbc.JdbcResultSet.updateRow(JdbcResultSet.java:2778)
    ... 6 more


On Wednesday, July 4, 2012 4:26:19 PM UTC+2, Duvel wrote:
>
> I tried it in the h2-latest.jar downloaded today (
> http://h2database.com/html/build.html#automated), but I'm getting this 
> error when I save a record:
>
> IO Exception: "java.io.IOException: org.h2.message.DbException: IO 
> Exception: ""java.io.IOException: org.h2.jdbc.JdbcSQLException: IO 
> Exception: """"Missing lob: 1"""" [90028-167]"" [90028-167]"; "lob: null 
> table: 25 id: 1" [90031-167]
> Connection is broken: "session closed" 
> [90067-167]<http://192.168.178.20:8082/editResult.do?jsessionid=ade7349cae5b3032d450d9133a683117#>90067/90067
>  
> (Help)<http://h2database.com/javadoc/org/h2/constant/ErrorCode.html#c90067>
>
> IO Exception: "java.io.IOException: org.h2.message.DbException: IO 
> Exception: ""java.io.IOException: org.h2.jdbc.JdbcSQLException: IO 
> Exception: """"Missing lob: 1"""" [90028-167]"" [90028-167]"; "lob: null 
> table: 25 id: 1" 
> [90031-167]<http://192.168.178.20:8082/editResult.do?jsessionid=ade7349cae5b3032d450d9133a683117#>90031/90031
>  
> (Help)<http://h2database.com/javadoc/org/h2/constant/ErrorCode.html#c90031>
>
> I'm still working on a reproduction without sending the customer database. 
> But maybe you will have an idea, how to force it to use the seperate 
> lob-storage instead of in record, which would be my guess is related to 
> this problem.
>

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/h2-database/-/KIwriNKbPowJ.
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.

Reply via email to