jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Frédéric Esnault <f...@legisway.com>
Subject RE: atomic vs group node creation/storage
Date Thu, 21 Jun 2007 14:11:01 GMT
Well I'm really wondering what's wrong in my webapp...The 2500 child nodes creation finished
OK. Thanks again for your testing tool, it really points out that the problem resides in my
webapp...but where ;-)

Basically, now, I use the same code in your (modified) tool and my webapp, except I enter
through a Spring MVC framework and I'm using Spring Jackrabbit module.

I'm going to investigate this.

*** Initializing repository ***
Initializing repository
[{http://www.legisway.com}addressType]
[{http://www.legisway.com}contactType]
[{http://www.legisway.com}contactsType]
[{http://www.legisway.com}contractorType]
[{http://www.legisway.com}contractorsType]
[{http://www.legisway.com}contractType]
[{http://www.legisway.com}contractsType]
[{http://www.legisway.com}rootType]
*** Adding Node lgw:contracts under the Root Node ***
*** Adding Node lgw:contacts under the Root Node ***
*** Adding Node lgw:contractors under the Root Node ***
Found nodes : 0
[OneByOne] Creating 2500 contacts
end of creation
SELECT COUNT(*) FROM default_binval: 0
SELECT COUNT(*) FROM default_node: 5006
SELECT COUNT(*) FROM default_prop: 32507
SELECT COUNT(*) FROM default_refs: 0
SELECT COUNT(*) FROM version_binval: 0
SELECT COUNT(*) FROM version_node: 1
SELECT COUNT(*) FROM version_prop: 1
SELECT COUNT(*) FROM version_refs: 0
*** Initializing repository ***
Initializing repository
[{http://www.legisway.com}addressType]
[{http://www.legisway.com}contactType]
[{http://www.legisway.com}contactsType]
[{http://www.legisway.com}contractorType]
[{http://www.legisway.com}contractorsType]
[{http://www.legisway.com}contractType]
[{http://www.legisway.com}contractsType]
[{http://www.legisway.com}rootType]
*** Adding Node lgw:contracts under the Root Node ***
*** Adding Node lgw:contacts under the Root Node ***
*** Adding Node lgw:contractors under the Root Node ***
Found nodes : 0
[Batch] Creating 2500 contacts
end of creation
SELECT COUNT(*) FROM default_binval: 0
SELECT COUNT(*) FROM default_node: 5006
SELECT COUNT(*) FROM default_prop: 32507
SELECT COUNT(*) FROM default_refs: 0
SELECT COUNT(*) FROM version_binval: 0
SELECT COUNT(*) FROM version_node: 1
SELECT COUNT(*) FROM version_prop: 1
SELECT COUNT(*) FROM version_refs: 0

Frédéric Esnault
 

-----Message d'origine-----
De : Thomas Mueller [mailto:thomas.tom.mueller@gmail.com] 
Envoyé : jeudi 21 juin 2007 15:56
À : dev@jackrabbit.apache.org
Objet : Re: atomic vs group node creation/storage

Hi,

How does this table look like?

show columns from default_node;
Field  	Type
NODE_ID	char(36)
NODE_DATA mediumblob

Maybe this is different in your environment.
Thomas

On 6/21/07, Frédéric Esnault <fesn@legisway.com> wrote:
> Now I have a strange problem with the test tool. I tried to launch creation on 2500 nodes,
and got this :
> Exception in thread "main" javax.jcr.RepositoryException: /: unable to update it
> em.: failed to write node state: 409d58ab-bd92-410c-8096-1fca52b8ef63: failed to
>  write node state: 409d58ab-bd92-410c-8096-1fca52b8ef63
>         at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1212)
>         at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:823)
>         at TestSingleGroup.testOneByOne(TestSingleGroup.java:109)
>
> Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long fo
> r column 'NODE_DATA' at row 1
>
>
> Frédéric Esnault
>
> -----Message d'origine-----
> De: Thomas Mueller [mailto:thomas.tom.mueller@gmail.com]
> Envoyé: jeudi 21 juin 2007 11:25
> À: dev@jackrabbit.apache.org
> Objet: Re: atomic vs group node creation/storage
>
> Hi,
>
> > The number of rows was increasing also very fast.
> > When my default_node table reached 22 GB, it was holding 35 million rows.
>
> Is the problem now, that it is reproducible on your machine, but not
> on my machine? Could you run my test case on your machine? It is
> simpler and doesn't use node types. If you can't reproduce the problem
> with my test on your machine, but can reproduce it with your test
> case, could you send your complete test code (there are still some
> pieces missing, for example initializeContractor)?
>
> > The problem here is that if you use predicate on the node with plenty of instances
(say a contract), the search works fine,
>
> OK
>
> > the problem is if the search has to look at all the instances of this type of node.
>
> I'm not sure if I understand the problem... You would search all nodes
> of the same type without any condition ("SELECT * FROM x:y")? Why
> would you do a search like this, and how would using same name
> siblings solve the problem?
>
> > We actually plan a 100K nodes repository, with an extreme limit to 250K,
> > which could possibly mean something like a maximum of 25K to 30K child nodes,
>
> Somebody else already said, many child nodes is only a problem for
> writing. And for manually browsing the repository, if you want to do
> that.
>
> Thomas
>
> Attachment: testSingleGroup.zip (I hope this works)
>

Mime
View raw message