Bug 1299864 - Incorrect results from "Edit Release Components"
Summary: Incorrect results from "Edit Release Components"
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: Bugzilla
Classification: Community
Component: Extensions
Version: 4.4
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
Assignee: Jeff Fearn 🐞
QA Contact: tools-bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-01-19 12:41 UTC by Tom Lavigne
Modified: 2017-01-13 04:57 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-01-13 04:57:00 UTC
Embargoed:


Attachments (Terms of Use)

Description Tom Lavigne 2016-01-19 12:41:22 UTC
Description of problem:

I've started seeing some flakiness in the "edit release components" screen.  I'm a frequent user of this functionality for RHEL6 and RHEL7 releases (currently working on 6.8), and I have recently seen 2 incorrect results.

1) I added a new component to "current approved components", it told me it was added, but it wasn't there.

2) I removed a component from the "current approved components", i got the confirmation mail that it was removed.  Then I removed 4 more components with a single "save approved", and the confirmation message told me that it removed the 4 components AND that it added back the one I had removed in the previous action (which I did NOT do).

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Tom Lavigne 2016-01-20 12:49:03 UTC
I can't say with 100% certainty that this isn't a user error, so I'm closing the bug.  The info is here in case you hear of anything similar.  In trying to explain #2 above, I wonder if I perhaps had 2 tabs open and made one change in the 1st tab and the second in another.   If I see anything more, I'll reopen the bug.

Comment 2 Whitney Chadwick 2016-02-17 01:56:25 UTC
I am re-opening this bug, as I am seeing similar behavior to what is described above.  I add a group of components and hit save.  Status comes back and says the components were added, but a group of others was removed (and I had not made that change).

Comment 3 Jeff Fearn 🐞 2016-02-22 01:41:59 UTC
Just tested this on partner using Firefox and it seems to work properly.

Might have to get QE to bash on it to see if they can break it. qgong do you have time to do some testing on this?

Comment 4 Rony Gong 🔥 2016-02-22 02:41:03 UTC
(In reply to Whitney Chadwick from comment #2)
> I am re-opening this bug, as I am seeing similar behavior to what is
> described above.  I add a group of components and hit save.  Status comes
> back and says the components were added, but a group of others was removed
> (and I had not made that change).

I can' duplicate this issue too. I think you had 2 tabs open and made one change in the 1st tab and mad another other change in the 2nd tab. And you clicked the 'submit change' in the Mid-air collision page of the 2nd tab, so this will cause 1st tab's changes to be overwritten.

Feel free to contact with me when you are not agree with above idea.

Comment 5 Whitney Chadwick 2016-03-07 13:32:09 UTC
I am confirming that I did not have 2 windows open.  It has happened multiple times.

Comment 6 Tom Lavigne 2016-08-15 17:16:22 UTC
Raising priority, I'm seeing this again, this operation is not reliable.

I did NOT have 2 windows or tabs open, I was doing multiple ACL updates for RHEL 6.9 in the same tab and encountered the issue.  Here is the output from the 2ND addition I tried:


approved
    Removed: java-1.8.0-openjdk, hwdata, gdb, device-mapper-multipath
    Added: virt-manager, rsyslog7, virt-what, spice-vdagent, setroubleshoot 

The "removed" list is the list of components I added in the previous update (about 30 seconds earlier).

Comment 7 Jeff Fearn 🐞 2016-08-15 22:27:21 UTC
Hi Rony, did you test this on a web server with a clustered DB? It's a shot in the dark, but it might be worth testing this on the QE cluster.

Comment 8 Rony Gong 🔥 2016-08-16 02:35:08 UTC
(In reply to Jeff Fearn from comment #7)
> Hi Rony, did you test this on a web server with a clustered DB? It's a shot
> in the dark, but it might be worth testing this on the QE cluster.

It isn't easy for me to test this on the qe cluster server, 
https://bugzilla-qe-05.host.stage.eng.rdu2.redhat.com
https://bugzilla-qe-06.host.stage.eng.rdu2.redhat.com
connect to the same pgpool virtual host, So
1. I just access 05 or 06 and do the test, they works well
2. But when I access 05 and 06 in 2 tabs, and do changes in one tab(05), then do changes in another tab(06), there always prompt me the conflict exist.

Please note that we don't have proxy balance server that could let me access both 05 and 06 randomly.

Comment 9 Jeff Fearn 🐞 2016-09-01 09:49:18 UTC
The next time this happens can someone forward me the related emails? I'm hoping there is something in them that either gives me a hint of the problem or a hint of what narrow down a search through the logs.

Comment 10 Jeff Fearn 🐞 2016-09-29 11:51:19 UTC
(In reply to Tom Lavigne from comment #6)
> The "removed" list is the list of components I added in the previous update
> (about 30 seconds earlier).

Hmm this is interesting; due to the way Bugzilla processes input, if something is missing it's considered to have been deleted.

I wonder if there is some caching or something happening so that the browser doesn't update the "current approved components" list it's displaying, so the second commit looks like a delete because the components added in the first commit aren't in the list.

Comment 11 Jeff Fearn 🐞 2016-12-08 05:20:16 UTC
I can get this to happen inconsistently.

On Bugzilla 5 I get the mid air collision page:

Someone else has made changes at the same time you were trying to. The changes made were:

Who 	When 	What 	Removed 	Added
jfearn 	2016-12-08 05:08:46 UTC 	approved 		Cython, ConsoleKit, 389-ds-base 

Run at 05:09:12 UTC.



hmm and if you just add things and pause then repeat eventually you get:

Who 	When 	What 	Removed 	Added
jfearn 	2016-12-08 05:14:08 UTC 	capacity 		DeviceKit-power
jfearn 	2016-12-08 05:14:37 UTC 	capacity 	DeviceKit-power 	
jfearn 	2016-12-08 05:15:30 UTC 	approved 		DeviceKit-power
jfearn 	2016-12-08 05:15:54 UTC 	approved 		Documentation
jfearn 	2016-12-08 05:16:18 UTC 	approved 		Driver Update Disk

Comment 12 Jeff Fearn 🐞 2016-12-08 06:22:19 UTC
I think this is due to the database servers having different times and the "select now()" being read can get sent to a server with an older time.

Comment 13 Jeff Fearn 🐞 2016-12-08 07:02:12 UTC
Hi Tom, Ops has checked the clocks on the databases and they are all in sync ATM, can you still reproduce this?

I can't see any other way this could be triggered, but if it's still happening for you I will beat on the code some more and see if anything else pops up. I can't reproduce on the devel cluster once the clocks are synced.

The QE cluster times are also in sync.

Comment 14 Tom Lavigne 2016-12-08 12:36:53 UTC
I have not seen the problem recently (probably since my last report), but I'm currently in the part of the release cycle where I only do occasional ACL updates, with minor changes in each.  If I see it again, I'll report it.

Comment 15 Jeff Fearn 🐞 2017-01-13 04:57:00 UTC
Deferring until we can replicate this.


Note You need to log in before you can comment on or make changes to this bug.