Skip to content

@Audit History not working expected. If two member changing state of object on same time, its showing wrong result.  #716

Open
@AkhileshManiTripathi

Description

@AkhileshManiTripathi

Issue Details

@Audit History not working expected. If two member changing state of object on same time, its showing wrong result.

Type of Issue (check one with "X")

[ X] Bug Report


## Current Behavior
Suppose there are two system user USER1 and USER2, There is a member whose detail (**mFName**) is going to change by USER1 and USER2.
Initial Details of Member – 
fName -> **memberFName**


Modified Date | Modified By | Changed Value | Changed To | Previous Value
-- | -- | -- | -- | --
03/27/2020 06:16 AM | USER2 | mFName | mFName22 | **mFName2**
03/27/2020 06:15 AM | USER1 | mFName | mFName11 | **mFName1**
03/27/2020 06:15 AM | USER2 | mFName | mFName2 | mFName1
03/27/2020 06:14 AM | USER1 | mFName | mFName1 |  




## Expected Behavior

Modified Date | Modified By | Changed Value | Changed To | Previous Value
-- | -- | -- | -- | --
03/27/2020 06:16 AM | USER2 | mFName | mFName22 | **mFName11**
03/27/2020 06:15 AM | USER1 | mFName | mFName11 | **mFName2**
03/27/2020 06:15 AM | USER2 | mFName | mFName2 | mFName1
03/27/2020 06:14 AM | USER1 | mFName | mFName1 |  




## How to Reproduce the Issue
### Steps to Reproduce
1.	Create a member Add form.
2.	Add some member to db.
3.	In Member core use @Audit for all fields
4.	Login with 2 user in system and try to edit the member Details.



### Code Snippet
@Domain(value = "member", includeListeners = { ListenerType.persistence })
@Repo(alias = " member ", value = Database.rep_mongodb, cache = Cache.rep_device)
@Getter @Setter @ToString(callSuper = true)
public class Member extends AbstractEntity.IdLong {
	
	private static final long serialVersionUID = 1L;
	
	@Audit(MemberAudit.class)
	private String memberId;

	@Audit(MemberAudit.class)
	private String mFName;
	
}
Form – 
@Model
		@Getter
		@Setter
		@MapsTo.Type(Member.class)
		public static class AddMemberForm {
								
			@TextBox
			@Label("MemberId ")
			@Path
			private String memberId;
			
			@TextBox
			@Path
			private String mFName;	
			
			@Config(url = "/p/member/_new")
@Button(style = Button.Style.PRIMARY, type = Button.Type.submit)
			@Label(value = "Add Member")
			private String save;
			
			
		}



# Environment Details
**1.3.2.M2**


* **Browser:**
All

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions