JEP 385

GPTKB entity

Statements (459)
Predicate Object
gptkbp:instance_of gptkb:Java_2_Platform
gptkb:JEP
gptkbp:addresses Performance Bottlenecks
Memory management challenges
Native code security issues
gptkbp:affects Java Applications
gptkbp:aims_to Improve observability of Java applications.
Simplify native code usage
stream JFR events to external systems
gptkbp:aims_to_improve Pause times in garbage collection
gptkbp:allows custom event types
gptkbp:approves JDK Release Team
gptkbp:author gptkb:Brian_Goetz
gptkb:David_Holmes
gptkb:J._Gosling
gptkb:Martin_Buchholz
gptkb:Jesse_Glick
JDK Release Team
RMI Team
JEP 385 Authors
gptkbp:benefits gptkb:developers
Improved performance
Large heap applications
Better interoperability with native libraries
Real-time monitoring of application performance.
Increased control over deserialization process.
gptkbp:case_analysis Case studies demonstrating effectiveness.
gptkbp:challenges Ensuring backward compatibility.
gptkbp:collaborated_with gptkb:Open_JDK_community
gptkb:regulations
Open Source Projects
Open source contributors
Research initiatives.
Open-source projects.
gptkbp:collaboration Collaboration with security experts.
gptkbp:community_engagement Engaged with the community for input.
gptkbp:community_support Strong community support for the proposal.
gptkbp:compatibility gptkb:Low
No compatibility issues expected.
Backward compatible.
Existing applets will continue to run in browsers that support them.
gptkbp:complement Existing monitoring tools.
gptkbp:concluded_on The Applet API is no longer relevant.
JMX is no longer needed in the JDK
Provides a robust solution for deserialization security.
A significant step forward in Java serialization.
gptkbp:contains Performance optimizations
Native interface improvements
Native method enhancements
gptkbp:contributes_to Java Performance Optimization
Java performance improvements
Java's observability ecosystem.
Java observability features
gptkbp:contribution Contributes to the overall security model of Java.
gptkbp:created 2020-01-14
2020-12-01
2020-09-15
2020-06-08
2019-09-17
gptkbp:date September 2020
gptkbp:dependency Requires updates to existing serialization mechanisms.
gptkbp:describes JDK 14 Support for the Java SE 14 Virtual Machine
gptkbp:description Enhances the Java programming language with record patterns.
This JEP proposes the removal of the Java EE and CORBA modules from the JDK.
This JEP proposes to deprecate the RMI Activation system.
Provides a mechanism for streaming events from the Java Flight Recorder.
This JEP proposes to deprecate the Java EE and CORBA modules for removal.
gptkbp:discusses JDK mailing lists.
Open JDK mailing list.
Open JDK mailing lists
https://openjdk.java.net/jeps/385
Java Enhancement Proposals mailing list.
Thread stack processing techniques
https://openjdk.java.net/jeps/385# Discussion
https://mail.openjdk.java.net/pipermail/jdk-dev/2020-January/004123.html
https://openjdk.java.net/jeps/385#discussion
Community discussions on serialization best practices.
gptkbp:education Training resources available for users.
gptkbp:enables Fine-Grained Control
Low-overhead event collection.
event filtering and transformation
gptkbp:encourages Use of native libraries
gptkbp:enhances gptkb:Java_Native_Interface_(JNI)
performance analysis
Performance of JNI calls
ZGC performance
JVM Performance
gptkbp:example Configuring filters in Java applications.
Deserializing user input safely.
gptkbp:exhibited_at Webinars.
Tech demos.
gptkbp:facilitates gptkb:Performance_Monitoring
data analysis
Integration with C/ C++ code
Integration with third-party tools.
gptkbp:feature gptkb:Java_Development_Kit_(JDK)
gptkbp:features Event streaming capabilities.
gptkbp:feedback Positive feedback from the Java community.
gptkbp:feedback_mechanism Establishing a feedback loop with users.
gptkbp:first_published 2021-09-14
gptkbp:focus Performance Tuning
Native code enhancements
gptkbp:focuses_on Garbage collection efficiency
gptkbp:future_prospects Potential enhancements to serialization framework.
gptkbp:goal Provide a packaging tool for Java applications
gptkbp:goals Enhance security and usability of Java serialization.
gptkbp:has_documentation Comprehensive documentation provided.
gptkbp:has_limitations May not cover all edge cases.
gptkbp:highlights Industry reports.
Technical blogs.
https://www.w3.org/2000/01/rdf-schema#label JEP 385
gptkbp:impact Code using RMI Activation will generate warnings.
Removes support for Applet API.
Applications using Java EE and CORBA will need to migrate.
Applications using the Applet API will need to migrate to alternative technologies.
The Applet API will be marked for removal in a future release.
Applications using JMX will need to find alternatives
Enhances Java's observability.
Encourages developers to migrate to alternative technologies.
Enhances security for Java applications.
Assessment of impact on existing applications.
Security improvements in Java applications.
Developers need to adapt to new deserialization practices.
gptkbp:implementation_guide Guide for implementing context-specific deserialization.
gptkbp:improves Resource Management
Application Performance
system diagnostics
monitoring and observability
Application responsiveness
Error handling in native code
Native memory management
Performance diagnostics.
gptkbp:includes Performance Metrics
Documentation updates
New tuning flags
gptkbp:influences Future JEPs
gptkbp:introduced_in gptkb:JDK_17
gptkb:Java_11
gptkb:JDK_14
gptkbp:involved_technology Java Serialization API.
gptkbp:is_a_resource_for Resources available for the community.
gptkbp:is_a_solution_for Introduce context-specific deserialization filters.
gptkbp:is_adopted_by Enterprise Applications
Open-source projects
Startups
Academic Institutions
Software companies
Microservices architecture
Software Companies
Java applications
Cloud environments
Java developers
Enterprise applications.
Software companies.
Adopted in JDK 17.
Challenges faced during adoption.
Widely adopted in production systems.
Production environments.
High adoption rate among Java developers.
gptkbp:is_analyzed_in Research papers
Software engineers
Performance Tools
Performance analysts
Performance studies.
gptkbp:is_applicable_to Java applications
gptkbp:is_celebrated_in Java conferences.
Java community events.
gptkbp:is_challenged_by Competing technologies.
Alternative solutions.
gptkbp:is_cited_in gptkb:Documentation
Research papers.
Java programming books
Subsequent JEPs
gptkbp:is_compared_to gptkb:G1_Garbage_Collector
Other event streaming solutions.
Other JEPs.
gptkbp:is_compatible_with Java SE.
existing JFR tools
gptkbp:is_considered User feedback.
A significant enhancement
User experiences.
gptkbp:is_described_as Technical articles
Technical Blogs
Technical articles.
gptkbp:is_designed_for high-throughput environments
gptkbp:is_discussed_in gptkb:Java_Community_Process
Online Forums
Java Conferences
Technical blogs
Technical conferences
Java forums
Java forums.
Java user groups.
Tech meetups.
gptkbp:is_documented_in Technical specifications
Java documentation
Open JDK documentation
JDK Release Notes
Official JEP documentation
JEP index.
JDK Enhancement-Proposal Document
Oracle documentation.
gptkbp:is_driven_by Market demands.
User requirements.
gptkbp:is_enhanced_by User contributions.
Future JEPs.
gptkbp:is_evaluated_by Scalability
Quality Assurance Teams
Performance benchmarks
Software engineers
Performance Analysts
Industry standards.
Industry experts.
Performance benchmarks.
Java SE release process
Java performance teams
gptkbp:is_explored_in Research Papers
Case Studies
Research studies
Workshops.
Case studies.
gptkbp:is_featured_in Java Magazines
gptkbp:is_implemented_in gptkb:Java_Runtime_Environment
gptkb:JDK_14
gptkb:Open_JDK
gptkb:JVM
Java developers
Implemented in JDK 17.
Incubator module
JDK 11 and later.
Java 11 and later versions
Part of the JDK.
Implemented in the Java SE platform.
JDK developers.
JDK 17 source code
Part of the Java SE Platform.
Detailed implementation notes provided.
Challenges encountered during implementation.
gptkbp:is_influenced_by Community feedback
Technological advancements.
User needs.
Previous garbage collection proposals
gptkbp:is_integrated_with gptkb:developers
Cloud services
Java runtime
third-party monitoring tools
Monitoring solutions.
Dev Ops tools.
gptkbp:is_maintained_by Oracle.
gptkbp:is_motivated_by The Applet API is obsolete and has been superseded by modern web technologies.
Java EE and CORBA are no longer widely used.
RMI Activation is rarely used.
Reduce the size of the JDK
To reduce the size of the JDK.
To simplify the Java platform.
Improve security and flexibility in deserialization.
The Applet API is rarely used.
To improve security by allowing applications to specify deserialization filters.
gptkbp:is_part_of gptkb:Java_SE_11
gptkb:Java_SE_Platform
gptkb:Java_SE_platform
gptkb:Java_ecosystem
Java platform evolution
Java 11 features
JDK Enhancement Proposals.
gptkbp:is_practiced_in Encourages best practices in serialization.
gptkbp:is_promoted_by gptkb:Java_Champions
Webinars
Java advocates
Java advocates.
Java Advocates
Java influencers.
gptkbp:is_promoted_through Webinars
Conferences.
gptkbp:is_recognized_by Industry standards.
Professional organizations.
gptkbp:is_referenced_in Technical Specifications
Java tutorials
Performance Tuning Guides
Other JEPs
Other JEPs.
gptkbp:is_reflected_in Community feedback.
User satisfaction.
gptkbp:is_related_to gptkb:JEP_386
gptkb:JEP_387
gptkb:JEP_391
Garbage collection algorithms
JEP 386.
gptkbp:is_reviewed_by gptkb:Java_community
Peer reviews
Java Community
Performance impact
Technical Experts
Java experts
Technical reviews.
Java community.
gptkbp:is_supported_by gptkb:Java_User_Groups
gptkb:Java_Development_Kit_(JDK)
gptkb:Java_community
Multiple platforms
Development tools
Open Source Communities
Java Developers
Java developers
Java community projects
Community contributions.
Documentation.
JDK 17 and later.
Java 11 and later versions
Java community.
gptkbp:is_tested_for Development Environments
Development environments
Real-world applications
Quality assurance teams.
Real-world scenarios.
Java testing frameworks
Open JDK.
Java performance benchmarks
Benchmarking Suites
Extensive testing conducted before finalization.
gptkbp:is_used_for performance monitoring
gptkbp:is_used_in Production Environments
gptkbp:is_utilized_by gptkb:cloud_services
Enterprise applications
Developers.
gptkbp:is_utilized_for Memory optimization
gptkbp:is_utilized_in Mobile applications
Cloud environments.
Microservices.
gptkbp:issues JDK-8241234
https://bugs.openjdk.java.net/browse/ JDK-8212004
gptkbp:key_feature Context-specific deserialization.
gptkbp:keywords deserialization, security, filters
gptkbp:latest_version 1.0
JDK 11.
JDK 17.
JEP 385.1
gptkbp:performance Other garbage collectors
Minimal performance impact observed.
gptkbp:plot_summary This JEP proposes to deprecate the Applet API for removal.
This JEP proposes to deprecate the Applet API.
This JEP proposes a mechanism for context-specific deserialization filters.
Improves performance tuning capabilities in JDK 14.
Enhances the Java serialization mechanism to allow context-specific deserialization.
gptkbp:presented_by gptkb:Java_conferences
gptkbp:problem Deserialization can lead to security vulnerabilities.
gptkbp:project Related to other JEPs focusing on security.
gptkbp:proposed_by gptkb:JDK_17
gptkb:Brian_Goetz
gptkb:Oracle
gptkb:Oracle_Corporation
gptkb:Java_Community_Process
gptkb:JDK_16
gptkb:Mark_Reinhold
Concurrent processing of thread stacks in Z Garbage Collector
New Native Enhancements
Remove the Java Management Extensions (JMX) Modules
gptkbp:proposed_removal gptkb:JDK_18
gptkb:JDK_20
gptkbp:provides Better debugging support for native code
Tuning Guidelines
a mechanism for real-time event consumption
New APIs for native code
APIs for event streaming.
gptkbp:provides_support_for event serialization
gptkbp:published_by gptkb:Open_JDK
Java magazines
gptkbp:reduces Overhead of native calls
Stop-the-world pauses
gptkbp:related_concept Aligns with security standards in software development.
gptkbp:related_jeps gptkb:JEP_384
gptkb:JEP_386
gptkb:JEP_392
gptkb:JEP_394
gptkb:JEP_260
gptkb:JEP_290
gptkb:JEP_320
JEP 391.
gptkbp:related_to gptkb:JEP_384
gptkb:JEP_386
gptkb:Z_Garbage_Collector
gptkb:Java_Flight_Recorder
gptkb:Garbage_Collection
gptkb:Applet_API
JVM Tuning
gptkbp:release_date March 2020
September 2021
September 2021.
gptkbp:release_notes JDK 17 Release Notes
The Applet API is deprecated for removal.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_14
gptkb:JDK_11
gptkbp:replaced_by Applet API is outdated and not widely used.
Lack of use and maintenance.
gptkbp:requires gptkb:JEP_394
JDK 14 or later
Java Flight Recorder.
JDK 11 features
JVM support for concurrent stack processing
JFR API
gptkbp:reviews gptkb:Alan_Bateman
gptkb:Brian_Goetz
gptkb:Mark_Reinhold
2020-02-20
JDK Review Team
Various contributors.
Reviewed by the Java Community.
gptkbp:security Mitigates risks associated with deserialization attacks.
Security assessment conducted prior to release.
gptkbp:security_features Introduces new security features for deserialization.
gptkbp:specification gptkb:Java_Language_Specification
Defines rules for context-specific deserialization.
gptkbp:specifies Java Flight Recorder (JFR) event streaming
gptkbp:sponsorship Tech leaders.
Java leaders.
gptkbp:status gptkb:Final
Proposed
Standard Feature
gptkbp:success_rate Metrics to measure success post-implementation.
gptkbp:supports Dynamic Tuning
Cross-platform native development
Custom event types.
multiple event consumers
gptkbp:target_jdk gptkb:JDK_17
gptkb:JDK_11
gptkb:JDK_14
gptkb:JDK_16
gptkbp:title gptkb:Record_Patterns
gptkb:JFR:_Event_Streaming
gptkb:JFR_Event_Streaming
Context-Specific Deserialization Filters
Deprecate the Applet API
ZGC: Concurrent Thread-Stack Processing
Deprecate RMI Activation
Remove the Java EE and CORBA Modules
Packaging Tool (Incubator)
Context-Specific Deserialization
Deprecate the Java EE and CORBA Modules for Removal
JDK 14 Performance Tuning
gptkbp:updates 2020-09-15
2020-03-17
Future updates planned based on user feedback.
Regular security updates planned.
gptkbp:use_case Performance analysis.
Monitoring.
Web applications, enterprise applications.
Troubleshooting.
Deserializing objects in a controlled manner.
gptkbp:user_feedback Gathering user feedback for improvements.
gptkbp:user_manual User guide available for developers.
gptkbp:vision Vision for the future of Java serialization.
gptkbp:bfsParent gptkb:JEP_33
gptkb:JDK_10
gptkb:JDK_14
gptkb:JDK_15
gptkb:Java_SE_15
gptkb:Java_10
gptkbp:bfsLayer 5