Thank you for the heads up. When it's time to think about delivery I'll be sure to create a PR against 3.1 and I presume you'd like me to leave master alone for now?

Regards
Benjamin




From:        Matej Novotny <manovotn@redhat.com>
To:        Benjamin Confino <BENJAMIC@uk.ibm.com>
Cc:        weld-dev@lists.jboss.org, Allan Zhang <zhang@ca.ibm.com>, Shinji Ohtsuka <EB92769@jp.ibm.com>, Emily Jiang <EMIJIANG@uk.ibm.com>
Date:        29/04/2020 09:51
Subject:        [EXTERNAL] Re: [weld-dev] Propagation of org.jboss.weld.context.ConversationContext.conversations through session failover




Hi,

I'll take a look later today.
Note that master branch is no longer Weld 3.x, it is 4.x (Jakarta EE 9) and the CI there is going bonkers yet as I am in the middle of changing it.
If you want to file a PR against Weld 3, you can use 3.1 branch for that.

Regards
Matej

----- Original Message -----
> From: "Benjamin Confino" <BENJAMIC@uk.ibm.com>
> To: weld-dev@lists.jboss.org
> Cc: "Allan Zhang" <zhang@ca.ibm.com>, "Shinji Ohtsuka" <EB92769@jp.ibm.com>, "Emily Jiang" <EMIJIANG@uk.ibm.com>
> Sent: Tuesday, April 28, 2020 2:31:44 PM
> Subject: [weld-dev] Propagation of org.jboss.weld.context.ConversationContext.conversations through session failover
>
> Hello weld
>
> I had a customer report that they were getting conversation not found
> exceptions when restarting their server and visiting a url with a ?cid=1
> suffix.
>
> After investigation I believe the issue is that weld was acquiring it's
> ConversationContext.conversations from the session database via
> com.ibm.ws.session.store.db.DatabaseSession.getMultiRowAppData(). Once weld
> had retrieved the conversations map it would then decide that since the map
> was already in the session attributes there was no need to put it back into
> the attributes.
>
> This means that Liberty did not realise the conversations map had been
> updated, and did not store it's updated state into the database when the
> server shut down again.
>
> I have submitted a pair of pull requests that asks weld to mark the
> conversation map as dirty upon access - this behaviour is gated behind
> ConfigurationKey.RESET_HTTP_SESSION_ATTR_ON_BEAN_ACCESS - I have tested it
> locally and it works. The next step is to prepare a test fix for the
> customer to verify. However I wanted to send you this quick note to keep you
> in the loop.
>
> Regards
> Benjamin
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>
> _______________________________________________
> weld-dev mailing list
> weld-dev@lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/weld-dev




Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU