JDK-8237909 : Remove zipped index files feature
  • Type: Bug
  • Component: tools
  • Sub-Component: javadoc(tool)
  • Affected Version: 15
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-01-27
  • Updated: 2020-05-29
  • Resolved: 2020-02-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 15
15 b10Fixed
Related Reports
Duplicate :  
Relates :  
Sub Tasks
JDK-8238760 :  
This change removes the "zipped index files" feature, which was introduced as part of JDK-8141492: Implement search feature in javadoc.

In a nutshell, the feature is being removed for the following reasons.

1. It doesn't work correctly
2. It targets only index files, though there are plenty of HTML pages having a similar size
3. HTTP compression is widespread and provides a more uniform and robust solution

See the below Comments section and the linked RFR thread for more details.
URL: https://hg.openjdk.java.net/jdk/jdk/rev/396a47e0860f User: prappo Date: 2020-02-11 15:34:13 +0000

On relative file sizes in the documentation pages. $ date Mon 10 Feb 2020 22:48:07 GMT $ find build/macosx-x86_64-server-fastdebug/images/docs/api -type f -exec du -h '{}' + | sort -h | tail -n 20 744K build/macosx-x86_64-server-fastdebug/images/docs/api/java.sql/java/sql/class-use/SQLException.html 800K build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-4.html 940K build/macosx-x86_64-server-fastdebug/images/docs/api/java.base/java/io/class-use/Serializable.html 980K build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-20.html 1.0M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-16.html 1.1M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-1.html 1.1M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-18.html 1.1M build/macosx-x86_64-server-fastdebug/images/docs/api/java.base/java/io/class-use/IOException.html 1.2M build/macosx-x86_64-server-fastdebug/images/docs/api/java.base/java/lang/class-use/Override.html 1.2M build/macosx-x86_64-server-fastdebug/images/docs/api/overview-tree.html 1.4M build/macosx-x86_64-server-fastdebug/images/docs/api/constant-values.html 1.4M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-9.html 1.6M build/macosx-x86_64-server-fastdebug/images/docs/api/allclasses-index.html 1.7M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-3.html 1.7M build/macosx-x86_64-server-fastdebug/images/docs/api/serialized-form.html 2.7M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-19.html 3.3M build/macosx-x86_64-server-fastdebug/images/docs/api/java.base/java/lang/class-use/Object.html 4.4M build/macosx-x86_64-server-fastdebug/images/docs/api/member-search-index.js 4.9M build/macosx-x86_64-server-fastdebug/images/docs/api/index-files/index-7.html 5.5M build/macosx-x86_64-server-fastdebug/images/docs/api/java.base/java/lang/class-use/String.html $ find build/macosx-x86_64-server-fastdebug/images/docs/api -type f -iname *-index.js -exec du -h '{}' + | sort -h | tail -n 20 4.0K build/macosx-x86_64-server-fastdebug/images/docs/api/module-search-index.js 12K build/macosx-x86_64-server-fastdebug/images/docs/api/package-search-index.js 20K build/macosx-x86_64-server-fastdebug/images/docs/api/tag-search-index.js 228K build/macosx-x86_64-server-fastdebug/images/docs/api/type-search-index.js 4.4M build/macosx-x86_64-server-fastdebug/images/docs/api/member-search-index.js

- Serving pre-compressed content in Apache using the mod_deflate module: http://httpd.apache.org/docs/current/mod/mod_deflate.html#precompressed - Module ngx_http_gzip_static_module: http://nginx.org/en/docs/http/ngx_http_gzip_static_module.html

A somewhat more detailed release-note: Index files generated during documenting source code with Standard Doclet no longer have compressed versions. Previously, some of the following files might've been produced as documentation artifacts: member-search-index.zip module-search-index.zip package-search-index.zip tag-search-index.zip type-search-index.zip Those files are no longer generated. Instead, their function will continue to be provided, using similarly named, uncompressed ".js" files. Depending on the code base, the size of the resulting ".js" files may vary. For example, the combined size of those files for the current OpenJDK release is roughly 5MB. When accessing documentation pages locally the size is usually not an issue. However, if the size is of any concern when accessing remotely, this should be addressed by configuring the communication appropriately. Modern HTTP serves allow flexible configuration of HTTP compression. Some may even support the use of pre-compressed files to avoid the costs of on-demand compression. It should be noted, that in normal circumstances the ".js" index files are loaded once and then used from the browser's cache.