CID-1233090, CID-1233089: Synchronize on session object in ApiServer Signed-off-by: Rohit Yadav <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/bfa36c02 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/bfa36c02 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/bfa36c02 Branch: refs/heads/master Commit: bfa36c028049d2d3854d9c58a1fc9f9015e87a79 Parents: ec134cf Author: Rohit Yadav <[email protected]> Authored: Thu Sep 18 11:26:20 2014 +0200 Committer: Rohit Yadav <[email protected]> Committed: Thu Sep 18 11:26:20 2014 +0200 ---------------------------------------------------------------------- server/src/com/cloud/api/ApiServer.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/bfa36c02/server/src/com/cloud/api/ApiServer.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/api/ApiServer.java b/server/src/com/cloud/api/ApiServer.java index 4357230..4b770fc 100755 --- a/server/src/com/cloud/api/ApiServer.java +++ b/server/src/com/cloud/api/ApiServer.java @@ -937,13 +937,16 @@ public class ApiServer extends ManagerBase implements HttpRequestHandler, ApiSer response.setTimeout(session.getMaxInactiveInterval()); final String user_UUID = (String)session.getAttribute("user_UUID"); - session.removeAttribute("user_UUID"); response.setUserId(user_UUID); final String domain_UUID = (String)session.getAttribute("domain_UUID"); - session.removeAttribute("domain_UUID"); response.setDomainId(domain_UUID); + synchronized (session) { + session.removeAttribute("user_UUID"); + session.removeAttribute("domain_UUID"); + } + final Enumeration attrNames = session.getAttributeNames(); if (attrNames != null) { while (attrNames.hasMoreElements()) {
