Repository: groovy
Updated Branches:
  refs/heads/master 12ce9eb11 -> 127345371


Increase buffer size, cache size and initial capacity


Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/12734537
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/12734537
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/12734537

Branch: refs/heads/master
Commit: 1273453718aa0cceb4f50a1ab97d855cfd306e04
Parents: 12ce9eb
Author: sunlan <[email protected]>
Authored: Tue Jan 9 15:47:41 2018 +0800
Committer: sunlan <[email protected]>
Committed: Tue Jan 9 15:49:14 2018 +0800

----------------------------------------------------------------------
 src/main/groovy/groovy/util/ProxyGenerator.java |   2 +-
 .../groovy/reflection/GeneratedMetaMethod.java  | 142 -------------------
 .../groovy/tools/javac/JavaStubGenerator.java   |   2 +-
 .../groovy/inspect/swingui/AstBrowser.groovy    |   3 +-
 4 files changed, 4 insertions(+), 145 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/groovy/blob/12734537/src/main/groovy/groovy/util/ProxyGenerator.java
----------------------------------------------------------------------
diff --git a/src/main/groovy/groovy/util/ProxyGenerator.java 
b/src/main/groovy/groovy/util/ProxyGenerator.java
index 8f165f7..04d98d6 100644
--- a/src/main/groovy/groovy/util/ProxyGenerator.java
+++ b/src/main/groovy/groovy/util/ProxyGenerator.java
@@ -64,7 +64,7 @@ public class ProxyGenerator {
     private boolean debug = false;
     private boolean emptyMethods = false;
 
-    private static final Integer GROOVY_ADAPTER_CACHE_DEFAULT_SIZE = 
Integer.getInteger("groovy.adapter.cache.default.size", 16);
+    private static final Integer GROOVY_ADAPTER_CACHE_DEFAULT_SIZE = 
Integer.getInteger("groovy.adapter.cache.default.size", 64);
 
     public static final ProxyGenerator INSTANCE = new ProxyGenerator(); // 
TODO should we make ProxyGenerator singleton?
 

http://git-wip-us.apache.org/repos/asf/groovy/blob/12734537/src/main/java/org/codehaus/groovy/reflection/GeneratedMetaMethod.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/codehaus/groovy/reflection/GeneratedMetaMethod.java 
b/src/main/java/org/codehaus/groovy/reflection/GeneratedMetaMethod.java
index 7af9e5e..23a0db7 100644
--- a/src/main/java/org/codehaus/groovy/reflection/GeneratedMetaMethod.java
+++ b/src/main/java/org/codehaus/groovy/reflection/GeneratedMetaMethod.java
@@ -176,148 +176,6 @@ public abstract class GeneratedMetaMethod extends 
MetaMethod {
             }
         }
 
-        /*  FIXME
-            It seems that `loader.getResourceAsStream("META-INF/dgminfo")` 
failed to find the "META-INF/dgminfo" file, which should be generated correctly 
by `task dgmConverter` in gradle script
-            When the file is read, IOException "Stream closed" 
occurred.(Reproduce the issue: Menu "Build" -> Menu item "Rebuild Project" in 
IntelliJ IDEA).
-            Here is the error message:
-
-Information:Groovyc: While compiling groovy-xml_main:java.io.IOException: 
Stream closed
-       at java.io.BufferedInputStream.getInIfOpen(BufferedInputStream.java:159)
-       at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
-       at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
-       at java.io.DataInputStream.readUnsignedShort(DataInputStream.java:337)
-       at java.io.DataInputStream.readUTF(DataInputStream.java:589)
-       at java.io.DataInputStream.readUTF(DataInputStream.java:564)
-       at 
org.codehaus.groovy.reflection.GeneratedMetaMethod$DgmMethodRecord.loadDgmInfo(GeneratedMetaMethod.java:194)
-       at 
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerMethods(MetaClassRegistryImpl.java:205)
-       at 
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:112)
-       at 
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:90)
-       at groovy.lang.GroovySystem.<clinit>(GroovySystem.java:36)
-       at 
org.codehaus.groovy.runtime.InvokerHelper.<clinit>(InvokerHelper.java:86)
-       at 
groovy.lang.GroovyObjectSupport.getDefaultMetaClass(GroovyObjectSupport.java:61)
-       at groovy.lang.GroovyObjectSupport.<init>(GroovyObjectSupport.java:34)
-       at groovy.lang.Closure.<init>(Closure.java:214)
-       at groovy.lang.Closure.<init>(Closure.java:231)
-       at groovy.lang.Closure$1.<init>(Closure.java:198)
-       at groovy.lang.Closure.<clinit>(Closure.java:198)
-       at 
org.apache.groovy.parser.antlr4.util.StringUtils.replaceLineEscape(StringUtils.java:123)
-       at 
org.apache.groovy.parser.antlr4.util.StringUtils.replaceEscapes(StringUtils.java:116)
-       at 
org.apache.groovy.parser.antlr4.util.StringUtils.replaceEscapes(StringUtils.java:105)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.parseStringLiteral(AstBuilder.java:2443)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitStringLiteral(AstBuilder.java:2414)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitStringLiteralAlt(AstBuilder.java:3229)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitStringLiteralAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$StringLiteralAltContext.accept(GroovyParser.java:4066)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitLiteralPrmrAlt(AstBuilder.java:2834)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitLiteralPrmrAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$LiteralPrmrAltContext.accept(GroovyParser.java:9971)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPathExpression(AstBuilder.java:2004)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExpression(AstBuilder.java:2512)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExprAlt(AstBuilder.java:2530)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExprAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$PostfixExprAltContext.accept(GroovyParser.java:8241)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitExpressionListElement(AstBuilder.java:3179)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitEnhancedArgumentListElement(AstBuilder.java:2398)
-       at 
java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
-       at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
-       at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
-       at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
-       at 
java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
-       at 
java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
-       at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
-       at 
java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitEnhancedArgumentList(AstBuilder.java:2334)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitArguments(AstBuilder.java:2320)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitCreator(AstBuilder.java:2898)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitNewPrmrAlt(AstBuilder.java:2844)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitNewPrmrAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$NewPrmrAltContext.accept(GroovyParser.java:9997)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPathExpression(AstBuilder.java:2004)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExpression(AstBuilder.java:2512)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExprAlt(AstBuilder.java:2530)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitPostfixExprAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$PostfixExprAltContext.accept(GroovyParser.java:8241)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitNormalExprAlt(AstBuilder.java:1834)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitNormalExprAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$NormalExprAltContext.accept(GroovyParser.java:8085)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitEnhancedStatementExpression(AstBuilder.java:1990)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitVariableInitializer(AstBuilder.java:1796)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitVariableDeclarator(AstBuilder.java:1785)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.lambda$visitVariableDeclarators$18(AstBuilder.java:1758)
-       at 
java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
-       at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
-       at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
-       at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
-       at 
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
-       at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
-       at 
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitVariableDeclarators(AstBuilder.java:1761)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitVariableDeclaration(AstBuilder.java:1595)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitFieldDeclaration(AstBuilder.java:1264)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitMemberDeclaration(AstBuilder.java:1215)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitClassBodyDeclaration(AstBuilder.java:1188)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.lambda$visitClassBody$10(AstBuilder.java:1060)
-       at java.util.ArrayList.forEach(ArrayList.java:1257)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitClassBody(AstBuilder.java:1058)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitClassDeclaration(AstBuilder.java:1011)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitTypeDeclaration(AstBuilder.java:886)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitTypeDeclarationStmtAlt(AstBuilder.java:866)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitTypeDeclarationStmtAlt(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$TypeDeclarationStmtAltContext.accept(GroovyParser.java:6719)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.lambda$visitStatements$1(AstBuilder.java:285)
-       at 
java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
-       at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
-       at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
-       at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
-       at 
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
-       at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
-       at 
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitStatements(AstBuilder.java:286)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitCompilationUnit(AstBuilder.java:247)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visitCompilationUnit(AstBuilder.java:151)
-       at 
org.apache.groovy.parser.antlr4.GroovyParser$CompilationUnitContext.accept(GroovyParser.java:284)
-       at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:20)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.visit(AstBuilder.java:3958)
-       at 
org.apache.groovy.parser.antlr4.AstBuilder.buildAST(AstBuilder.java:237)
-       at 
org.apache.groovy.parser.antlr4.Antlr4ParserPlugin.buildAST(Antlr4ParserPlugin.java:72)
-       at org.codehaus.groovy.control.SourceUnit.convert(SourceUnit.java:252)
-       at 
org.codehaus.groovy.control.CompilationUnit$15.call(CompilationUnit.java:711)
-       at 
org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:971)
-       at 
org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:636)
-       at 
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:612)
-       at 
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:589)
-       at 
org.jetbrains.groovy.compiler.rt.GroovyCompilerWrapper.compile(GroovyCompilerWrapper.java:62)
-       at 
org.jetbrains.groovy.compiler.rt.DependentGroovycRunner.runGroovyc(DependentGroovycRunner.java:115)
-       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-       at java.lang.reflect.Method.invoke(Method.java:498)
-       at 
org.jetbrains.groovy.compiler.rt.GroovycRunner.intMain2(GroovycRunner.java:136)
-       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-       at java.lang.reflect.Method.invoke(Method.java:498)
-       at 
org.jetbrains.jps.incremental.groovy.InProcessGroovyc.runGroovycInThisProcess(InProcessGroovyc.java:158)
-       at 
org.jetbrains.jps.incremental.groovy.InProcessGroovyc.lambda$runGroovyc$0(InProcessGroovyc.java:88)
-       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
-       at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
-       at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
-       at java.lang.Thread.run(Thread.java:748)
-         */
         public static List<DgmMethodRecord> loadDgmInfo() throws IOException {
             ClassLoader loader = DgmMethodRecord.class.getClassLoader();
 

http://git-wip-us.apache.org/repos/asf/groovy/blob/12734537/src/main/java/org/codehaus/groovy/tools/javac/JavaStubGenerator.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/codehaus/groovy/tools/javac/JavaStubGenerator.java 
b/src/main/java/org/codehaus/groovy/tools/javac/JavaStubGenerator.java
index c5c6360..271195a 100644
--- a/src/main/java/org/codehaus/groovy/tools/javac/JavaStubGenerator.java
+++ b/src/main/java/org/codehaus/groovy/tools/javac/JavaStubGenerator.java
@@ -96,7 +96,7 @@ public class JavaStubGenerator {
         dir.mkdirs();
     }
 
-    private static final int DEFAULT_BUFFER_SIZE = 32 * 1024; // 32K
+    private static final int DEFAULT_BUFFER_SIZE = 64 * 1024; // 64K
     public void generateClass(ClassNode classNode) throws 
FileNotFoundException {
         // Only attempt to render our self if our super-class is resolved, 
else wait for it
         if (requireSuperResolved && !classNode.getSuperClass().isResolved()) {

http://git-wip-us.apache.org/repos/asf/groovy/blob/12734537/subprojects/groovy-console/src/main/groovy/groovy/inspect/swingui/AstBrowser.groovy
----------------------------------------------------------------------
diff --git 
a/subprojects/groovy-console/src/main/groovy/groovy/inspect/swingui/AstBrowser.groovy
 
b/subprojects/groovy-console/src/main/groovy/groovy/inspect/swingui/AstBrowser.groovy
index a3b42c8..10607f0 100644
--- 
a/subprojects/groovy-console/src/main/groovy/groovy/inspect/swingui/AstBrowser.groovy
+++ 
b/subprojects/groovy-console/src/main/groovy/groovy/inspect/swingui/AstBrowser.groovy
@@ -327,8 +327,9 @@ class AstBrowser {
 
     }
 
+    private static final int INITIAL_CAPACITY = 64 * 1024 // 64K
     private String generateSource(byte[] bytecode, getVisitor) {
-        def sw = new StringBuilderWriter(2048) // the generated code of 
`println 123` occupies about 618 bytes, so we should increase the initial 
capacity to 2K
+        def sw = new StringBuilderWriter(INITIAL_CAPACITY) // the generated 
code of `println 123` occupies about 618 bytes, so we should increase the 
initial capacity to 64K
         new ClassReader(bytecode).accept(getVisitor(sw), 0)
         return sw.toString()
     }

Reply via email to