[BioSQL-l] [Biojava-l] Problems with adding miRNA to sequence

Gabrielle Doan gabrielle_doan at gmx.net
Mon Sep 1 13:32:56 UTC 2008


Hi Richard,
thanks a lot for your answer. I've changed the size of the rank in the 
BioSQL table seqfeature from smallint unsigned to int unsigned. So that 
the error messages because of the rank do not occur anymore.
But now I'm facing an other problem. If I try to insert a new feature to 
human chromosome  1 and 2 into my database I get following message:

org.hibernate.PropertyAccessException: Exception occurred inside getter 
of org.biojavax.bio.seq.SimpleRichSequence.stringSequence
     at 
org.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:148)
     at 
org.hibernate.tuple.entity.AbstractEntityTuplizer.getPropertyValues(AbstractEntityTuplizer.java:256)
     at 
org.hibernate.tuple.entity.PojoEntityTuplizer.getPropertyValues(PojoEntityTuplizer.java:209)
     at 
org.hibernate.persister.entity.AbstractEntityPersister.getPropertyValues(AbstractEntityPersister.java:3581)
     at 
org.hibernate.event.def.DefaultFlushEntityEventListener.getValues(DefaultFlushEntityEventListener.java:167)
     at 
org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:120)
     at 
org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:196)
     at 
org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:76)
     at 
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
     at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
     at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
     at 
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
     at org.viewer.db.HBioSQLDB.updateSequence(HBioSQLDB.java:254)
     at org.viewer.io.MakeMiRNA.splitLine(MakeMiRNA.java:220)
     at org.viewer.io.MakeMiRNA.main(MakeMiRNA.java:57)
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     at java.lang.reflect.Method.invoke(Method.java:597)
     at 
org.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:145)
     ... 14 more
Caused by: java.lang.OutOfMemoryError: Java heap space
     at java.util.Arrays.copyOf(Arrays.java:2882)
     at 
java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
     at 
java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:572)
     at java.lang.StringBuffer.append(StringBuffer.java:320)
     at 
org.biojava.bio.seq.io.CharacterTokenization.tokenizeSymbolList(CharacterTokenization.java:214)
     at 
org.biojava.bio.symbol.AlphabetManager$WellKnownTokenizationWrapper.tokenizeSymbolList(AlphabetManager.java:1460)
     at 
org.biojava.bio.symbol.AbstractSymbolList.seqString(AbstractSymbolList.java:102)
     at 
org.biojavax.bio.seq.DummyRichSequenceHandler.seqString(DummyRichSequenceHandler.java:115)
     at 
org.biojavax.bio.db.biosql.BioSQLRichSequenceHandler.seqString(BioSQLRichSequenceHandler.java:155)
     at 
org.biojavax.bio.seq.ThinRichSequence.seqString(ThinRichSequence.java:188)
     at 
org.biojavax.bio.seq.SimpleRichSequence.getStringSequence(SimpleRichSequence.java:77)
     ... 19 more

I also had a conversation with Hilmar Lapp, who told me that there's 
possibly a bug in BioJava because the unique property does hold for the 
four elements bioentry_id, type_term_id, source_term_id and rank but it 
seems that BioJava always inkrements the rank for each new feature. 
Should I post a bug report?

It would be very nice if you could help me. I am grateful for any
hints. Thanks a lot.

cheers
Gabrielle





-------- Original-Nachricht --------
Betreff: Re: [Biojava-l] Problems with adding miRNA to sequence
Datum: Thu, 28 Aug 2008 23:45:35 +0100
Von: Richard Holland <dicknetherlands at gmail.com>
An: Gabrielle Doan <gabrielle_doan at gmx.net>
CC: biojava-l at biojava.org
Referenzen: <48B6B354.6010307 at gmx.net>

Looks like your sequence has so many features that it exceeds the
maximum permitted by BioSQL:

com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of
range value adjusted for column 'rank' at row 1

Not sure what you can do about this other than go to the Feature table
in your database and increase the maximum value allowed in the 'rank'
column.

cheers,
Richard


2008/8/28 Gabrielle Doan <gabrielle_doan at gmx.net>:
>
> Hi all,
> I would like to insert new features (miRNA) into my exitsting BioSQL
> database. At the moment the database contains the chromosomes 1-22, X, Y
> and MT downloaded from ftp://ftp.ncbi.nih.gov/genomes/H_sapiens/. And
> now I have tried to add the information about miRNA from
> http://microrna.sanger.ac.uk/cgi-bin/targets/v5/download.pl into my
> database with following code:
>
>        private void makeAFeature(String id, String chr, int startpos,
>            int endpos, Strand strand, float score, String gene)
>                        throws ChangeVetoExceptionIllegalSymbolException
>    {
>                RichSequence rs = chromosomes.get(chr);
>                if (rs == null) {
>                        rs = db.SearchForSequence(chr);
>                        chromosomes.put(chr, rs);
>                }
>                RichFeature feat = RichFeature.Tools.makeEmptyFeature();
>                feat.setName(id);
>                RichLocation rl = new SimpleRichLocation(new
>
>                SimplePosition(startpos),new SimplePosition(endpos),
>                    1,strand);
>                feat.setLocation(rl);
>                try {
>
>                feat.setTypeTerm(RichObjectFactory.getDefaultOntology()
>                                .getOrCreateTerm("miRNA"));
>                        feat.setType(feat.getTypeTerm().getName());
>                } catch (InvalidTermException e) {
>                        // TODO Auto-generated catch block
>                        e.printStackTrace();
>                }
>                feat.getAnnotation().setProperty("score",
>                   Float.valueOf(score));
>                feat.getAnnotation().setProperty("gene", gene);
>                feat.setParent(rs);
>                rs.getFeatureSet().add(feat);
>        }
>
> I successfully inserted the information for chromosome 3-22, X, Y and MT.
> But when I try to deal with chromosome 1, 2 in the same way I get
> following message:
>
> org.hibernate.exception.DataException: could not insert: [Feature]
>        at
> org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:77)
>        at
> org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
>        at
> org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:40)
>        at
> org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2163)
>        at
> org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2643)
>        at
> org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:51)
>        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
>        at
> org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:298)
>        at
> org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
>        at
> org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:107)
>        at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
>        at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
>        at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:94)
>        at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
>        at
> org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
>        at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
>        at
> org.hibernate.engine.CascadingAction$5.cascade(CascadingAction.java:218)
>        at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268)
>        at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:216)
>        at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)
>        at
> org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:296)
>        at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:242)
>        at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:219)
>        at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)
>        at org.hibernate.engine.Cascade.cascade(Cascade.java:130)
>        at
> org.hibernate.event.def.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:131)
>        at
> org.hibernate.event.def.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:122)
>        at
> org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:65)
>        at
> org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
>        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
>        at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
>        at
> org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
>        at org.viewer.db.HBioSQLDB.updateSequence(HBioSQLDB.java:254)
>        at org.viewer.io.MakeMiRNA.splitLine(MakeMiRNA.java:220)
>        at org.viewer.io.MakeMiRNA.main(MakeMiRNA.java:57)
> Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of
> range value adjusted for column 'rank' at row 1
>        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2973)
>        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
>        at
> com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1129)
>        at
> com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:681)
>        at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1368)
>        at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1283)
>        at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1268)
>        at
> org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAndExtract(IdentityGenerator.java:73)
>        at
> org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:33)
>        ... 32 more
>
> It would be very nice if someone could help me. I am grateful for any
> hints. Thanks a lot.
>
> Cheers,
> Gabrielle
>
> _______________________________________________
> Biojava-l mailing list  -  Biojava-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/biojava-l
>



-- 
Richard Holland
Finance Director
Eagle Genomics
http://www.eaglegenomics.com/




More information about the BioSQL-l mailing list