coding it as we speak (like bill 4th of july belly full of beer and bbq, man
these Southern clubs are weird)

Ok reading the spec.

1- It is clear that an invocation on remove or create in a transactional
context throws a Remove Exception (7.6 last point).  It also says that it
does it because it wants to keep the state diagram "EASY" a few pages before
(no other reason stated)... wow that's strange, again to me it makes little
sense.

anyway

2- Still in the points of 7.6 you will find that "if a rollback occurred the
bean instance may need to reset its conversational state back to the value
it had at teh beginning of the transaction".  Which very clearly indicates
that the bean is still active.  This also applies to the CMT+Sync case (we
are talking about after completion).  My conclusion on this is the following
but the spec is really superficial on this (the points are messy):

BMT: don't do jack since the bean knows that the transaction commits or not,
CMT+sync: notify and don't do more since the bean now knows that the
transaction rolled back
CMT no sync: here we could argue that the bean should be removed, I would in
fact agree since there is no callback and the bean is un-ware.  We are not
selection states based on transactional resolution.  I would argue that this
case could call for a transactional cache that automatically sets state N or
N+1 depending on commit or rollback.  They are purely symmetrical just move
to the next one if you commit (N+1) or not (N) if you rollback.

but for now I will add the 3 lines that implement the first part and do
nothing about the second since most cases are ok and the last one is really
an added feature.

ANYONE FANCY A COOL ADD-ON??? hmmm? a transactional cache for stateful beans
:) hmmm?  I would sell it $10 a pop, non spec required but clearly very
cool, ok you want me to spell it out? get on your keyboard and fucking
develop that fast transactional stateful cache, come on!

marcf

|-----Original Message-----
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of marc
|fleury
|Sent: Tuesday, July 03, 2001 5:46 PM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] remove transactional
|
|
||Danny O' is right about not trashing the Stateful bean on a
||rollback.  I was
||only thinking about Entities when I made that comment(as was probably
||Danch).  Actually, the spec infers that a Stateful bean is not registered
||with the TM unless it implements SessionSynchronization.
|
|yes that is the CMT+sync case I was refering to, the BMT case is even more
|clear cut imho...
|
|time to commit (without that part, I need to refresh on the spec)
|
|marcf
|
||
||Regards,
||Bill
||
||> -----Original Message-----
||> From: [EMAIL PROTECTED]
||> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
||> fleury
||> Sent: Tuesday, July 03, 2001 4:52 PM
||> To: [EMAIL PROTECTED]
||> Subject: RE: [JBoss-dev] remove transactional
||>
||>
||> so
||>
||> <fifteen minute time lapse>
||>
||> is the create the same? cannot be transactional??? or just remove?
||>
||> having problems with the new code as we speak
||>
||> marcf
||>
||> |-----Original Message-----
||> |From: [EMAIL PROTECTED]
||> |[mailto:[EMAIL PROTECTED]]On Behalf Of marc
||> |fleury
||> |Sent: Tuesday, July 03, 2001 4:26 PM
||> |To: [EMAIL PROTECTED]
||> |Subject: RE: [JBoss-dev] remove transactional
||> |
||> |
||> |chill pill bill...
||> |
||> |there is more fire coming, although when we volley back and
||> forth like this
||> |you must account for delivery lag,
||> |
||> |so everyone take a "chill pill bill" for 15 mins, when you come
||> back we are
||> |all synchronized :)
||> |
||> |ready ? so where are we, the requirements seems contradictorial
||> at least to
||> |me (but I didnt' take the chill pill and I want to finish the commits)
||> |
||> |marcf
||> |
||> ||-----Original Message-----
||> ||From: [EMAIL PROTECTED]
||> ||[mailto:[EMAIL PROTECTED]]On
|Behalf Of Bill
||> ||Burke
||> ||Sent: Tuesday, July 03, 2001 4:09 PM
||> ||To: [EMAIL PROTECTED]
||> ||Subject: RE: [JBoss-dev] remove transactional
||> ||
||> ||
||> ||Just in case you didn't see the last email,
||> ||
||> ||statefulbean.remove() results in an exception when the bean is
||> ||participating
||> ||within a transaction.  This is not allowed.  Please see the spec!
||> ||
||> ||Bill
||> ||
||> ||> -----Original Message-----
||> ||> From: [EMAIL PROTECTED]
||> ||> [mailto:[EMAIL PROTECTED]]On
||> Behalf Of marc
||> ||> fleury
||> ||> Sent: Tuesday, July 03, 2001 3:54 PM
||> ||> To: [EMAIL PROTECTED]
||> ||> Subject: RE: [JBoss-dev] remove transactional
||> ||>
||> ||>
||> ||> fair enough, by popular demand
||> ||>
||> ||> remove() is not a transactional operation then,
||> ||>
||> ||> you call it? the stateful bean is gone, gone I tell you!
||> ||>
||> ||> marcf
||> ||>
||> ||> |-----Original Message-----
||> ||> |From: [EMAIL PROTECTED]
||> ||> |[mailto:[EMAIL PROTECTED]]On
||> |Behalf Of danch
||> ||> |(Dan Christopherson)
||> ||> |Sent: Tuesday, July 03, 2001 3:35 PM
||> ||> |To: [EMAIL PROTECTED]
||> ||> |Subject: Re: [JBoss-dev] remove transactional
||> ||> |
||> ||> |
||> ||> |I agree with Bill - removing everything involved in the rolled-back
||> ||> |transaction from the cache is a must.
||> ||> |
||> ||> |-danch
||> ||> |
||> ||> |Bill Burke wrote:
||> ||> |
||> ||> |> Nope, with the old code, B would be removed from the cache when
||> ||> |b.remove()
||> ||> |> was called even if it was invoked from within a transaction.
||> ||Also, all
||> ||> |> beans involved with a transaction would be removed from the
||> |cache on a
||> ||> |> rollback within InstanceSynchronization.
||> ||> |>
||> ||> |> I think that is the safe and correct approach to remove any
||> ||> bean from the
||> ||> |> cache that is part of a rollback.  Otherwise you may have
||> ||> corrupted data.
||> ||> |>
||> ||> |> Bill
||> ||> |>
||> ||> |>
||> ||> |>>-----Original Message-----
||> ||> |>>From: [EMAIL PROTECTED]
||> ||> |>>[mailto:[EMAIL PROTECTED]]On
||> ||Behalf Of marc
||> ||> |>>fleury
||> ||> |>>Sent: Tuesday, July 03, 2001 2:57 PM
||> ||> |>>To: Jboss-Development@Lists. Sourceforge. Net
||> ||> |>>Subject: [JBoss-dev] remove transactional
||> ||> |>>
||> ||> |>>
||> ||> |>>as I wrap up the stuff, sanity check
||> ||> |>>
||> ||> |>>bean a and bean b
||> ||> |>>
||> ||> |>>a starts transaction and calls b.remove() and then rolls back
||> ||> |>>
||> ||> |>>b is still there in cache right?
||> ||> |>>
||> ||> |>>marcf
||> ||> |>>
||> ||> |>>_________________
||> ||> |>>Marc Fleury, Ph.D
||> ||> |>>[EMAIL PROTECTED]
||> ||> |>>_________________
||> ||> |
||> ||> |
||> ||> |
||> ||> |_______________________________________________
||> ||> |Jboss-development mailing list
||> ||> |[EMAIL PROTECTED]
||> ||> |http://lists.sourceforge.net/lists/listinfo/jboss-development
||> ||>
||> ||>
||> ||>
||> ||> _______________________________________________
||> ||> Jboss-development mailing list
||> ||> [EMAIL PROTECTED]
||> ||> http://lists.sourceforge.net/lists/listinfo/jboss-development
||> ||>
||> ||
||> ||
||> ||
||> ||_______________________________________________
||> ||Jboss-development mailing list
||> ||[EMAIL PROTECTED]
||> ||http://lists.sourceforge.net/lists/listinfo/jboss-development
||> |
||> |
||> |
||> |_______________________________________________
||> |Jboss-development mailing list
||> |[EMAIL PROTECTED]
||> |http://lists.sourceforge.net/lists/listinfo/jboss-development
||>
||>
||>
||> _______________________________________________
||> Jboss-development mailing list
||> [EMAIL PROTECTED]
||> http://lists.sourceforge.net/lists/listinfo/jboss-development
||>
||
||
||
||_______________________________________________
||Jboss-development mailing list
||[EMAIL PROTECTED]
||http://lists.sourceforge.net/lists/listinfo/jboss-development
|
|
|
|_______________________________________________
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to