Hello all -
This problem remember me a situation I solved couple months ago.

The step that took a lot of time was the setParentXXX by loading all related
children for each object (the o2m was lazy).
I finally find the undocumented parameter false (but vital!) :
setParentXXX(myParentObject, *false*). This had speed up my insertion.

And if I remember well the activation of cache or not didn't change anything
in my case.

Aurelien


2009/7/14 John Watson <[email protected]>

>
> Response inline...
>
> Thank you for the help,
>
> John
>
> On Jul 13, 6:17 pm, Mark Mandel <[email protected]> wrote:
> > You can disable caching.. but it's an overall setting, it's not per
> request
>
> yup, I found the doc for tweaking the cache settings in transfer.xml
>
> > (eek.. that's scary).
>
> If I may ask, why is temporarily disabling caching scary?
>
> >
> > All you can really do is discard objects you don't want to be cached for
> an
> > extended period.
>
> Ah, okay. I suppose I will have to write up the importer then. Darn...
>
> >
> > Mark
> >
> >
> >
> >
> >
> > On Tue, Jul 14, 2009 at 11:15 AM, John Watson <[email protected]>
> wrote:
> >
> > > Ah, makes sense.
> >
> > > Will there be a way to disable caching in the future?
> > > Either for the entire request, some way of toggling during the
> > > request, or flagging that you don't want the object to be cache.
> >
> > > John
> >
> > > On Jul 13, 6:02 pm, Mark Mandel <[email protected]> wrote:
> > > > In all seriousness - I wouldn't use Transfer for batch/bulk data
> import
> > > > operations, I would just use straight SQL.
> >
> > > > The fact that there is a cache there means it gets really, really,
> really
> > > > full as you insert new objects every time.
> >
> > > > That being said - I have seen people do this, but just discard the
> > > imported
> > > > object after they are done, and it has worked reasonably well, if
> time is
> > > > not a concern.
> >
> > > > Mark
> >
> > > > On Tue, Jul 14, 2009 at 10:55 AM, John Watson <[email protected]>
> > > wrote:
> >
> > > > > transfer.xml excerpt:
> > > > > <object name="invoice" table="tblInvoices">
> > > > >  <id name="invoiceId" type="numeric" />
> > > > >  <property name="invoiceNum" type="numeric" />
> > > > >  <property name="invoiceDate" type="date" />
> > > > >  <onetomany name="invoiceItem" lazy="true" proxied="true">
> > > > >    <link to="invoiceItem" column="fk_invoiceId" />
> > > > >    <collection type="array" />
> > > > >  </onetomany>
> > > > > </object>
> > > > > <object name="invoiceItem" table="tblInvoiceItems">
> > > > >  <id name="invoiceItemId" type="numeric" />
> > > > >  <property name="itemDesc" type="string" />
> > > > >  <property name="itemCost" type="numeric" />
> > > > > </object>
> >
> > > > > I'm then looping through a CSV file that contains a line of
> > > > > "invoiceNum,invoiceDate,itemDesc,itemCost"
> >
> > > > > read-in-csv
> > > > > loop-start
> > > > >  attempt to get invoice object
> > > > >  if not persisted
> > > > >   set invoiceDate
> > > > >   save invoice object
> > > > >  end if
> >
> > > > >  new invoiceItem object
> > > > >  set itemDesc
> > > > >  set itemCost
> > > > >  set parentInvoice to invoice
> > > > >  save invoiceItem
> > > > > loop-end
> >
> > > > > For ~500 invoiceItems, this does not complete in under 15 minutes.
> >
> > > > > If I however, remove the o2m relationship in the invoice object and
> > > > > add the fk_invoiceId as a property to invoiceItem, it takes only a
> > > > > couple minutes.
> >
> > > > --
> > > > E: [email protected]
> > > > T:http://www.twitter.com/neurotic
> > > > W:www.compoundtheory.com
> >
> > --
> > E: [email protected]
> > T:http://www.twitter.com/neurotic
> > W:www.compoundtheory.com
> >
>


-- 
Aurélien Deleusière
Mobile :  +33 (0)6 37 63 24 93

ad e-consulting
l'expertise 2.0

104, Grande Rue - 92310 Sèvres
Fax : + 33 (0)1 49 66 15 53
S.A.R.L. au capital de 8500€
R.C.S. Nanterre 50177609000018

--~--~---------~--~----~------------~-------~--~----~
Before posting questions to the group please read:
http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer

You received this message because you are subscribed to the Google Groups 
"transfer-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/transfer-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to