<AWT Dev> debugging a regression
Pete Brunet
peter.brunet at oracle.com
Wed Jul 1 14:17:15 UTC 2015
That fixed it. Thanks Semyon.
On 7/1/15 8:25 AM, Pete Brunet wrote:
> Thanks Semyon! I'll give it a try. -Pete
>
> On 7/1/15 2:29 AM, Semyon Sadetsky wrote:
>> Hi Pete,
>>
>> I heard that you got performance issue in b68 connected to text
>> components.
>> It can be caused by https://bugs.openjdk.java.net/browse/JDK-8098835.
>>
>> The next patch can help:
>>
>> ---
>> old/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java
>> 2015-06-16 20:20:42.678311800 +0300
>> +++
>> new/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java
>> 2015-06-16 20:20:42.136257600 +0300
>> @@ -971,7 +971,7 @@
>> ((AbstractDocument)doc).readLock();
>> }
>> try {
>> - d.width = (int) rootView.getMinimumSpan(View.X_AXIS) +
>> i.left + i.right;
>> + d.width = (int) rootView.getMinimumSpan(View.X_AXIS) +
>> i.left + i.right + caretMargin;
>> d.height = (int) rootView.getMinimumSpan(View.Y_AXIS) +
>> i.top + i.bottom;
>> } finally {
>> if (doc instanceof AbstractDocument) {
>> @@ -996,7 +996,7 @@
>> }
>> try {
>> d.width = (int) Math.min((long)
>> rootView.getMaximumSpan(View.X_AXIS) +
>> - (long) i.left + (long) i.right,
>> Integer.MAX_VALUE);
>> + (long) i.left + (long) i.right +
>> caretMargin, Integer.MAX_VALUE);
>> d.height = (int) Math.min((long)
>> rootView.getMaximumSpan(View.Y_AXIS) +
>> (long) i.top + (long) i.bottom,
>> Integer.MAX_VALUE);
>> } finally {
>> @@ -1027,7 +1027,7 @@
>> Insets insets = editor.getInsets();
>> alloc.x += insets.left;
>> alloc.y += insets.top;
>> - alloc.width -= insets.left + insets.right;
>> + alloc.width -= insets.left + insets.right + caretMargin;
>> alloc.height -= insets.top + insets.bottom;
>> return alloc;
>> }
>>
>> --Semyon
>>
>>
>> On 6/29/2015 10:13 AM, Vadim Pakhnushev wrote:
>>> I think './common/bin/hgforest bisect ...' should do the trick then.
>>>
>>> On 29.06.2015 7:30, Phil Race wrote:
>>>> Just be aware that you will need to apply the same to each repo in
>>>> the JDK forest.
>>>> Else it will very likely not build. Eg the jdk repo must be in sync
>>>> with the top-level repo.
>>>>
>>>> -phil.
>>>>
>>>> On 6/28/15 5:59 PM, Pete Brunet wrote:
>>>>> Thanks Vadim, I'll give it a try. -Pete
>>>>>
>>>>> On 6/28/15 3:24 PM, Vadim Pakhnushev wrote:
>>>>>> Pete,
>>>>>>
>>>>>> Actually you should use hg bisect command to do this.
>>>>>> First, you mark 2 revisions you now as bad and good, like this:
>>>>>> hg bisect --good jdk9-b67
>>>>>> hg bisect --bad tip
>>>>>> The last command will bisect the list of changesets and update the
>>>>>> repo to some changeset in between.
>>>>>> Then you build the repo, test it and mark it as either bad or good:
>>>>>> hg bisect --bad
>>>>>> This will advance the current changeset and you test it again until
>>>>>> you arrive at the 'first bad' changeset.
>>>>>> See here for reference: https://www.selenic.com/hg/help/bisect
>>>>>>
>>>>>> Hope this helps,
>>>>>> Vadim
>>>>>>
>>>>>> On 28.06.2015 18:15, Pete Brunet wrote:
>>>>>>> Looks like I can use hg update to accomplish this, i.e. hg update
>>>>>>> to the
>>>>>>> rev that is b67 and then hg update to each possibly offending rev
>>>>>>> of the
>>>>>>> jdk repo. Sound right?
>>>>>>>
>>>>>>> On 6/26/15 4:13 PM, Pete Brunet wrote:
>>>>>>>> Hi, I found a problem on b68 and there are a half dozen possible
>>>>>>>> changesets that could be responsible. What is the best way to
>>>>>>>> do the
>>>>>>>> process of elimination. It seems like the right approach would
>>>>>>>> be to
>>>>>>>> start with b67 and then add changesets one at a time until the
>>>>>>>> problem
>>>>>>>> surfaces. Is that right or is there a better way?
>>>>>>>>
>>>>>>>> Starting with a fresh current clone what are the steps to strip
>>>>>>>> back to
>>>>>>>> b67 and then to add changesets?
>>>>>>>>
>>>>>>>> This will be in the jdk branch of the forest.
>>>>>>>>
>>>>>>>> Thanks, Pete
More information about the awt-dev
mailing list