info about recover mongod connection without restarting the oak repository instance
Hi all, 2 years ago we started to develop our ECM solution with oak. Now we have a configuration of oak 1.4.19 with a dockerized mongodb 3.2 document store and a filesystem blobstore During massive node creation on repository sometime oak disconnects from mongo, cause the mongodb docker instance restart. There is a way to recover the mongodb connection without restarting the oak repository instance? Thanks in advance, Best regards [cid:image001.png@01D3B178.609E3810] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797
R: problem on oak jcr sql2 query
Hi all, in red answers below. Thanks in advance best regards -Messaggio originale- Da: Tommaso Teofili [mailto:tommaso.teof...@gmail.com] Inviato: martedì 28 marzo 2017 13:35 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: problem on oak jcr sql2 query Hi Francesco, do you have other indexes within your Oak repo ? No. We haven’t other indexes. It might be that the query engine selects a different index which only acts on [nt:file] nodes. You can try checking the plan [1] for your query and compare with the [nt:base] version. It might also be useful to enable debug logging for org.apache.jackrabbit.oak.query, that will allow you to check the costs associated to each index so that it should be easier to eventually tweak the index definitions accordingly (note that the query engine selects the index with the lowest cost), e.g. you should see something like: ... cost for solr is 1.4 cost for lucene is 1.2 cost for reference is Infinity ... We have already activated debug in oak and we noticed that when we use a query with the inner join then cost for solr is Infinity and query is not sent to solr Do you Know if inner join is supported by Oak to use Solr ? Regards, Tommaso [1] : http://jackrabbit.apache.org/oak/docs/query/query-troubleshooting.html#Query_Plan Il giorno mar 28 mar 2017 alle ore 12:28 Ancona Francesco < francesco.anc...@siav.it<mailto:francesco.anc...@siav.it>> ha scritto: > We have wrapped oak jcr implementation with our data model, so it's > not so easy give you our unit test (our sw is not yet open sourece > :-)) Besides we know the documenti is correctly indexed, cause we see > it in solr; so you can use any type of pdf: oak manage full text correctly. > > Anyway we tried to use a query like this to optimize performance: > SELECT parent.* FROM [nt:file] AS parent INNER JOIN [nt:resource] AS > child ON ISCHILDNODE(child,parent) WHERE CONTAINS(child.*, ' company') > or CONTAINS(parent.*, ' company') > > But we saw that index planner doesn't permit solr query (oak doesn't > use solr for the query). So we can't find words inside content > (nt:resource) > > What is wrong ? > Why oak doesn't use solr for full text query ? > > Thanks in advance, > best regards > > -Messaggio originale- > Da: Tommaso Teofili [mailto:tomm...@apache.org] > Inviato: martedì 28 marzo 2017 10:33 > A: oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org> > Cc: Diquigiovanni Simone > <simone.diquigiova...@siav.it<mailto:simone.diquigiova...@siav.it>> > Oggetto: Re: problem on oak jcr sql2 query > > Hi Francesco, > > Il giorno lun 27 mar 2017 alle ore 08:59 Ancona Francesco < > francesco.anc...@siav.it<mailto:francesco.anc...@siav.it>> ha scritto: > > Sorry. > > We are using Oak 1.4.10 and solr 4.10.4 > > i send you also a pdf example: the searched word is "sezione" > > > attachments do not usually get through the mailing list therefore we > can't look into it. > > > > In another document ([nt:file] that doesn't have childs) i'd want > match only through metadata that contains the word "company" > > Actually i resolved the problem executing a query like this: select > p.* from [nt:base] as p where .. contains (p.*, "company") or > contains (p.*, "sezione") > > Then i explore (programmatically and after the query response) jcr > nodes to set only nodes that are [nt:file] > > Is it the correct approach ? > > > this can work but it's surely worse in terms of performance as you > retrieve and skip some docs you don't really need. > If you can provide the PDF via a link or, better, a unit test we can > probably help you more effectively. > > Regards, > Tommaso > > > > Thanks in advance, > best regards > > -Messaggio originale- > Da: Tommaso Teofili [mailto:tommaso.teof...@gmail.com] > Inviato: venerdì 24 marzo 2017 14:56 > A: oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org> > Cc: Diquigiovanni Simone > <simone.diquigiova...@siav.it<mailto:simone.diquigiova...@siav.it>> > Oggetto: Re: problem on oak jcr sql2 query > > It'd be helpful to also know the version of Oak and Solr you're using > and, possibly, sample content you expect the query to match. > > Thanks, > Tommaso > > > Il giorno ven 24 mar 2017 alle ore 14:54 Thomas Mueller > <muel...@adobe.com<mailto:muel...@adobe.com>> ha scritto: > > > Could you post the index definition please? > > > > > > From: Ancona Fran
R: problem on oak jcr sql2 query
We have wrapped oak jcr implementation with our data model, so it's not so easy give you our unit test (our sw is not yet open sourece :-)) Besides we know the documenti is correctly indexed, cause we see it in solr; so you can use any type of pdf: oak manage full text correctly. Anyway we tried to use a query like this to optimize performance: SELECT parent.* FROM [nt:file] AS parent INNER JOIN [nt:resource] AS child ON ISCHILDNODE(child,parent) WHERE CONTAINS(child.*, ' company') or CONTAINS(parent.*, ' company') But we saw that index planner doesn't permit solr query (oak doesn't use solr for the query). So we can't find words inside content (nt:resource) What is wrong ? Why oak doesn't use solr for full text query ? Thanks in advance, best regards -Messaggio originale- Da: Tommaso Teofili [mailto:tomm...@apache.org] Inviato: martedì 28 marzo 2017 10:33 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: problem on oak jcr sql2 query Hi Francesco, Il giorno lun 27 mar 2017 alle ore 08:59 Ancona Francesco < francesco.anc...@siav.it> ha scritto: Sorry. We are using Oak 1.4.10 and solr 4.10.4 i send you also a pdf example: the searched word is "sezione" attachments do not usually get through the mailing list therefore we can't look into it. In another document ([nt:file] that doesn't have childs) i'd want match only through metadata that contains the word "company" Actually i resolved the problem executing a query like this: select p.* from [nt:base] as p where .. contains (p.*, "company") or contains (p.*, "sezione") Then i explore (programmatically and after the query response) jcr nodes to set only nodes that are [nt:file] Is it the correct approach ? this can work but it's surely worse in terms of performance as you retrieve and skip some docs you don't really need. If you can provide the PDF via a link or, better, a unit test we can probably help you more effectively. Regards, Tommaso Thanks in advance, best regards -Messaggio originale- Da: Tommaso Teofili [mailto:tommaso.teof...@gmail.com] Inviato: venerdì 24 marzo 2017 14:56 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: problem on oak jcr sql2 query It'd be helpful to also know the version of Oak and Solr you're using and, possibly, sample content you expect the query to match. Thanks, Tommaso Il giorno ven 24 mar 2017 alle ore 14:54 Thomas Mueller <muel...@adobe.com> ha scritto: > Could you post the index definition please? > > > From: Ancona Francesco <francesco.anc...@siav.it> > Reply-To: "oak-dev@jackrabbit.apache.org" > <oak-dev@jackrabbit.apache.org> > Date: Thursday, 23 March 2017 at 15:19 > To: "oak-dev@jackrabbit.apache.org" <oak-dev@jackrabbit.apache.org> > Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> > Subject: problem on oak jcr sql2 query > > Hi all, > we use SolrSrerver for fulltext searches; both on metadata both on > content binary. > In general i have to find all nodes nt:file that contain the word > “company” or all nodes that have childs nt:resource that contain the > same word. > > Unfortunately if upload e file (so a node that is a nt:resource) and i > use this query SELECT p.* FROM [nt:file] as p where > contains(p.*,''company ') > > Solr find result but the RowIterator doesn’t return anything. > > Instead the above query works > SELECT p.* FROM [nt:resource] as p where contains(p.*,'company') But > doesn’t find nt:file nodes > > Can you help me ? > > Thanks in advance. > > > [cid:image002.png@01D2A3E8.D7747740] > Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. > +39 049 8979797 <049%20897%209797> <049%20897%209797> | fax +39 049 8978800 <049%20897%208800> > <049%20897%208800> | cel. +39 3299060325 <329%20906%200325> <329%20906%200325> > e-mail: francesco.anc...@siav.it | www.siav.it< > https://na01.safelinks.protection.outlook.com/?url=www.siav.it=02 > %7C01%7C%7Caed3cadf483741e2971708d471f7b284%7Cfa7b1b5a7b34438794aed2c1 > 78decee1%7C0%7C0%7C636258756051666135=GFXjC%2BgyoIh37AXmGYhYdORt > Xp1dFiA5v0hoghgbtBw%3D=0 > > > > I contenuti di questa e-mail e dei suoi allegati sono confidenziali e > riservati esclusivamente ai destinatari. > L'utilizzo per qualunque fine del presente messaggio e degli allegati > così come la relativa divulgazione senza l'autorizzazione del mittente > sono vietati. > Se avete ricevuto questa e-mail per errore, vi preghiamo di > distruggerla e di comunicarcelo. > I dati personali sono trattati esclusivamente per le finalità della > presente comunicazione in conformità
R: problem on oak jcr sql2 query
Sorry. We are using Oak 1.4.10 and solr 4.10.4 i send you also a pdf example: the searched word is "sezione" In another document ([nt:file] that doesn't have childs) i'd want match only through metadata that contains the word "company" Actually i resolved the problem executing a query like this: select p.* from [nt:base] as p where .. contains (p.*, "company") or contains (p.*, "sezione") Then i explore (programmatically and after the query response) jcr nodes to set only nodes that are [nt:file] Is it the correct approach ? Thanks in advance, best regards -Messaggio originale- Da: Tommaso Teofili [mailto:tommaso.teof...@gmail.com] Inviato: venerdì 24 marzo 2017 14:56 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: problem on oak jcr sql2 query It'd be helpful to also know the version of Oak and Solr you're using and, possibly, sample content you expect the query to match. Thanks, Tommaso Il giorno ven 24 mar 2017 alle ore 14:54 Thomas Mueller <muel...@adobe.com> ha scritto: > Could you post the index definition please? > > > From: Ancona Francesco <francesco.anc...@siav.it> > Reply-To: "oak-dev@jackrabbit.apache.org" > <oak-dev@jackrabbit.apache.org> > Date: Thursday, 23 March 2017 at 15:19 > To: "oak-dev@jackrabbit.apache.org" <oak-dev@jackrabbit.apache.org> > Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> > Subject: problem on oak jcr sql2 query > > Hi all, > we use SolrSrerver for fulltext searches; both on metadata both on > content binary. > In general i have to find all nodes nt:file that contain the word > “company” or all nodes that have childs nt:resource that contain the > same word. > > Unfortunately if upload e file (so a node that is a nt:resource) and i > use this query SELECT p.* FROM [nt:file] as p where > contains(p.*,''company ') > > Solr find result but the RowIterator doesn’t return anything. > > Instead the above query works > SELECT p.* FROM [nt:resource] as p where contains(p.*,'company') But > doesn’t find nt:file nodes > > Can you help me ? > > Thanks in advance. > > > [cid:image002.png@01D2A3E8.D7747740] > Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. > +39 049 8979797 <049%20897%209797> | fax +39 049 8978800 > <049%20897%208800> | cel. +39 3299060325 <329%20906%200325> > e-mail: francesco.anc...@siav.it | www.siav.it< > https://na01.safelinks.protection.outlook.com/?url=www.siav.it=02 > %7C01%7C%7Caed3cadf483741e2971708d471f7b284%7Cfa7b1b5a7b34438794aed2c1 > 78decee1%7C0%7C0%7C636258756051666135=GFXjC%2BgyoIh37AXmGYhYdORt > Xp1dFiA5v0hoghgbtBw%3D=0 > > > > I contenuti di questa e-mail e dei suoi allegati sono confidenziali e > riservati esclusivamente ai destinatari. > L'utilizzo per qualunque fine del presente messaggio e degli allegati > così come la relativa divulgazione senza l'autorizzazione del mittente > sono vietati. > Se avete ricevuto questa e-mail per errore, vi preghiamo di > distruggerla e di comunicarcelo. > I dati personali sono trattati esclusivamente per le finalità della > presente comunicazione in conformità con la legislazione vigente (D.lgs. > 196/2003 "Codice Privacy"). > Per informazioni: SIAV S.p.A. – s...@siav.it – 049 8979797 > <049%20897%209797> > > The contents of this e-mail and its attachments are confidential and > reserved exclusively to the recipients. > The use for any purpose of this message and attachments as well as its > disclosure without the consent of the sender is prohibited. > If you have received this email in error, please destroy it and notify us. > Personal data shall be processed solely for the purposes of this > notice in accordance with current legislation (Legislative Decree no. > 196/2003 "Code"). > For more information: SIAV S.p.A. – s...@siav.it – 049 8979797 > <049%20897%209797> > > This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
problem on oak jcr sql2 query
Hi all, we use SolrSrerver for fulltext searches; both on metadata both on content binary. In general i have to find all nodes nt:file that contain the word "company" or all nodes that have childs nt:resource that contain the same word. Unfortunately if upload e file (so a node that is a nt:resource) and i use this query SELECT p.* FROM [nt:file] as p where contains(p.*,''company ') Solr find result but the RowIterator doesn't return anything. Instead the above query works SELECT p.* FROM [nt:resource] as p where contains(p.*,'company') But doesn't find nt:file nodes Can you help me ? Thanks in advance. [cid:image002.png@01D2A3E8.D7747740] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797
Another question about oak: different storage support
Hi, as i explained in other mail, we are building an ECM on top of OAK. A frequent business question about storage management is the following: in oak configuration in which we have mongo as document store and filesystem, we set a specific path where we mount the storage; if we have space problem, can we mount another storage? In other world, oak can manage multiple BlobStore and so use different filesystem path to store binary data ? It could be useful if i want manage different type of storage linked to different type of documents: for example i could store a document type in a NAS while another in a SAN if i want better performance. Thanks in advance, best regards [cid:image002.png@01D1A247.0EB3D7E0] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797
R: distributed transactions
Yes, i know that we can manage in our application logic inconsistent situations, but we'd like to know the rational behind these intentional design constraint. With transaction it's obvious that coding should be easier. Thanks in advance -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: lunedì 18 aprile 2016 17:41 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it>; Morelli Alessandra <alessandra.more...@siav.it> Oggetto: distributed transactions On 2016-04-18 17:22, Ancona Francesco wrote: > I try explain the case. > > We know that OAK doesnt'support Transaction, so the following should > be the JCR implementation: > > http://www.day.com/specs/jcr/2.0/10_Writing.html > > When i use session write-methods, i can execute a sequence of session > methods (example add nodes) but only when i use save method i persist > the changes. > > Instead when i use Workspace-Write Methods (example > VersionManager.checkin, checkout, checkpoint, restore, restoreByLabel, > merge, cancelMerge, doneMerge, createActivity , removeActivity and > createConfiguration), for each action i persist on the workspace. > > So, imagine a use case in which i must create a version of a document > and save it in my repository in atomic way; if the first phase works > but the second one is KO, we have inconsistent data: the document has > a new version but is not saved. > > *Which kind of workaround do you suggest to solve this problem ?* > > Thanks in advance, > > best regards OK, so first of all this has *nothing* to do with the RDB persistence in particular; it applies to all persistence modes of OAK. Furthermore, I don't agree this is a "major" problem. Yes, there are certain sequences that can't be done atomically; this is intentional design constraint of Oak (of now). It's not entirely clear to me why this isn't something that application logic can't deal with. Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: critical question about oak: RDBMS and distributed transaction
I try explain the case. We know that OAK doesnt'support Transaction, so the following should be the JCR implementation: http://www.day.com/specs/jcr/2.0/10_Writing.html [cid:image003.jpg@01D19996.DE408710] When i use session write-methods, i can execute a sequence of session methods (example add nodes) but only when i use save method i persist the changes. Instead when i use Workspace-Write Methods (example VersionManager.checkin, checkout, checkpoint, restore, restoreByLabel, merge, cancelMerge, doneMerge, createActivity , removeActivity and createConfiguration), for each action i persist on the workspace. So, imagine a use case in which i must create a version of a document and save it in my repository in atomic way; if the first phase works but the second one is KO, we have inconsistent data: the document has a new version but is not saved. Which kind of workaround do you suggest to solve this problem ? Thanks in advance, best regards -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: giovedì 14 aprile 2016 18:05 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it>; Morelli Alessandra <alessandra.more...@siav.it> Oggetto: Re: critical question about oak: RDBMS and distributed transaction On 2016-04-14 17:24, Ancona Francesco wrote: > Hi, > > thanks for rdbms help. I managed to run my application also with > postgres and Oracle. My wrong has been that default installation > doesn't work; we need to set another collation. (in detail collation > C) > > Can i suggest to add these details to the documentation ? The only documentation right now is in RDBDocumentStore's javadoc, and that does mention it. > Now we have an other problem. > > We found that distributed transactions are not supported in OAK. This > could be a problem when we need to aggregate different kind of > services (our database and ecm services): so our data could be not > choerent in specific situations. > > Besides we noticed that there is a major issue opened in 2013 but not > closed. Specifically? > So i point out 3 question > > 1.Is there a roadmap or an indicative date to solve this issue? > > 2.Which kind of workaround do you suggest to solve the problem now ? > > 3.Do you know if adobe oak built-in product has implemented the > distributed transactions ? AFAIU, Oak wasn't designed with distributed transactions in mind, nor is it currently used that way. I'm not aware of any plans to change that... Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
critical question about oak: RDBMS and distributed transaction
Hi, thanks for rdbms help. I managed to run my application also with postgres and Oracle. My wrong has been that default installation doesn't work; we need to set another collation. (in detail collation C) Can i suggest to add these details to the documentation ? Now we have an other problem. We found that distributed transactions are not supported in OAK. This could be a problem when we need to aggregate different kind of services (our database and ecm services): so our data could be not choerent in specific situations. Besides we noticed that there is a major issue opened in 2013 but not closed. So i point out 3 question 1. Is there a roadmap or an indicative date to solve this issue? 2. Which kind of workaround do you suggest to solve the problem now ? 3. Do you know if adobe oak built-in product has implemented the distributed transactions ? Thanks in advance Best regards [cid:image003.png@01D19672.94AA1E30] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797
R: critical question about oak: db connection
Hello, any news about question ? Thanks in advance, best regards -Messaggio originale- Da: Ancona Francesco [mailto:francesco.anc...@siav.it] Inviato: venerdì 18 marzo 2016 11:40 A: oak-dev@jackrabbit.apache.org Oggetto: R: critical question about oak: db connection Done. https://github.com/francescoancona/oaktest.git Thanks in advance, best regards -Messaggio originale- Da: Tomek Rekawek [mailto:reka...@adobe.com] Inviato: giovedì 17 marzo 2016 15:32 A: oak-dev@jackrabbit.apache.org Oggetto: Re: critical question about oak: db connection Hello Ancona, the mailing list didn’t allow to add an attachment. Could you post it somewhere online or (even better) put the code into github? Best regards, Tomek -- Tomek Rękawek | Adobe Research | www.adobe.com reka...@adobe.com > On 17 Mar 2016, at 14:46, Ancona Francesco <francesco.anc...@siav.it> wrote: > > Hello, > i send you a maven project to connect with postgres. > > As i told you in other messages i know that oak test cases work; but they > start always with RDBDocumentStore and use UpdateOp and other Oak methods to > add nodes. > > Instead we'd like to use RDBDocumentNodeStore and we'd like to have > jcrRepository and jcr methods to manage documents (nodes). > > I hope the project can be useful. > > Thanks in advance, > best regards. > > -Messaggio originale- > Da: Julian Reschke [mailto:julian.resc...@gmx.de] > Inviato: mercoledì 16 marzo 2016 17:21 > A: oak-dev@jackrabbit.apache.org > Oggetto: Re: R: critical question about oak: db connection > > Ancona, > > you keep asking for more help but seem to ignore the feedback that you get. > > 1) oak-jcr and oak-run demonstrate that it is possible to run on RDBs; just > run the tests. All the information that you need should be in the test cases. > > 2) Don't throw code snippets at us. Without complete classes we can try > ourselves there is no way how we can find out what's wrong. > > So either start from the existing working code, or send self-contained test > code we can compile and run ourselves. > > Best regards, Julian > > > On 2016-03-16 16:28, Ancona Francesco wrote: >> Hi, >> Oak configuration with RDBMS doesn't work yet. >> >> I use the latest release 1.4.0 but i have the same problem >> >> In particular this is the code i use to initialize Oak >> >> final DocumentMK.Builder builder = new DocumentMK.Builder(); >> builder.setBlobStore(createFileSystemBlobStore()); >> final DocumentNodeStore ns = >> getRDBDocumentNodeStore(builder); >> >> // ds is datasource form postgres 9.4 DocumentStore documentStore = >> new RDBDocumentStore(ds, builder); >> builder.setDocumentStore(documentStore); >> DocumentNodeStore ns = new DocumentNodeStore(builder); >> DocumentNodeStore ns1 = new >> DocumentMK.Builder().setDocumentStore(documentStore).getNodeStore(); >> InitialContent ic = new InitialContent(); >> Oak oak = new Oak(ns1).with(ic); >> Jcr jcr = new Jcr(oak); >> Repository repo = jcr.createRepository(); >> >> >> and this is the stack trace: >> java.lang.IllegalStateException: This tree does not exist >> at >> org.apache.jackrabbit.oak.core.MutableTree.beforeWrite(MutableTree.java:353) >> at >> org.apache.jackrabbit.oak.core.MutableTree.setProperty(MutableTree.java:232) >> at >> org.apache.jackrabbit.oak.plugins.name.ReadWriteNamespaceRegistry.registerNamespace(ReadWriteNamespaceRegistry.java:92) >> at >> org.apache.jackrabbit.commons.cnd.TemplateBuilderFactory.setNamespace(TemplateBuilderFactory.java:92) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.doNameSpace(CompactNodeTypeDefReader.java:246) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.parse(CompactNodeTypeDefReader.java:200) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:163) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:139) >> at >> org.apache.jackrabbit.commons.cnd.CndImporter.registerNodeTypes(CndImporter.java:147) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerNodeTypes(NodeTypeRegistry.java:109) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.register(NodeTypeRegistry.java:104) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerBuiltIn(NodeTypeRegis
R: R: critical question about oak: db connection
Hello, i send you a maven project to connect with postgres. As i told you in other messages i know that oak test cases work; but they start always with RDBDocumentStore and use UpdateOp and other Oak methods to add nodes. Instead we'd like to use RDBDocumentNodeStore and we'd like to have jcrRepository and jcr methods to manage documents (nodes). I hope the project can be useful. Thanks in advance, best regards. -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: mercoledì 16 marzo 2016 17:21 A: oak-dev@jackrabbit.apache.org Oggetto: Re: R: critical question about oak: db connection Ancona, you keep asking for more help but seem to ignore the feedback that you get. 1) oak-jcr and oak-run demonstrate that it is possible to run on RDBs; just run the tests. All the information that you need should be in the test cases. 2) Don't throw code snippets at us. Without complete classes we can try ourselves there is no way how we can find out what's wrong. So either start from the existing working code, or send self-contained test code we can compile and run ourselves. Best regards, Julian On 2016-03-16 16:28, Ancona Francesco wrote: > Hi, > Oak configuration with RDBMS doesn't work yet. > > I use the latest release 1.4.0 but i have the same problem > > In particular this is the code i use to initialize Oak > > final DocumentMK.Builder builder = new DocumentMK.Builder(); > builder.setBlobStore(createFileSystemBlobStore()); > final DocumentNodeStore ns = > getRDBDocumentNodeStore(builder); > > // ds is datasource form postgres 9.4 > DocumentStore documentStore = new RDBDocumentStore(ds, builder); > builder.setDocumentStore(documentStore); > DocumentNodeStore ns = new DocumentNodeStore(builder); > DocumentNodeStore ns1 = new > DocumentMK.Builder().setDocumentStore(documentStore).getNodeStore(); > InitialContent ic = new InitialContent(); > Oak oak = new Oak(ns1).with(ic); > Jcr jcr = new Jcr(oak); > Repository repo = jcr.createRepository(); > > > and this is the stack trace: > java.lang.IllegalStateException: This tree does not exist > at > org.apache.jackrabbit.oak.core.MutableTree.beforeWrite(MutableTree.java:353) > at > org.apache.jackrabbit.oak.core.MutableTree.setProperty(MutableTree.java:232) > at > org.apache.jackrabbit.oak.plugins.name.ReadWriteNamespaceRegistry.registerNamespace(ReadWriteNamespaceRegistry.java:92) > at > org.apache.jackrabbit.commons.cnd.TemplateBuilderFactory.setNamespace(TemplateBuilderFactory.java:92) > at > org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.doNameSpace(CompactNodeTypeDefReader.java:246) > at > org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.parse(CompactNodeTypeDefReader.java:200) > at > org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:163) > at > org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:139) > at > org.apache.jackrabbit.commons.cnd.CndImporter.registerNodeTypes(CndImporter.java:147) > at > org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerNodeTypes(NodeTypeRegistry.java:109) > at > org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.register(NodeTypeRegistry.java:104) > at > org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerBuiltIn(NodeTypeRegistry.java:86) > at > org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.initialize(InitialContent.java:120) > at > org.apache.jackrabbit.oak.spi.lifecycle.CompositeInitializer.initialize(CompositeInitializer.java:48) > at > org.apache.jackrabbit.oak.spi.lifecycle.OakInitializer.initialize(OakInitializer.java:42) > at org.apache.jackrabbit.oak.Oak.createNewContentRepository(Oak.java:628) > at org.apache.jackrabbit.oak.Oak.createContentRepository(Oak.java:616) > at > org.apache.jackrabbit.oak.jcr.Jcr.createContentRepository(Jcr.java:367) > at org.apache.jackrabbit.oak.jcr.Jcr.createRepository(Jcr.java:375) > at > it.siav.jarvis.testplatform.ecm.common.OakRDBMSTest.test(OakRDBMSTest.java:74) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at > org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85) > at > org.
R: critical question about oak: db connection
Done. https://github.com/francescoancona/oaktest.git Thanks in advance, best regards -Messaggio originale- Da: Tomek Rekawek [mailto:reka...@adobe.com] Inviato: giovedì 17 marzo 2016 15:32 A: oak-dev@jackrabbit.apache.org Oggetto: Re: critical question about oak: db connection Hello Ancona, the mailing list didn’t allow to add an attachment. Could you post it somewhere online or (even better) put the code into github? Best regards, Tomek -- Tomek Rękawek | Adobe Research | www.adobe.com reka...@adobe.com > On 17 Mar 2016, at 14:46, Ancona Francesco <francesco.anc...@siav.it> wrote: > > Hello, > i send you a maven project to connect with postgres. > > As i told you in other messages i know that oak test cases work; but they > start always with RDBDocumentStore and use UpdateOp and other Oak methods to > add nodes. > > Instead we'd like to use RDBDocumentNodeStore and we'd like to have > jcrRepository and jcr methods to manage documents (nodes). > > I hope the project can be useful. > > Thanks in advance, > best regards. > > -Messaggio originale- > Da: Julian Reschke [mailto:julian.resc...@gmx.de] > Inviato: mercoledì 16 marzo 2016 17:21 > A: oak-dev@jackrabbit.apache.org > Oggetto: Re: R: critical question about oak: db connection > > Ancona, > > you keep asking for more help but seem to ignore the feedback that you get. > > 1) oak-jcr and oak-run demonstrate that it is possible to run on RDBs; just > run the tests. All the information that you need should be in the test cases. > > 2) Don't throw code snippets at us. Without complete classes we can try > ourselves there is no way how we can find out what's wrong. > > So either start from the existing working code, or send self-contained test > code we can compile and run ourselves. > > Best regards, Julian > > > On 2016-03-16 16:28, Ancona Francesco wrote: >> Hi, >> Oak configuration with RDBMS doesn't work yet. >> >> I use the latest release 1.4.0 but i have the same problem >> >> In particular this is the code i use to initialize Oak >> >> final DocumentMK.Builder builder = new DocumentMK.Builder(); >> builder.setBlobStore(createFileSystemBlobStore()); >> final DocumentNodeStore ns = >> getRDBDocumentNodeStore(builder); >> >> // ds is datasource form postgres 9.4 DocumentStore documentStore = >> new RDBDocumentStore(ds, builder); >> builder.setDocumentStore(documentStore); >> DocumentNodeStore ns = new DocumentNodeStore(builder); >> DocumentNodeStore ns1 = new >> DocumentMK.Builder().setDocumentStore(documentStore).getNodeStore(); >> InitialContent ic = new InitialContent(); >> Oak oak = new Oak(ns1).with(ic); >> Jcr jcr = new Jcr(oak); >> Repository repo = jcr.createRepository(); >> >> >> and this is the stack trace: >> java.lang.IllegalStateException: This tree does not exist >> at >> org.apache.jackrabbit.oak.core.MutableTree.beforeWrite(MutableTree.java:353) >> at >> org.apache.jackrabbit.oak.core.MutableTree.setProperty(MutableTree.java:232) >> at >> org.apache.jackrabbit.oak.plugins.name.ReadWriteNamespaceRegistry.registerNamespace(ReadWriteNamespaceRegistry.java:92) >> at >> org.apache.jackrabbit.commons.cnd.TemplateBuilderFactory.setNamespace(TemplateBuilderFactory.java:92) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.doNameSpace(CompactNodeTypeDefReader.java:246) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.parse(CompactNodeTypeDefReader.java:200) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:163) >> at >> org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader.(CompactNodeTypeDefReader.java:139) >> at >> org.apache.jackrabbit.commons.cnd.CndImporter.registerNodeTypes(CndImporter.java:147) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerNodeTypes(NodeTypeRegistry.java:109) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.register(NodeTypeRegistry.java:104) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.NodeTypeRegistry.registerBuiltIn(NodeTypeRegistry.java:86) >> at >> org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.initialize(InitialContent.java:120) >> at >> org.apache.jackrabbit.oak.spi.lifecycle.CompositeInitializer.initialize(CompositeInitializer.java:48) >> at >> org.apache.jackrab
R: critical question about oak: db connection
didn't find any clear example Can you give me the correct piece of code to create a content repository to use RDBMS ? Thnaks in advance. Best regards -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: mercoledì 2 marzo 2016 15:46 A: oak-...@jackrabbit.apache.org Oggetto: Re: critical question about oak: db connection On 2016-03-02 12:08, Ancona Francesco wrote: > We are using latest stable oak version > > In the case i'm sending you we have tried on postgres 9.4 > > We have simplified the class but now the error is the same we found on > Oracle. Once again: please show me the system log; specifically the startup message of RDBDocumentStore. > Class connect to database and write a lot of system rows (system > nodes.) but when i create repository there is the error > > Could you give us a complete example that works on Oracle 12 and > Postgres 9.4 ? Checkout OAK, run tests in oak-jcr with RDB fixture. For instance: mvn clean install -Prdb-postgres -Drdb.jdbc-url=jdbc:postgresql:oak -Drdb.jdbc-user=... -Drdb.jdbc-passwd=... -Dnsfixures=DOCUMENT_RDB -PintegrationTesting -Prdb-postgres > Is Postgres 9.4 correct version ? Or newer. Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: R: R: Critical questions about OAK
Hi, sorry if i continue to ask you about these critical questions but we'd like to build on OAK a platform that manage over 200M of documents so we'd like to know in deep how OAK works. Query Engine 1. I didn't understand how Traverse recovers phisically the graph to traverse. Is provided in memory ? does it make a search on filesystem or db to obtain a correct portion of graph and then traverse it ? 2. Can you point out the Traverse classes ? Or unit test? Instead for RDBMS question i noticed that with our simple class, the first time i add the node. The second time we obtain an error loading RepositoryImpl. In detail when MutableTree try to make beforewrite, throw an illegalstate exception ("this tree does not exist") Thanks in advance, best regards -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: venerdì 4 marzo 2016 08:09 A: oak-dev@jackrabbit.apache.org Oggetto: Re: R: R: Critical questions about OAK On 2016-03-03 15:48, Ancona Francesco wrote: > Yes but i'm asking if there is a way or a configuration to call rdbms using > jcrrepository like oak examples in getting start. > > final DocumentMK.Builder builder = new DocumentMK.Builder(); > builder.setBlobStore(createFileSystemBlobStore()); > final DocumentNodeStore ns = getRDBDocumentNodeStore(builder); > Oak oak = new Oak(ns); > Jcr jcr = new Jcr(oak); > > Repository repo = jcr.createRepository(); > > Thanks. It looks like some RepositoryInitializer is missing (AFAIU, it would take care of creating the initial content). Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: R: Critical questions about OAK
Hi, other question, always about the query Engine. 1. I didn't understand how Traverse recovers phisically the graph to traverse. Is provided in memory ? does it make a search on filesystem or db to obtain a correct portion of graph and then traverse it ? 2. Can you point out the Traverse classes ? Or unit test? Thanks in advance Best regards -Messaggio originale- Da: Davide Giannella [mailto:dav...@apache.org] Inviato: giovedì 3 marzo 2016 15:52 A: oak-dev@jackrabbit.apache.org Oggetto: Re: R: Critical questions about OAK On 03/03/2016 14:15, Ancona Francesco wrote: > ... > About query Engine > - Could you explain more in deep what traverse is ? If we have > understood, Treverse doesn't delegate to index server engine (good in case of > index server trouble) but is built incomponent in oak: but where keep > repository graph to Traverse ? In memory ? on filesystem ? getting data from > db ? Traverse will physically traverse the repository in search for the right data. It's not the most efficient index and it's there mainly to operate in case either all other indexes are not suitable for the provided query or there are no other indexes. But be careful. It doesn't mean it's intrinsically a bad index. Let's take the following query as an example SELECT * FROM [nt:unstructured] AS a WHERE ISDESCENDANTNODE(a, '/content/mysite/colour/red') AND colour = 'red' and you initialised the repository with the InitialContent that provides you some indexes, as I said in a previous email, and on top you have a PropertyIndex on `colour` and you have no Lucene index. Lucene is quite powerful with a lot of configuration options. Overall in the repository you have grossly the following node distribution - 10k nodes nt:unstructured - 5k nodes with colour red - 3 nodes under /content/mysite/colour/red For the above query, if you look at the plans you'll have the following costs (taking some freedom on numbers): - NodeTypeIndex 1 - PropertyIndex: 3000 - Traversing: 3 In this case the traversing index would actually be more performant than any other index as the query engine will have to post-analyse a set of only 3 nodes. > - we have to manage a potentially large amount of documents so we need > more than a node, so is it possibile clustering lucene ? You can't cluster the built-in lucene. If you're looking for such feature maybe a remote Solr can be a better solution but so far I don't think I heard the need of clustering lucene. You can have a look at my slides from the talk I gave to the adaptTo conference last year. They may help shedding some light on the query engine, even if the biggest part of my presentation were the 20 minutes of Q :) http://adapt.to/2015/en/schedule/scaling-the-query-with-oak.html HTH Davide This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: R: Critical questions about OAK
Yes but i'm asking if there is a way or a configuration to call rdbms using jcrrepository like oak examples in getting start. final DocumentMK.Builder builder = new DocumentMK.Builder(); builder.setBlobStore(createFileSystemBlobStore()); final DocumentNodeStore ns = getRDBDocumentNodeStore(builder); Oak oak = new Oak(ns); Jcr jcr = new Jcr(oak); Repository repo = jcr.createRepository(); Thanks. -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@greenbytes.de] Inviato: giovedì 3 marzo 2016 15:19 A: oak-dev@jackrabbit.apache.org Oggetto: Re: R: Critical questions about OAK On 2016-03-03 15:15, Ancona Francesco wrote: > Hi, > we have other questions about rdbms and query engine. > > About RDBMS > - we tried to run unit test on my postgres and seems to work but only if > i use oak methods such as update and remove. We'd like to use jcrRepository > to start our ECM management but doesn't work (can you see previous mail). > Could you confirm us this scenario () ? Could you give us other examples on > RDBMS that use jcrRepository ? > ... I already did. The test cases in oak-jcr run against an RDB persistence when invoked they way I told you yesterday...: mvn clean install -Prdb-postgres -Drdb.jdbc-url=jdbc:postgresql:oak -Drdb.jdbc-user=... -Drdb.jdbc-passwd=... -Dnsfixures=DOCUMENT_RDB -PintegrationTesting -Prdb-postgres Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: Critical questions about OAK
Hi, we have other questions about rdbms and query engine. About RDBMS - we tried to run unit test on my postgres and seems to work but only if i use oak methods such as update and remove. We'd like to use jcrRepository to start our ECM management but doesn't work (can you see previous mail). Could you confirm us this scenario () ? Could you give us other examples on RDBMS that use jcrRepository ? About query Engine - Could you explain more in deep what traverse is ? If we have understood, Treverse doesn't delegate to index server engine (good in case of index server trouble) but is built incomponent in oak: but where keep repository graph to Traverse ? In memory ? on filesystem ? getting data from db ? - we have to manage a potentially large amount of documents so we need more than a node, so is it possibile clustering lucene ? Thanks in advance, best regards -Messaggio originale- Da: Davide Giannella [mailto:dav...@apache.org] Inviato: mercoledì 2 marzo 2016 18:12 A: oak-dev@jackrabbit.apache.org Oggetto: Re: Critical questions about OAK On 01/03/2016 15:33, Ancona Francesco wrote: > ...2. Oak esplicitally doesn'i index anything so what's happens > when i search a document (or node) the first time ? (this is not > clear) > > a. The search is delegated always on index server (lucene > embedded or solr) return a resultset of nodes that match the query. > Oak never delegates to any persistence. It relies on its own query engine. Oak provides, 4 main index types: traverse, property, lucene and solr. If no index is defined, or no one is suitable for the provided query, the Traverse will come to play. It's a built-in index always there that will traverse the repository in search for the content complying with the query you provided. You define the index you need. Please read my previous email where I explained in more details the "doesn't index anything" aspect as well as the docs around the query engine. They may not explain how the query engine works but provides enough details for not having to read the code http://markmail.org/message/wvq7ggu737ex277b http://jackrabbit.apache.org/oak/docs/query/query.html > b. So mongodb (or RDBMS) is used only to render the metadata or > content binary > > 3. If i want better performance or i want want full text search > i have to create some indexes (3 type of indexes lucene, solr and > property of nodes) that improve efficiency of index server (lucene or > solr). These indexes don't have effect on RDBMS or mongodb in which > these kind of metadata are stored > If you need full-text capabilities, the only two indexes that provides it are Lucene and Solr. I'd go for lucene if you don't need any solr specific feature. You'll need to define your own index. You can find details in the docs http://jackrabbit.apache.org/oak/docs/query/query.html HTH Davide This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: critical question about oak: db connection
I’m not authorized to publish anything; could you give me a project that works ? Or could you point out the unit test in oak source code, can we use ? Thanks Best regards Da: Alex Parvulescu [mailto:alex.parvule...@gmail.com] Inviato: mercoledì 2 marzo 2016 12:22 A: Oak devs <oak-dev@jackrabbit.apache.org> Oggetto: Re: critical question about oak: db connection Hi, I see you keep having issues with getting a prototype up and running, but pasting the code in emails might be a bit off-putting for anyone looking to give you a hand. Might I suggest publishing the relevant bits (self contained project easy to run and see the error) to a GitHub repository? best, alex On Wed, Mar 2, 2016 at 12:08 PM, Ancona Francesco <francesco.anc...@siav.it<mailto:francesco.anc...@siav.it>> wrote: We are using latest stable oak version In the case i’m sending you we have tried on postgres 9.4 We have simplified the class but now the error is the same we found on Oracle. Class connect to database and write a lot of system rows (system nodes…) but when i create repository there is the error Could you give us a complete example that works on Oracle 12 and Postgres 9.4 ? Is Postgres 9.4 correct version ? Thanks Best regards @Autowired @Qualifier("oakPostgresDataSource") private DataSource ds; @Test public void test() { final DocumentMK.Builder builder = new DocumentMK.Builder(); builder.setBlobStore(createFileSystemBlobStore()); final DocumentNodeStore ns = getRDBDocumentNodeStore(builder); Oak oak = new Oak(ns); Jcr jcr = new Jcr(oak); Repository repo = jcr.createRepository(); Session session = null; try { InputStream is = new ByteArrayInputStream(document_small); session = repo.login(new SimpleCredentials("admin", "admin".toCharArray())); ValueFactory valueFactory = session.getValueFactory(); Binary data = valueFactory.createBinary(is); Node root = session.getRootNode(); root.addNode("hello", NodeType.NT_UNSTRUCTURED); session.save(); // Logout } catch (LoginException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (RepositoryException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (session != null) session.logout(); ns.dispose(); } } private DocumentNodeStore getRDBDocumentNodeStore(DocumentMK.Builder builder) { DocumentNodeStore ns = null; if (builder == null) { ns = new DocumentMK.Builder().setRDBConnection(ds).getNodeStore(); } else { ns = builder.setRDBConnection(ds).getNodeStore(); } return ns; } private BlobStore createFileSystemBlobStore() { try { FileUtils.deleteDirectory(new File("/var/tmp/oak")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } FileBlobStore store = new FileBlobStore("/var/tmp/oak"); return store; } [cid:image002.png@01D1747C.2AE9FF00] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797<tel:%2B39%20049%208979797> | fax +39 049 8978800<tel:%2B39%20049%208978800> | cel. +39 3299060325<tel:%2B39%203299060325> e-mail: francesco.anc...@siav.it<mailto:francesco.anc...@siav.it> |
critical question about oak: db connection
We are using latest stable oak version In the case i'm sending you we have tried on postgres 9.4 We have simplified the class but now the error is the same we found on Oracle. Class connect to database and write a lot of system rows (system nodes...) but when i create repository there is the error Could you give us a complete example that works on Oracle 12 and Postgres 9.4 ? Is Postgres 9.4 correct version ? Thanks Best regards @Autowired @Qualifier("oakPostgresDataSource") private DataSource ds; @Test public void test() { final DocumentMK.Builder builder = new DocumentMK.Builder(); builder.setBlobStore(createFileSystemBlobStore()); final DocumentNodeStore ns = getRDBDocumentNodeStore(builder); Oak oak = new Oak(ns); Jcr jcr = new Jcr(oak); Repository repo = jcr.createRepository(); Session session = null; try { InputStream is = new ByteArrayInputStream(document_small); session = repo.login(new SimpleCredentials("admin", "admin".toCharArray())); ValueFactory valueFactory = session.getValueFactory(); Binary data = valueFactory.createBinary(is); Node root = session.getRootNode(); root.addNode("hello", NodeType.NT_UNSTRUCTURED); session.save(); // Logout } catch (LoginException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (RepositoryException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (session != null) session.logout(); ns.dispose(); } } private DocumentNodeStore getRDBDocumentNodeStore(DocumentMK.Builder builder) { DocumentNodeStore ns = null; if (builder == null) { ns = new DocumentMK.Builder().setRDBConnection(ds).getNodeStore(); } else { ns = builder.setRDBConnection(ds).getNodeStore(); } return ns; } private BlobStore createFileSystemBlobStore() { try { FileUtils.deleteDirectory(new File("/var/tmp/oak")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } FileBlobStore store = new FileBlobStore("/var/tmp/oak"); return store; } [cid:image002.png@01D1747C.2AE9FF00] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with
R: Critical questions about OAK
We have used "Oracle 11.2 Express Edition" and Potgres 9.4 I'll send again the 2 logs but, can we have a matrix software compatibility for RDBMS that OAK supports ? Thanks in advance. Best regards -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: martedì 1 marzo 2016 18:59 A: oak-dev@jackrabbit.apache.org Oggetto: Re: Critical questions about OAK On 2016-03-01 16:33, Ancona Francesco wrote: > Hello, > > i'm very sorry but we have 2 big problem to solve if we want to > continue our project with oak platform. > > The first is that we can't manage to save on RDBMS neither metadata > nor binary. > > We tried both postgres and Oracle with a simple class that load a > simple node (is similar to the class in "getting start") > > In Oracle and in postgres we have a problem when we create a repository: > > Repository repo = jcr.createRepository(); > > I add to this mail 2 files that describe in detail these 2 errors > > This is a critical issue, cause some clients want to use an RDBMS; > besides should be very easy store in a RDBMS so we are a little perplexed. > ... Interesting enough, the exceptions for the two databases are very different. Again, please check the log files for any output of RDBDocumentStore and post it here. We test both with Oracle (12!, and that is important...) and Postgres, and we do not see these exceptions. You can verify that yourself by running the OAK unit tests. This means that something likely is different in the way you configure things (maybe the datasource implementation?, isolation levels?). So again, check the logs, or try to reproduce your problems inside the Oak unit test framework, so we can more easily investigate them. Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
info on queries and index
Hello, we'd like to study in deep queries and index. In particular is not so clear, from documentation, what is indexed by default. For instance if i create a new type of document (IdentityCard with name IDC) with 2 new properties (idCard and idGeneralAnagrafic) are these data (ie metadata) indexed ? And in that case the search is delegated to db (mongo or postgres that store metadata) or is delegated to solr or lucene ? Finally, if we store a few million documents, what kind of strategy would you suggest for the search? Thanks in advance, best regards [cid:image002.png@01D16FF3.972A1A70] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797
R: R: info about oak and RDMBS
Hi, to answer your question, I’d manually delete all the tables in the posgresql db before running the test, so the stacktrace is relative to a fresh start. On a second run, without deleting the tables, I had a different type of exception. Best regards -Messaggio originale- Da: Alex Parvulescu [mailto:alex.parvule...@gmail.com] Inviato: giovedì 25 febbraio 2016 12:16 A: Oak devs <oak-dev@jackrabbit.apache.org> Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: R: info about oak and RDMBS Hi, I would add making sure the test uses a clean slate each time, meaning you drop the db at the end and/or create fresh unique ones each time the test runs (I don't see this happening in the current snippet). this would protect you against weird artifacts. alex On Thu, Feb 25, 2016 at 11:43 AM, Julian Reschke <julian.resc...@gmx.de> wrote: > On 2016-02-25 11:30, Ancona Francesco wrote: > >> Yes. >> >> We tried the following combination: >> 1) metadata on mongo and binary mongo >> 2) metadata on mongo and binary using filesystem >> >> Best regards >> > > It looks like the repository construction doesn't work (nodetype index > missing). > > Can you double-check that your code for Mongo really has the same steps? > > Best regards, Julian > > > > > > > This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
R: R: info about oak and RDMBS
Hi, I had run the same test changing only the DocumentNodeStore type as in the following code: final DocumentMK.Builder builder = new DocumentMK.Builder(); builder.setBlobStore(createFileSystemBlobStore()); final DocumentNodeStore ns = getMongoDocumentNodeStore(builder); private DB db = new MongoClient("127.0.0.1", 27017).getDB("test2"); private DocumentNodeStore getMongoDocumentNodeStore(DocumentMK.Builder builder) { DocumentNodeStore ns = null; if (builder == null) { ns = new DocumentMK.Builder(). setMongoDB(db).getNodeStore(); } else { ns = builder. setMongoDB(db).getNodeStore(); } return ns; } With mongo i had run the test without errors. Best regards -Messaggio originale- Da: Julian Reschke [mailto:julian.resc...@gmx.de] Inviato: giovedì 25 febbraio 2016 11:44 A: oak-dev@jackrabbit.apache.org Cc: Diquigiovanni Simone <simone.diquigiova...@siav.it> Oggetto: Re: R: info about oak and RDMBS On 2016-02-25 11:30, Ancona Francesco wrote: > Yes. > > We tried the following combination: > 1) metadata on mongo and binary mongo > 2) metadata on mongo and binary using filesystem > > Best regards It looks like the repository construction doesn't work (nodetype index missing). Can you double-check that your code for Mongo really has the same steps? Best regards, Julian This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
info about oak and RDMBS
Hi, i wrote yesterday that we are making a lots of performance test on oak and jackrabbit in order to select our target platform. We are going to try with several plane tests; one of them is using oak with RDBMS Postgres to store metadata. We found an exception when save a new node (root.addNode("hello").setProperty("count", 1);) Our driver postgres is: datasource org.postgresql postgresql 9.4.1207.jre7 Can you help us? Thanks in advance. Best regards Class detail: @Test @ContextConfiguration(locations = { "classpath:spring-test-config.xml" }) public class OakPostgresTest extends AbstractTestCommons { @Autowired @Qualifier("oakDataSource") private DataSource ds; @Test public void test() { final DocumentMK.Builder builder = new DocumentMK.Builder(); builder.setBlobStore(createFileSystemBlobStore()); final DocumentNodeStore ns = getPosgresDocumentNodeStore(builder); Oak oak = new Oak(ns); Jcr jcr = new Jcr(oak); Repository repo = jcr.createRepository(); Session session = null; try { InputStream is = new ByteArrayInputStream(document_small); session = repo.login(new SimpleCredentials("admin", "admin".toCharArray())); ValueFactory valueFactory = session.getValueFactory(); Binary data = valueFactory.createBinary(is); Node root = session.getRootNode(); if (root.hasNode("hello")) { Node hello = root.getNode("hello"); long count = hello.getProperty("count").getLong(); if (count > 1) { hello.remove(); System.out.println("delete the hello node"); } else { hello.setProperty("count", count + 1); hello.setProperty("data", data); System.out.println("found the hello node, count = " + count); } } else { System.out.println("creating the hello node"); root.addNode("hello").setProperty("count", 1); } session.save(); // Logout } catch (LoginException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (RepositoryException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (session != null) session.logout(); ns.dispose(); } } private DocumentNodeStore getPosgresDocumentNodeStore(DocumentMK.Builder builder) { DocumentNodeStore ns = null; if (builder == null) { ns = new DocumentMK.Builder().setRDBConnection(ds).getNodeStore(); } else { ns = builder.setRDBConnection(ds).getNodeStore(); } return ns; } private BlobStore createFileSystemBlobStore() { try {
R: R: info about jackrabbitoak.
I have seen in the springboot standalone example, that the project depends on felix (osgi) dependency. Is it possible to have a standalone project without osgi dependency and an external configuration comparable with the osgi configuration? Thanks in advance, best regards -Messaggio originale- Da: Michael Marth [mailto:mma...@adobe.com] Inviato: martedì 23 febbraio 2016 19:34 A: oak-dev@jackrabbit.apache.org Oggetto: Re: R: info about jackrabbitoak. Hi, I am not a committer, so this is not an authoritative answer: 1. Could you give jackrabbit and jackrabbitoak roadmap (when the fusion is expected)? Jackrabbit is the reference implementation for JSR-283. As such it needs to cover the breadth of the full spec. Oak on the other hand implements a part of the spec only (what the committers consider the most useful features) and focusses on scalability. As such, I do not think those 2 efforts should merge, given the different goals. 2. Have you got clients that use jackrabbit oak ? Oak is being used in Adobe’s Experience Manager product which has a lot of deployments 3. Is there any company that can give support on jackrabbit oak ? Not to my knowledge. 4. Could you give us stress test result (if you have) Scalability and performance tests are very much depending on the exact workload (read, write, payload type, query, etc). To get meaningful results for your case it makes sense to tweak the existing test suite to your needs. [1] Re a non-Osgi setup please see [2] HTH Michael [1] https://github.com/apache/jackrabbit-oak/tree/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark [2] https://github.com/apache/jackrabbit-oak/tree/trunk/oak-examples/standalone From: Ancona Francesco <francesco.anc...@siav.it<mailto:francesco.anc...@siav.it>> Reply-To: "oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org>" <oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org>> Date: Tuesday 23 February 2016 03:09 To: "oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org>" <oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org>> Subject: R: info about jackrabbitoak. Hi, in the previous mail i forgot the following questions: · Our runtime target is j2ee container but i read that the correct runtime for Oak is OSGI. Is it true? If OSGI runtime is the best solution, what do you suggest to execute Oak in our enviroment: - Wildfly with osgi subsystem to run also Oak services ? - Embed felix ? Thanks in advance Best regards Da: Ancona Francesco Inviato: lunedì 22 febbraio 2016 16:29 A: 'oak-dev@jackrabbit.apache.org<mailto:'oak-dev@jackrabbit.apache.org>' <oak-dev@jackrabbit.apache.org<mailto:oak-dev@jackrabbit.apache.org>> Oggetto: info about jackrabbitoak. Hello. I’m Francesco Ancona; i’m Senior Software Architect in Siav S.p.A. we are a company in ECM arena and we are upgrading and extending our business and technical offer to our clients either in SaaS or on premise. Now we are in .net enviroment but we wish migrate to java and we are looking for a ecm platform open source on which building our services. We have, for instance, client such as Bank of Italy or Menarini; we have installation that manage also 250M of documents. So we are looking for an ECM framework to start implementation. Actual software selection involves: modshape, jackrabbit and jackrabbitoak. In particular we’d like to know: 1. Could you give jackrabbit and jackrabbitoak roadmap (when the fusion is expected)? 2. Have you got clients that use jackrabbitoak ? 3. Is there any company that can give support on jackrabbitoak ? 4. Could you give us stress test result (if you have) Thanks in advance Best regards [cid:image001.png@01D16E31.1ADC40B0] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it<mailto:francesco.anc...@siav.it> | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. – s...@siav.it<mailto:s...@siav.it> – 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosu
R: info about jackrabbitoak.
Hi, in the previous mail i forgot the following questions: · Our runtime target is j2ee container but i read that the correct runtime for Oak is OSGI. Is it true? If OSGI runtime is the best solution, what do you suggest to execute Oak in our enviroment: - Wildfly with osgi subsystem to run also Oak services ? - Embed felix ? Thanks in advance Best regards Da: Ancona Francesco Inviato: lunedì 22 febbraio 2016 16:29 A: 'oak-dev@jackrabbit.apache.org' <oak-dev@jackrabbit.apache.org> Oggetto: info about jackrabbitoak. Hello. I'm Francesco Ancona; i'm Senior Software Architect in Siav S.p.A. we are a company in ECM arena and we are upgrading and extending our business and technical offer to our clients either in SaaS or on premise. Now we are in .net enviroment but we wish migrate to java and we are looking for a ecm platform open source on which building our services. We have, for instance, client such as Bank of Italy or Menarini; we have installation that manage also 250M of documents. So we are looking for an ECM framework to start implementation. Actual software selection involves: modshape, jackrabbit and jackrabbitoak. In particular we'd like to know: 1. Could you give jackrabbit and jackrabbitoak roadmap (when the fusion is expected)? 2. Have you got clients that use jackrabbitoak ? 3. Is there any company that can give support on jackrabbitoak ? 4. Could you give us stress test result (if you have) Thanks in advance Best regards [cid:image001.png@01D16E31.1ADC40B0] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it<mailto:francesco.anc...@siav.it> | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it<mailto:s...@siav.it> - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it<mailto:s...@siav.it> - 049 8979797
info about jackrabbitoak.
Hello. I'm Francesco Ancona; i'm Senior Software Architect in Siav S.p.A. we are a company in ECM arena and we are upgrading and extending our business and technical offer to our clients either in SaaS or on premise. Now we are in .net enviroment but we wish migrate to java and we are looking for a ecm platform open source on which building our services. We have, for instance, client such as Bank of Italy or Menarini; we have installation that manage also 250M of documents. So we are looking for an ECM framework to start implementation. Actual software selection involves: modshape, jackrabbit and jackrabbitoak. In particular we'd like to know: 1. Could you give jackrabbit and jackrabbitoak roadmap (when the fusion is expected)? 2. Have you got clients that use jackrabbitoak ? 3. Is there any company that can give support on jackrabbitoak ? 4. Could you give us stress test result (if you have) Thanks in advance Best regards [cid:image002.png@01D16D8E.22418D40] Francesco Ancona | Software Dev. Dept. (SP) - Software Architect tel. +39 049 8979797 | fax +39 049 8978800 | cel. +39 3299060325 e-mail: francesco.anc...@siav.it | www.siav.it I contenuti di questa e-mail e dei suoi allegati sono confidenziali e riservati esclusivamente ai destinatari. L'utilizzo per qualunque fine del presente messaggio e degli allegati così come la relativa divulgazione senza l'autorizzazione del mittente sono vietati. Se avete ricevuto questa e-mail per errore, vi preghiamo di distruggerla e di comunicarcelo. I dati personali sono trattati esclusivamente per le finalità della presente comunicazione in conformità con la legislazione vigente (D.lgs. 196/2003 "Codice Privacy"). Per informazioni: SIAV S.p.A. - s...@siav.it - 049 8979797 The contents of this e-mail and its attachments are confidential and reserved exclusively to the recipients. The use for any purpose of this message and attachments as well as its disclosure without the consent of the sender is prohibited. If you have received this email in error, please destroy it and notify us. Personal data shall be processed solely for the purposes of this notice in accordance with current legislation (Legislative Decree no. 196/2003 "Code"). For more information: SIAV S.p.A. - s...@siav.it - 049 8979797