Okay, so you didn't really answer my question then, maybe I wasn't clear.

Before second save:
true - getIsDirty()
true - getTagsIsLoaded()

--> dump out the tags - are all the tags there?
--> add some more tags
--> dump it again, are the tags there?

After second save (save fails):
false - getIsDirty()
false - getTagsIsLoaded()

--> dump it again, I assume the tags that were added are now gone?

Mark


On Tue, Nov 3, 2009 at 12:06 PM, whostheJBoss <dotfus...@changethings.org>wrote:

>
> That's why I'm asking you :)
>
> If I use addTags() and then save it, a dump of the object shows no new
> tags.
>
> However, if I use addTags() and then dump the object, before saving,
> there are tags...
>
> On Nov 2, 4:25 pm, Mark Mandel <mark.man...@gmail.com> wrote:
> > That doesn't make sense how an add/remove doesn't fire on the object...
> even
> > if the data is all wonky, the add/remove should still work.  the proxy()
> > method on the ObjectProxy always goes *somewhere* even if that somewhere
> > goes to an error.
> >
> > Mark
> >
> > On Tue, Nov 3, 2009 at 11:21 AM, whostheJBoss <
> dotfus...@changethings.org>wrote:
> >
> >
> >
> >
> >
> >
> >
> > > addTags() works the first time, when I dump getTagsArray() after the
> > > first save, they show up.
> >
> > > Any add or remove after that is not reflected in the object.
> >
> > > On Nov 2, 4:09 pm, Mark Mandel <mark.man...@gmail.com> wrote:
> > > > So what happens between:
> >
> > > > Before second save:
> > > > true - getIsDirty()
> > > > true - getTagsIsLoaded()
> >
> > > > --> dump out the tags - are all the tags there? or did addTags() not
> > > work?
> >
> > > > After second save (save fails):
> > > > false - getIsDirty()
> > > > false - getTagsIsLoaded()
> >
> > > > What is weird is the getTagsIsLoaded() is being reset back to
> 'false',
> > > after
> > > > the save.
> >
> > > > Mark
> >
> > > > On Tue, Nov 3, 2009 at 11:00 AM, whostheJBoss <
> > > dotfus...@changethings.org>wrote:
> >
> > > > > Oops, I had a slight omission in the original post (or one of those
> > > > > following it, not sure at what point I came across this aspect of
> the
> > > > > behavior), the first addTags() after calling the array works,
> > > > > subsequent calls won't.
> >
> > > > > Sorry, so I meant when running the event that does the save a
> second
> > > > > time.
> >
> > > > > Order:
> > > > > 1.) Call an event that uses getTagsArray();
> > > > > 2.) Call an event that uses addTags(tag); to add a tag, the save
> works
> > > > > and tag shows up
> > > > > 3.) Call an event again that uses addTags(tag); to add a tag, the
> save
> > > > > does not work, tag does not show up
> >
> > > > > So, the first time I call the addTags() method after having called
> > > > > getTagsArray(), anything after that won't.
> >
> > > > > On Nov 2, 3:44 pm, Mark Mandel <mark.man...@gmail.com> wrote:
> > > > > > What is the second save? I only see one save in the original
> code?
> >
> > > > > > Mark
> >
> > > > > > On Tue, Nov 3, 2009 at 10:38 AM, whostheJBoss <
> > > > > dotfus...@changethings.org>wrote:
> >
> > > > > > > Before calling getTagsArray():
> > > > > > > false - getIsDirty()
> > > > > > > false - getTagsIsLoaded()
> >
> > > > > > > After calling getTagsArray():
> > > > > > > true - getIsDirty()
> > > > > > > true - getTagsIsLoaded()
> >
> > > > > > > Immediately after first save (save works):
> > > > > > > false - getIsDirty()
> > > > > > > true - getTagsIsLoaded()
> >
> > > > > > > Before second save:
> > > > > > > true - getIsDirty()
> > > > > > > true - getTagsIsLoaded()
> >
> > > > > > > After second save (save fails):
> > > > > > > false - getIsDirty()
> > > > > > > false - getTagsIsLoaded()
> >
> > > > > > > On Nov 2, 2:27 pm, Mark Mandel <mark.man...@gmail.com> wrote:
> > > > > > > > On Tue, Nov 3, 2009 at 9:25 AM, whostheJBoss <
> > > > > dotfus...@changethings.org
> > > > > > > >wrote:
> >
> > > > > > > > > Performance is horrid with that many objects. I have since
> > > switched
> > > > > to
> > > > > > > > > using a query for the large collections (which also fixes
> the
> > > > > original
> > > > > > > > > issue of this post). I had a 2900% increase in performance.
> I
> > > > > hadn't
> > > > > > > > > noticed the performance problems originally, since the
> objects
> > > were
> > > > > > > > > still in memory after creation, so they were loading
> instantly
> > > on
> > > > > the
> > > > > > > > > view page. After reinitializing my application and then
> trying
> > > to
> > > > > load
> > > > > > > > > the objects, the problem is apparent. I was only testing
> with 5
> > > or
> > > > > 10
> > > > > > > > > in the beginning so the problem floated by unnoticed, so
> I'm
> > > glad I
> > > > > > > > > switch to a query anyway. Still, the original many-to-many
> add
> > > /
> > > > > get
> > > > > > > > > array problem persists in the cases where I only have a few
> > > > > objects. I
> > > > > > > > > have been using a query for those as well, but would still
> like
> > > it
> > > > > to
> > > > > > > > > work through Transfer  if possible, as I would like to use
> some
> > > of
> > > > > the
> > > > > > > > > objects.
> >
> > > > > > > > Generally speaking setting up relationships so that they have
> a
> > > huge
> > > > > > > number
> > > > > > > > of objects is a bad idea...
> >
> > > > > > > > > To answer your question, yes, this is only happening when
> the
> > > > > objects
> > > > > > > > > are proxied. I will check the results of getIsDirty() and
> > > > > > > > > getTagsIsLoaded(), but I should let you know that I have
> tried
> > > > > > > > > running .loadTags(); before calling getTagsArray(), but the
> > > issue
> > > > > is
> > > > > > > > > unaffected. What results should I have for those two?
> >
> > > > > > > > Dirty should be 'true', and isLoaded() should also be true.
> >
> > > > > > > > > Oh, a sort of side-note, but having run these queries via
> TQL
> > > to
> > > > > patch
> > > > > > > > > the problem, I notice that they are run each time and are
> not
> > > > > cached.
> > > > > > > > > I have taken to copying the generated SQL from Transfer out
> > > into a
> > > > > > > > > normal <cfquery> so that I can enable caching when I need
> to.
> > > Is
> > > > > there
> > > > > > > > > a way to turn on caching for TQL queries?
> >
> > > > > > > > There isn't a way to cache TQL results as of yet.
> >
> > > > > > > > Mark
> >
> > > > > > > > --
> > > > > > > > E: mark.man...@gmail.com
> > > > > > > > T:http://www.twitter.com/neurotic
> > > > > > > > W:www.compoundtheory.com
> >
> > > > > > --
> > > > > > E: mark.man...@gmail.com
> > > > > > T:http://www.twitter.com/neurotic
> > > > > > W:www.compoundtheory.com
> >
> > > > --
> > > > E: mark.man...@gmail.com
> > > > T:http://www.twitter.com/neurotic
> > > > W:www.compoundtheory.com
> >
> > --
> > E: mark.man...@gmail.com
> > T:http://www.twitter.com/neurotic
> > W:www.compoundtheory.com
> >
>


-- 
E: mark.man...@gmail.com
T: http://www.twitter.com/neurotic
W: www.compoundtheory.com

--~--~---------~--~----~------------~-------~--~----~
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 transfer-dev@googlegroups.com
To unsubscribe from this group, send email to 
transfer-dev-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/transfer-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to