Closed
Bug 1421805
Opened 8 years ago
Closed 7 years ago
When typing anything into a VM (virtual machine) launched in a browser window, extra characters appear
Categories
(Web Compatibility :: Site Reports, defect, P3)
Tracking
(Not tracked)
RESOLVED
DUPLICATE
of bug 1504692
People
(Reporter: thee.chicago.wolf, Assigned: stone, NeedInfo)
References
Details
(Keywords: regression)
User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 SeaMonkey/2.53
Build ID: 20171119140653
Steps to reproduce:
I have FF 57.0 x64 installed in Win 7 x64, fully updated. Connection is 70mb/6mb, Asus RT-AC68U, fully updated to latest firmware. I log into a VMware session and launched a VM in a pop-up window. Thought it was related to VMWare bug https://kb.vmware.com/s/article/196 but after applying the fix to my VMs, it made no difference.
I went back to test some earlier x64 FF57 Nightlies and found that using the nightly from 2017-09-07-10-03-18-mozilla-central/ worked ok. I then found things to be broken when using the build from 2017-09-07-22-02-12-mozilla-central/.
I tested with Portable Chrome 62.0.3202.94 and didn't see the issue. I tested with Portable FF 56 and didn't see the issue. I also tested with 57b3 and the issue was present. I lowered my typematic rate to the lowest it can go and it made no difference, issue still present.
Actual results:
I attempted to log into the VM via "Send CTRL-ALT-DEL" command and when entering the password, I can see it is adding repeat characters. I eventually am able to log into the VM by using the "reveal password" feature and open notepad. When I type into notepad (or anywhere in the VM), I see characters repeating such as aabcdeefgghhijkkl. It is adding duplicate characters though I am not pressing the keyboard twice, only once.
Expected results:
Typing should not repeat characters.
Updated•8 years ago
|
Component: Untriaged → Widget: Win32
Product: Firefox → Core
| Reporter | ||
Comment 1•8 years ago
|
||
I had a moment to run Mozgression and this is what I found:
Last good:
app_name: firefox
build_date: 2017-09-07 13:24:50.916000
build_file: C:\Users\Art\.mozilla\mozregression\persist\6aa1cc819058--mozilla-inbound--target.zip
build_type: inbound
build_url: https://queue.taskcluster.net/v1/task/erLrmQIcR8yGUZZXW5lK2g/runs/0/artifacts/public%2Fbuild%2Ftarget.zip
changeset: 6aa1cc819058deaa13f85278e2f5970b8ced0998
pushlog_url: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=6aa1cc819058deaa13f85278e2f5970b8ced0998&tochange=52433c05f30628771e15d72f87f51c9383f8372f
repo_name: mozilla-inbound
repo_url: https://hg.mozilla.org/integration/mozilla-inbound
task_id: erLrmQIcR8yGUZZXW5lK2g
First bad:
app_name: firefox
build_date: 2017-09-07 14:34:59.499000
build_file: C:\Users\Art\.mozilla\mozregression\persist\7e21f710ecec--mozilla-inbound--target.zip
build_type: inbound
build_url: https://queue.taskcluster.net/v1/task/Qpvi9EOZReyJf2YT2Fub9Q/runs/0/artifacts/public%2Fbuild%2Ftarget.zip
changeset: 7e21f710ecec4a16f1f23e7489bbb0eb3e45e462
pushlog_url: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=6aa1cc819058deaa13f85278e2f5970b8ced0998&tochange=7e21f710ecec4a16f1f23e7489bbb0eb3e45e462
repo_name: mozilla-inbound
repo_url: https://hg.mozilla.org/integration/mozilla-inbound
task_id: Qpvi9EOZReyJf2YT2Fub9Q
Nothing in the pushlog jumps out at me. Maybe bug 1390044 - Enable the input event queue on nightly
| Reporter | ||
Updated•8 years ago
|
Version: 56 Branch → 57 Branch
| Reporter | ||
Comment 2•8 years ago
|
||
I can confirm that flipping pref input_event_queue.supported" to false and restarting the browser fixes this for me. SO bug 1390044 seems to be it.
Flags: needinfo?(sshih)
| Reporter | ||
Comment 3•8 years ago
|
||
Just for the purposes of testing, I set input_event_queue.duration.max to 128 thinking the default of 8 was too short but it didn't help.
| Reporter | ||
Comment 4•8 years ago
|
||
So, I did further testing of the values of input_event_queue.duration.max and input_event_queue.duration.min. I initially set both max and min to 256 and things worked. I then set max to 64 and min to 32 and this seems to work for the VM I'm using. So, perhaps the default value of 1 for min and 8 for max may be too aggressive and not accounting for lag / latency in a VM or network? Just thinking out loud.
| Reporter | ||
Comment 5•8 years ago
|
||
Things worked with max @ 32 and @ 16 but broke when I tried max @ 16 and min @ 8. OMMV (Other's Mileage May Vary).
| Reporter | ||
Comment 6•8 years ago
|
||
(In reply to Arthur K. from comment #5)
> Things worked with max @ 32 and @ 16 but broke when I tried max @ 16 and min
> @ 8. OMMV (Other's Mileage May Vary).
Sorry, I meant to say things worked with max @ 32 and min @ 16.
| Reporter | ||
Comment 7•8 years ago
|
||
This does affect 58 as well. Track for 58?
| Assignee | ||
Updated•8 years ago
|
Assignee: nobody → sshih
Flags: needinfo?(sshih)
| Assignee | ||
Comment 8•8 years ago
|
||
Thanks for testing and providing the information.
| Assignee | ||
Comment 9•8 years ago
|
||
Do you know how to set up an environment as you use for testing? It seems I have to find a machine with Windows server and install 'VMware vCenter Server' on it?
Flags: needinfo?(thee.chicago.wolf)
| Reporter | ||
Comment 10•8 years ago
|
||
(In reply to Ming-Chou Shih [:stone] from comment #9)
> Do you know how to set up an environment as you use for testing? It seems I
> have to find a machine with Windows server and install 'VMware vCenter
> Server' on it?
Therein lies the rub. I am doing a Symantec ITMS training session and it uses some VMs running on labs.partnercloudlab.com's site. I can ask my instructor to reach out to the techs of this site who manage the VMs and see if they can do anything but no guarantee. Additionally, doesn't have to be Windows Server. One of the VMs is a Win 10 x64 VM. Anything you want me to try on my end while I have access to the VMs?
Flags: needinfo?(thee.chicago.wolf)
| Assignee | ||
Comment 11•8 years ago
|
||
(In reply to Arthur K. from comment #10)
> Therein lies the rub. I am doing a Symantec ITMS training session and it
> uses some VMs running on labs.partnercloudlab.com's site. I can ask my
> instructor to reach out to the techs of this site who manage the VMs and see
> if they can do anything but no guarantee. Additionally, doesn't have to be
> Windows Server. One of the VMs is a Win 10 x64 VM. Anything you want me to
> try on my end while I have access to the VMs?
So far I'm still trying to figure out what's going on and I may need your help if I found something that might cause this problem. Many thanks for your help.
I'm also wondering that when the problem happened, there are some extra repeated characters and no characters missing, right?
| Reporter | ||
Comment 12•8 years ago
|
||
(In reply to Ming-Chou Shih [:stone] from comment #11)
> (In reply to Arthur K. from comment #10)
> > Therein lies the rub. I am doing a Symantec ITMS training session and it
> > uses some VMs running on labs.partnercloudlab.com's site. I can ask my
> > instructor to reach out to the techs of this site who manage the VMs and see
> > if they can do anything but no guarantee. Additionally, doesn't have to be
> > Windows Server. One of the VMs is a Win 10 x64 VM. Anything you want me to
> > try on my end while I have access to the VMs?
>
> So far I'm still trying to figure out what's going on and I may need your
> help if I found something that might cause this problem. Many thanks for
> your help.
>
> I'm also wondering that when the problem happened, there are some extra
> repeated characters and no characters missing, right?
Yes, that's exactly right. No missing characters, just extra of the same character (i.e. aa, 11, ##, etc.).
So, the setting input_event_queue.duration.min, does it take precedence / order of operation before input_event_queue.duration.max? I only ask because in comment 3 I stated that I set input_event_queue.duration.max to 128 and it didn't make any difference. It was only when I increased input_event_queue.duration.min that the issue went away. Makes me think that we're never even making it to input_event_queue.duration.max at all? In which case, input_event_queue.duration=<min value> would seem to make sense. Again, just thinking out loud.
| Reporter | ||
Comment 13•8 years ago
|
||
(In reply to Ming-Chou Shih [:stone] from comment #9)
> Do you know how to set up an environment as you use for testing? It seems I
> have to find a machine with Windows server and install 'VMware vCenter
> Server' on it?
So my instructor did send a message to the managers of the VMs. We'll see what, if anything, comes of it.
| Assignee | ||
Comment 14•8 years ago
|
||
(In reply to Arthur K. from comment #12)
> So, the setting input_event_queue.duration.min, does it take precedence /
> order of operation before input_event_queue.duration.max? I only ask because
> in comment 3 I stated that I set input_event_queue.duration.max to 128 and
> it didn't make any difference. It was only when I increased
> input_event_queue.duration.min that the issue went away. Makes me think that
> we're never even making it to input_event_queue.duration.max at all? In
> which case, input_event_queue.duration=<min value> would seem to make sense.
> Again, just thinking out loud.
input_event_queue.duration.max and min control the at most/least time which we reserved for handling input events before the next paint. Enlarging input_event_queue.duration.min means we could handle the pending input events earlier.
| Reporter | ||
Comment 15•8 years ago
|
||
(In reply to Ming-Chou Shih [:stone] from comment #14)
> (In reply to Arthur K. from comment #12)
> > So, the setting input_event_queue.duration.min, does it take precedence /
> > order of operation before input_event_queue.duration.max? I only ask because
> > in comment 3 I stated that I set input_event_queue.duration.max to 128 and
> > it didn't make any difference. It was only when I increased
> > input_event_queue.duration.min that the issue went away. Makes me think that
> > we're never even making it to input_event_queue.duration.max at all? In
> > which case, input_event_queue.duration=<min value> would seem to make sense.
> > Again, just thinking out loud.
>
>Enlarging input_event_queue.duration.min means we could handle the pending input
> events earlier.
Taken from the change in the code commit:
// The maximum and minimum time (milliseconds) we reserve for handling input
// events in each frame.
pref("input_event_queue.duration.max", 8);
pref("input_event_queue.duration.min", 1);
It seems contrary to what you're saying. As I read it, it would seem that *increasing* the input_event_queue.duration.min value adds milliseconds to time before a new paint is done and therefore we handle pending input events later, not earlier. Which makes logical sense as to why adding milliseconds fixed this for me.
| Reporter | ||
Comment 16•8 years ago
|
||
(In reply to Arthur K. from comment #10)
> (In reply to Ming-Chou Shih [:stone] from comment #9)
> > Do you know how to set up an environment as you use for testing? It seems I
> > have to find a machine with Windows server and install 'VMware vCenter
> > Server' on it?
>
> Therein lies the rub. I am doing a Symantec ITMS training session and it
> uses some VMs running on labs.partnercloudlab.com's site. I can ask my
> instructor to reach out to the techs of this site who manage the VMs and see
> if they can do anything but no guarantee. Additionally, doesn't have to be
> Windows Server. One of the VMs is a Win 10 x64 VM. Anything you want me to
> try on my end while I have access to the VMs?
Goo news. I am in touch with a Symantec tech person who should be able to help! Please stay tuned.
| Assignee | ||
Comment 17•8 years ago
|
||
(In reply to Arthur K. from comment #16)
> (In reply to Arthur K. from comment #10)
> > (In reply to Ming-Chou Shih [:stone] from comment #9)
> > > Do you know how to set up an environment as you use for testing? It seems I
> > > have to find a machine with Windows server and install 'VMware vCenter
> > > Server' on it?
> >
> > Therein lies the rub. I am doing a Symantec ITMS training session and it
> > uses some VMs running on labs.partnercloudlab.com's site. I can ask my
> > instructor to reach out to the techs of this site who manage the VMs and see
> > if they can do anything but no guarantee. Additionally, doesn't have to be
> > Windows Server. One of the VMs is a Win 10 x64 VM. Anything you want me to
> > try on my end while I have access to the VMs?
>
> Goo news. I am in touch with a Symantec tech person who should be able to
> help! Please stay tuned.
That's great. Thanks for your help.
Comment 19•8 years ago
|
||
Ming-Chou,
Reach out to me privately, and I can send you credentials to access this specific lab environment to reproduce the issue.
| Assignee | ||
Comment 20•8 years ago
|
||
(In reply to Sean Gale from comment #19)
> Ming-Chou,
>
> Reach out to me privately, and I can send you credentials to access this
> specific lab environment to reproduce the issue.
Hi Sean,
I had sent an email to you and my email account is sshih@mozilla.com. Many thanks for your help.
Updated•8 years ago
|
Priority: -- → P2
| Assignee | ||
Comment 21•8 years ago
|
||
Hi Sean,
Please remind me when you send me the credentials, in case I miss it. Thanks.
Flags: needinfo?(sean_gale)
| Assignee | ||
Comment 22•8 years ago
|
||
Clear ni request since I already got credentials and can reproduce this bug now.
Flags: needinfo?(sean_gale)
| Assignee | ||
Comment 23•8 years ago
|
||
This bug is related to the implementation of the web VM console. I can't find any difference of dispatched keyboard events when the problem has happened. Guessing this may be related to the content, which posts async events when handling keyboard events.
| Assignee | ||
Comment 24•8 years ago
|
||
It seems the content setups a timer and appends the character when timeout. If the keypress event is handled after the timeout, then there are double characters.
| Assignee | ||
Comment 25•8 years ago
|
||
Wondering maybe someone knows the contact window of VMWare and could help to contact them for this bug?
Component: Widget: Win32 → Desktop
Product: Core → Tech Evangelism
Version: 58 Branch → Firefox 58
Comment 26•8 years ago
|
||
Reaching out to a friend that used to work for VMware. Will update when I hear back.
| Reporter | ||
Comment 27•8 years ago
|
||
(In reply to Adam Stevenson [:adamopenweb] from comment #26)
> Reaching out to a friend that used to work for VMware. Will update when I
> hear back.
So, 2 months later and no response?
Comment 28•8 years ago
|
||
Sorry, didn't hear back from the contact at VMWare.
Comment 29•8 years ago
|
||
Can you still reproduce the issue?
Flags: needinfo?(thee.chicago.wolf)
Priority: P2 → P3
| Reporter | ||
Comment 30•8 years ago
|
||
I don't have access to the system with the VM since last year so I cannot tell you.
Flags: needinfo?(thee.chicago.wolf)
Comment 31•8 years ago
|
||
Just installed firefox esr 60.1.0 and am now getting this double caracter thing again.... The keyboard settings in our Virtual machines have not changed and are still 2 second.
Thanks,
Dave
| Reporter | ||
Comment 32•8 years ago
|
||
(In reply to armisis from comment #31)
> Just installed firefox esr 60.1.0 and am now getting this double caracter
> thing again.... The keyboard settings in our Virtual machines have not
> changed and are still 2 second.
>
> Thanks,
> Dave
Does changing the setting as mentioned in comment 5 fix it for you?
Flags: needinfo?(armisis)
Comment 33•7 years ago
|
||
(In reply to Arthur K. from comment #32)
> (In reply to armisis from comment #31)
> > Just installed firefox esr 60.1.0 and am now getting this double caracter
> > thing again.... The keyboard settings in our Virtual machines have not
> > changed and are still 2 second.
> >
> > Thanks,
> > Dave
>
> Does changing the setting as mentioned in comment 5 fix it for you?
I can confirm this behavior in 62.0.2 with VMware vCenter 6.7GA and yes setting input_event_queue.duration.max to 32 and input_event_queue.duration.min to 16 then restarting the browser did get the VMware HTML5 console to work better.
Updated•7 years ago
|
Keywords: regression
Comment 34•7 years ago
|
||
From VMWare:
vCenter 6.7 U1 fixes this and it hit GA today. The release notes and KB articles should be updated soon to reflect this.
Please let me know if you get a chance to test.
Comment 35•7 years ago
|
||
Apoligies for the forward dupe, but we found the core problem.
Status: UNCONFIRMED → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Updated•7 years ago
|
Product: Tech Evangelism → Web Compatibility
You need to log in
before you can comment on or make changes to this bug.
Description
•