Skip to content

Commit 5191a16

Browse files
authored
Disable URL connection caching in SPIClassIterator (elastic#88586)
1 parent 478c06e commit 5191a16

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

docs/changelog/88586.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 88586
2+
summary: Disable URL connection caching in SPIClassIterator
3+
area: Infra/Plugins
4+
type: bug
5+
issues:
6+
- 88275

server/src/main/java/org/elasticsearch/plugins/spi/SPIClassIterator.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.io.InputStream;
2727
import java.io.InputStreamReader;
2828
import java.net.URL;
29+
import java.net.URLConnection;
2930
import java.nio.charset.StandardCharsets;
3031
import java.util.ArrayList;
3132
import java.util.Collections;
@@ -106,7 +107,9 @@ private boolean loadNextProfile() {
106107
}
107108
final URL url = profilesEnum.nextElement();
108109
try {
109-
final InputStream in = url.openStream();
110+
URLConnection urlc = url.openConnection();
111+
urlc.setUseCaches(false); // prevents retaining a handle to the underlying jar file, when the stream is closed
112+
final InputStream in = urlc.getInputStream();
110113
boolean success = false;
111114
try {
112115
final BufferedReader reader = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8));

0 commit comments

Comments
 (0)