We have 4 Servers and 1 Load Balancer. We have a very larger Intranet Application. Periodically when a user clicks the "Save" button to create a new set of data, which creates 1 record in 3 different tables, it will duplicate the record 4 times.
I contend that it is not an application issue because it takes about 2 to 3 minutes to create a set of data. User enters in some data on a page. Clicks the "Save" button.... Some validations occur. If no errors then a User Control pops up with a set of questions. Then they click the "OK" button on the User Control. Some more Validations occur. If no errors then the save process occurs.
Well the original record in each table got created with 3 replications. Between the Original and the 3rd replication was 14 seconds elapsed.
Server guy contends that is not possible with a Load Balancer.
What is your opinion?
In my opinion you should record fiddler session from such user. If form submission is handled by JS it is possible that because of mistake in event handling it is executing multiple times. It is also possible that user is frustrated while waiting and clicks multiple times.
Form submission is not handled by JS.
After entering data.
User clicks the save button on the "Aspx" form.
Some validations occur that would prevent a duplicate record from being. These validations call some stored procedures. IE 1st SP checks to see if the previous entry has an "End Date" entered. 2nd SP checks to see if another record exists and if so, checks to see if it has an "End date". If any of these tests fail, it returns an Error Message to the user.
If no Error message returns, then an "*.axcx" pops up with 5 check boxes. Cancel button just closes the popup with no action. the OK button only does something if 1 or more check boxes are selected. Once the OK button is selected, the popup closes and does some other validations. If no error messages popup, then that is when the when the records are created. They are created on the "Ok_clicked" event of the "axcx" dialog box. They Are Not Created On the Save Button Click Event. It is a 2 step process to prevent what you are suggesting.
User does not have the opportunity to click the OK box a second time much less a 3rd and 4th time since it immediately closes after clicking OK or Cancel.