Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discard app settings changes to slow #2310

Closed
sallyur opened this issue Oct 30, 2018 · 4 comments
Closed

Discard app settings changes to slow #2310

sallyur opened this issue Oct 30, 2018 · 4 comments
Assignees

Comments

@sallyur
Copy link

sallyur commented Oct 30, 2018

Build: Daily 557

It is not a regression issue, it is also repro in market place version.

Repro steps:

  1. Choose a web app/deployment slot without any app settings in azure explorer
  2. Right click it and select show properties
  3. Add an app settings
  4. Select this app settings and click discard

Result:

Because the process of discard is too slow, if do any other operation (like remove) before the discard is completed, it will report error.

Attached logs:

java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
	at java.util.Vector.elementAt(Vector.java:474)
	at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:648)
	at com.microsoft.intellij.helpers.webapp.WebAppBasePropertyView$5.actionPerformed(WebAppBasePropertyView.java:268)
	at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:258)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:275)
	at com.intellij.openapi.actionSystem.impl.ActionButton.actionPerformed(ActionButton.java:206)
	at com.intellij.openapi.actionSystem.impl.ActionButton.performAction(ActionButton.java:148)
	at com.intellij.openapi.actionSystem.impl.ActionButton.processMouseEvent(ActionButton.java:399)
	at java.awt.Component.processEvent(Component.java:6313)
	at java.awt.Container.processEvent(Container.java:2237)
	at java.awt.Component.dispatchEventImpl(Component.java:4903)
	at java.awt.Container.dispatchEventImpl(Container.java:2295)
	at java.awt.Component.dispatchEvent(Component.java:4725)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
	at java.awt.Container.dispatchEventImpl(Container.java:2281)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4725)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:737)
	at java.awt.EventQueue$4.run(EventQueue.java:735)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:719)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:664)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
@Eskibear
Copy link
Member

@SummerSun See if we can freeze the UI on an action until it is completed.

@SummerSun
Copy link
Contributor

I think the discard action should be finished immediately because it just the UI changes. It should not take that long. I will check that first.

@SummerSun
Copy link
Contributor

When discarding the changes, the table rows will all be removed and then we add the original app settings rows back.

The operations are finished correctly, but the table needs a refresh to reflect the changes. So the discard operation behaves take a long time until some other operations kick a refresh of it.

Will fire a data change of the table to fix it.

@SummerSun SummerSun assigned bsaby and sallyur and unassigned SummerSun Oct 31, 2018
@SummerSun SummerSun changed the title java.lang.ArrayIndexOutOfBoundsException: 0 >=0 Discard app settings changes to slow Oct 31, 2018
@bsaby
Copy link

bsaby commented Oct 31, 2018

Test passed.
Build: dev847

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants