Hi Erik,

Short answer is, no, we haven't changed the DN versions for this release -
that's gonna happen in Isis 2.0.0-M1 but not before.  And I can't, off the
top of my head, think of anything in Isis 1.16.x that's changed in this
area.

Some questions/suggestions:
- is this failing for every entity instance/row?  StreamCorrupted suggests
a probably with an individual field
- does the 1.15.x version of your app work with this specific entity
instance/row
- is this entity instance particularly large? is there a limit being hit?
- if you write a simple DN-only app (no Isis) to retrieve the row, does it
work or fail?
- if 1.15.x works but 1.16.x, can you isolate from the stack trace where
1.16.x is throwing an exception whereas 1.15.x continues happily?

Sorry don't have an immediate solution for you...

Dan

On Wed, 14 Mar 2018, 08:35 Erik de Hair, <[email protected]> wrote:

> Hi,
>
> I'm having troubles with Blob fields after upgrading to Apache Isis
> 1.16.2 (not sure if this was also the case for 1.16.[0-1]). The feature
> is using existing data we had no problems with before upgrading.
>
> My field definition:
>
> @javax.jdo.annotations.Persistent(defaultFetchGroup="false", columns = {
>                @javax.jdo.annotations.Column(name = "file_name",
> allowsNull = "false"),
>                @javax.jdo.annotations.Column(name = "file_mimetype",
> allowsNull = "false"),
>                @javax.jdo.annotations.Column(name = "file_bytes",
> jdbcType="BLOB", sqlType = "BLOB", allowsNull = "false")
>            })
>      @Property(editing=Editing.DISABLED, optionality=Optionality.MANDATORY)
>      @Getter @Setter
>      private Blob file;
>
> Caused by: javax.jdo.JDOFatalUserException: StreamCorruptedException:
> object is corrupted
> NestedThrowables:
> java.io.StreamCorruptedException: invalid stream header: 47657370
>      at
>
> org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:606)
>      at
>
> org.datanucleus.api.jdo.JDOAdapter.getApiExceptionForNucleusException(JDOAdapter.java:677)
>      at
> org.datanucleus.state.StateManagerImpl.isLoaded(StateManagerImpl.java:2929)
>      at nl.pocos.dom.doclib.Document.dnGetfile(Document.java)
>      at nl.pocos.dom.doclib.Document.getFile(Document.java:86)
>
> I've changed the sqlType to "LONGVARBINARY" but this didn't help. I
> can't reproduce this issue in the quickstart app. Was there any change
> in Datanucleus version? Will have another look at the change logs.
>
> Anyone having an idea?
>
> Thanks,
> Erik
>

Reply via email to