-
Bug
-
Resolution: Fixed
-
P2
-
8, 9
-
b66
-
generic
-
generic
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8085522 | emb-9 | Srikanth Adayapalam | P2 | Resolved | Fixed | team |
JDK-8129187 | 8u65 | Srikanth Adayapalam | P2 | Resolved | Fixed | b02 |
JDK-8080624 | 8u60 | Jan Lahoda | P2 | Closed | Fixed | b20 |
JDK-8138440 | emb-8u65 | Unassigned | P2 | Resolved | Fixed | b02 |
JDK-8129712 | emb-8u60 | Srikanth Adayapalam | P2 | Resolved | Fixed | b20 |
// -------- 8< -------------------
class JSONObject {
JSONObject put(java.lang.String x , Object y) {
return null;
}
JSONObject put(java.lang.String x , java.util.Collection y) {
return null;
}
JSONObject put(java.lang.String x , int y) {
return null;
}
JSONObject put(java.lang.String x , long y) {
return null;
}
JSONObject put(java.lang.String x , double y) {
return null;
}
JSONObject put(java.lang.String x , java.util.Map y) {
return null;
}
JSONObject put(java.lang.String x , boolean y) {
return null;
}
}
class JSONArray {
JSONArray put(Object x) {
return null;
}
JSONArray put(int i, Object x) {
return null;
}
JSONArray put(boolean x) {
return null;
}
JSONArray put(int x) {
return null;
}
JSONArray put(int i, int x) {
return null;
}
JSONArray put(int x, boolean y) {
return null;
}
JSONArray put(int i, long x) {
return null;
}
JSONArray put(long x) {
return null;
}
JSONArray put(java.util.Collection x) {
return null;
}
JSONArray put(int i, java.util.Collection x) {
return null;
}
JSONArray put(int i, java.util.Map x) {
return null;
}
JSONArray put(java.util.Map x) {
return null;
}
JSONArray put(int i, double x) {
return null;
}
JSONArray put(double x) {
return null;
}
}
/**
* @author Copyright (c) 2004,2014, Oracle and/or its affiliates. All rights reserved.
*/
public class X {
private void test() throws Exception {
final JSONObject query = new JSONObject()
.put("fields", new JSONArray())
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("serverRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("applicationRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name").put("internal"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("componentRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name").put("deploymentState").put("type")
.put("contextRoot").put("sourceInfo").put("openSessionsHighCount")
.put("openSessionsCurrentCount").put("sessionsOpenedTotalCount"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("servlets", new JSONObject()
.put("fields", new JSONArray().put("invocationTotalCount"))
.put("links", new JSONArray())
)
)
)
)
)
.put("partitionRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("applicationRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name").put("internal"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("componentRuntimes", new JSONObject()
.put("fields", new JSONArray().put("name").put("deploymentState").put("type")
.put("contextRoot").put("sourceInfo").put("openSessionsHighCount")
.put("openSessionsCurrentCount").put("sessionsOpenedTotalCount"))
.put("links", new JSONArray())
.put("children", new JSONObject()
.put("servlets", new JSONObject()
.put("fields", new JSONArray().put("invocationTotalCount"))
.put("links", new JSONArray()))
)
)
)
)
)
)
)
)
);
}
}
The number of overloads have a direct bearing on the time taken to compile the program, As I eliminate the patently incompatible candidates, compilation speeds picks up progressively.
(I didn't personally verify inference has a finger in the pie somewhere, but Jan Lahoda's cursory
investigation pointed to that)
- backported by
-
JDK-8085522 Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times.
-
- Resolved
-
-
JDK-8129187 Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times.
-
- Resolved
-
-
JDK-8129712 Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times.
-
- Resolved
-
-
JDK-8138440 Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times.
-
- Resolved
-
-
JDK-8080624 Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times.
-
- Closed
-