I found the answer.
I have set the default parent to the object in context. Now they
became same entity group.



On Dec 18, 11:57 am, SivaTumma <[email protected]> wrote:
> I am taking this opportunity to ask one more question in this context.
> (  Ikai L, Pls suggest. )
>
> I am having an object which has a reference property - Many-to-One to
> an object for which I would like to know the feelings of the users.
>
> I am using memcache to increment a feeling name
>        object = object()
>        object.reference = db.get(self.request.get('key-stored-in-
> html')
>        object.updateFeeling(self.request.get('feeling'))
>
> This updateFeeling does check the memcache and does like this:
>         memcache.incr (FeelingShardName)
>
> I am getting an error saying that a transaction should not be done
> with different entity groups.(FeelingShardName, objectEntity,
> referenceEntity).
>
> I know it is complex to think into other's code, but shall look this
> thread for a while if I can find a suggestion.
>
> On Dec 11, 11:04 pm, "Ikai L (Google)" <[email protected]> wrote:
>
>
>
> > INCR is atomic. An application should not be connected to multiple memcache
> > servers because key sharding will cause certain keys to have an affinity for
> > certain instances of memcache.
>
> > Expiration works in Memcache lazily if items have not been evicted from the
> > cache in according with LRU (Least Recently Used): on a GET of a value, the
> > client checks the expiration to see if the item has expired or not. If so,
> > the value is not returned to the user and is explicitly expired. Incremented
> > values are stored in Memcache as Strings, so in your example, what *should*
> > happen is that an expiration is set such that when you do a GET, if the
> > value is past its expiration time, it will not return. Have you been seeing
> > different behavior in your testing?
>
> > On Thu, Dec 10, 2009 at 12:26 PM, N Panar 
> > <[email protected]>wrote:
>
> > > memcache.incr() is supposed to increment a key transactionally, so
> > > that two clients can't clobber each other ... but can the application
> > > expect to be connected to ever be connected to more than one memcache
> > > server that each have different values? (it is expected that is
> > > possible that it will be connected to zero memcache servers).
>
> > > Also, how does expiration interact with incr()? There isn't a time
> > > flag for incr(), but what happens if I add the key with another call
> > > rather than using the initial_value flag, like so:
>
> > >    memcache.add('rlcnt-%s-%s' % (op, ip_h), 0, time=60*90)
> > >    newcnt = memcache.incr('rlcnt-%s-%s' % (op, ip_h))
>
> > > --
>
> > > You received this message because you are subscribed to the Google Groups
> > > "Google App Engine" group.
> > > To post to this group, send email to [email protected].
> > > To unsubscribe from this group, send email to
> > > [email protected]<google-appengine%2Bunsubscrib
> > >  [email protected]>
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/google-appengine?hl=en.
>
> > --
> > Ikai Lan
> > Developer Programs Engineer, Google App Engine

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine" 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/google-appengine?hl=en.


Reply via email to