Re: PortalCookieImpl: Necessary? Surgically removable?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: PortalCookieImpl: Necessary? Surgically removable?

Benito J. Gonzalez-2
Hi Andrew,

Looking forward to your test results. No idea the need.

Best,
--bjagg


From: "'Andrew Petro' via uPortal Community" <[hidden email]>
To: "uPortal Community" <[hidden email]>
Sent: Wednesday, September 25, 2019 6:54:25 AM
Subject: [uportal-user] Re: PortalCookieImpl: Necessary? Surgically removable?

Trying a shallow change of

1. Un-declared and un-mapped `createPortletCookieFilter` in web.xml
2. Un-declared `createPortletCookieFilter` bean in mvcContext.xml

That filter seemed to be creating cookies whether they were needed or not. So un-declaring it should stop prospectively creating and updating those cookies. Of course, if turned out they were needed, not proactively creating them would probably break something. But: so far, in a development tier, this doesn't obviously break uPortal as MyUW uses it.

I hope to promote this change along to MyUW production and see if it

1. Makes this error stop appearing in the logs, and
2. Seems to in general improve stability.

As ever,

Andrew

On Friday, June 28, 2019 at 4:44:00 PM UTC-5, Andrew Petro wrote:
Hi,

MyUW logs are (intermittently and currently) replete with stuff about 

ERROR [ajp-nio-8009-exec-5] o.j.p.web.ExceptionLoggingFilter 2019-06-28 16:33:49,501 - uPortal: unhandled exception 'Object of class [org.jasig.portal.portlet.dao.jpa.PortalCookieImpl] with identifier [73801878]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jasig.portal.portlet.dao.jpa.PortalCookieImpl#73801878]' for URL=/portal/p/my-hrs-portlet-roles.ctf1/max/rolesAsReport.resource.uP?pCc=cacheLevelPage, user=REDACTED , from IP=REDACTED
org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [org.jasig.portal.portlet.dao.jpa.PortalCookieImpl] with identifier [73801878]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jasig.portal.portlet.dao.jpa.PortalCookieImpl#73801878]

In the past, restarting* nodes has made this exception go away. Turn it off and turn it back on again, as it were.


Here's what I'm wondering

1. What's a PortalCookie and why do I need it? Differentially from a plain old JSESSIONID etc.?
2. How hard is it to stop needing it, and stop having it, along the lines of surgically removing an appendix.

I'll dig into this when I have time and update this thread with findings.

(MyUW is on uPortal 4.2.1.)

-Andrew

*: conceptually, restarting. Not literally restarting. MyUW uses Docker containers that are livestock not pets -- we don't patch or even restart them, we replace them.

--
You received this message because you are subscribed to the Google Groups "uPortal Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/a/apereo.org/d/msgid/uportal-user/c91b22f0-afa1-43fa-9168-39f9f8a494d5%40apereo.org.

--
You received this message because you are subscribed to the Google Groups "uPortal Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/a/apereo.org/d/msgid/uportal-user/208858918.7349383.1569586608835.JavaMail.zimbra%40unicon.net.