All current upgrade-related issues are here (using an issue tracker keyword). Cluster upgrade example This page has been removed. The full steps for upgrading are now in the released GlassFish documentation. See this blog for an upgrade example, and the upgrade guide for full information. Dashboard Deadlines you should know:
- Milestone 2: Get start/end dates to Bobby about when you will be implementing upgrade.
- Milestone 4: Deadline for finishing upgrade work (but feel free to implement sooner). This deadline is from the Upgrade 3.1 planning page.
Here is the v3 upgrade dashboard page as a reference. For developers who worked on v3, you may want to see what you've already done. Status Codes: Please use one of the following (feel free to suggest alternatives) in the dashboard table. If you have details about your status that you'd like to add, use the table at the bottom of the page. Don't worry about pretty colors (for the "Done" status). I'll add them for you.
- 0 – Aware that upgrade exists
- 1 – Have at least stubbed out upgrade service
- 2 – Implementation started
- 3 – Done (including logging the changes your module made to config)
- 4 – Done and tested
- N/A – Please enter details at the bottom of the page
Module |
Owner(s) |
Description |
Start Date |
End Date |
Status Code |
Clustering Infrastructure |
Tom Mueller |
|
|
M5 |
2 (overall feature deferred to MS5) |
In-memory Session Replication |
Mahesh Kannan, Joe Fialli |
|
|
M4 |
NA |
Runtime Clustering(GMS) |
Joe Fialli |
|
|
M4 |
3 |
GMS Configuration |
Joe |
Full writeup of config changes in gms config one pager |
|
M4 |
3 |
Deployment |
Hong Zhang, Tim Quinn |
No incompatible changes from v3, so there should be no additional work in the upgrade area |
|
M4 |
N/A |
App Client Container |
Tim Quinn |
All req'd changes occur as part of redeployment of apps (see Deployment) |
|
M4 |
N/A |
Management Console |
Anissa Lam, Ken Paulsen |
|
|
M4 |
N/A |
SSH/SSHD |
Carla Mott, Joe Di Pol |
Convert node-agent in domain.xml , also rename "nodeagents" directory to "nodes" |
|
M4 |
2 |
Installer |
Sathyan Catari |
|
|
M4 |
N/A, Installer will not support in-place/side-by-side upgrades. |
Packaging |
Snjezana Sevo-Zenzerovic |
|
|
M4 |
N/A |
File Layout |
Snjezana Sevo-Zenzerovic |
|
|
M4 |
N/A |
Web Tier |
Rajiv Mordani, Shing Wai Chan |
|
|
M4 |
N/A |
EJB |
Marina Vatkina |
|
|
M6 |
2 - One pending issue https://github.com/javaee/glassfish/issues/13218 |
Transaction Service |
Marina Vatkina |
|
|
M4 |
N/A |
IIOP |
Ken Cavanaugh |
|
|
M4 |
N/A |
Connectors, Pooling, Resources, JDBC |
Jagadish Ramu, Shalini Muthukrishnan |
|
|
M4 |
N/A |
JMS Integration |
Satish Kumar, Nigel Deakin, Amy Kang |
|
|
M5 |
0 |
Metro |
Marek Potociar |
|
|
M4 |
N/A |
Loadbalancer |
Kshi tiz Saxena |
For load-balancer element, device-host and device-port need to be converted to attributes from properties and auto-apply-enabled attribute will be removed with suitable warning. The load-balancer plugin upgrade will be handled by GlassFish LoadBalancer Configurator. |
|
M5 |
|
RESTful API |
Jason Lee, Ludovic Champenois |
|
|
M4 |
N/A |
Logging & Diagnostics |
Naman Mehta |
|
|
M4 |
N/A |
Embedded |
Siraj Ghaffar |
|
|
M4 |
N/A |
Globalization |
Georges Murr |
|
|
M4 |
N/A |
Security |
Kumar Jayanti |
|
|
M4 |
|
Developer Tooling |
Vince Kraemer, Ludovic Champenois |
|
|
M4 |
|
Developer Tooling |
Ludovic Champenois, Vince Kraemer |
|
|
M4 |
|
JMX API (AMX) |
Prasad Subramanian |
|
|
M4 |
|
OSGi |
Sanjeeb Sahoo, Richard Hall |
|
|
M4 |
|
JSF |
Ed Burns |
|
|
|
NA |
Jersey |
Paul Sandoz |
|
|
M4 |
N/A |
Contexts and Dependency Injection (CDI) |
Sivakumar Thyagarajan |
|
|
M4 |
|
Persistence |
Mitesh Meswani |
|
|
M4 |
N/A |
Issues/Questions This issue tracks some v2 to 3.1 open issues for upgrade – check before adding anything below. Questions from admin team:
- If there is something in a v2 addons subdirectory, what should v3 do?
- A v2 domain has an imq subdirectory in a domain. v3 does not. What should v3 do with the information in the imq subdirectory if it finds one.
- The protocol for synchronizing cluster instances is changing for v3 compared to v2. When upgrading and node with instances, something will need to prompt for the port number of the DAS for those instances.
- When upgrading a v2 cluster, the user will probably have the node agent hooked into an operating system facility for getting it started. Since there is no node agent in v3, this will stop working, and there needs to be a way (maybe documentation) for the user to get the instances started directly.
- JBI isn't supported in v3. Should we make any attempt to warn about JBI usage if we find a jbi directory left over from a v2 domain?
AI from planning meeting: AI (Bobby, Sathyan): Finalize how to upgrade das.properties in the remote instance For the grizzly element change, in the 3.0 one pager GrizzlyConfigOnePager#section-GrizzlyConfigOnePager-4.12.CompatibilityImpact This upgrade scenario may already have been taken care of. We should confirm this with Alexey and Justin. The jsf jvm options used to be in v2.x; they are no longer used in 3.x and ignored in 3.1 so not an issue. (confirmed with Jan)
- -Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar
- -Dcom.sun.enterprise.taglisteners=jsf-impl.jar
How to implement upgrade Because many of the v3 modules have already implemented upgrade, the existing examples in the codebase are more useful than a separate slide deck here. To find existing uses, grep for ConfigurationUpgrade. There is a v3 Upgrade TOI document that you can see for the full story. Because some of the doc is outdated, I've put the necessary info here:
- Add a @Service class that implements ConfigurationUpgrade and PostConstruct. You can see the ConfigurationUpgrade interface in the GlassFish repository.
- Make your changes in a public void postConstruct() method.
- Inject the Config object if needed. You can also use helper class ConfigSupport. See API reference in the references section below.
- Log the changes that you make during an upgrade.
 |
Does one upgrade depend on another? Courtesy of Jerome: To make sure upgrade class A runs before upgrade class B, have B @Inject A. |
References
- Config API From v3 api docs.
- v3 upgrade compatibility requirements
- v3 Upgrade TOI Some of this document is outdated. For instance, there is no upgrade-specific logger that you need to use for logging changes, warnings, etc. There is also no upgrade-specific email list. Just use the general developer list instead.
Detailed module status (optional) If you have details regarding your status, please enter here.
Module |
Owner |
Status |
General upgrade |
Bobby |
Still need to determine how to handle issues that are not part of existing modules. Upgrade tool in bug fix mode. |
REST APU |
Jason Lee |
The REST API has no configuration so no upgrade is necessary |
IIOP |
Ken Cavanaugh |
There are no changes in the IIOP configuration from GF 2 or 3 to GF 3.1 |
File Layout & Packaging |
Snjezana Sevo-Zenzerovic |
Product files under IPS package control are going to be updated using pkg(5) implementation. |
Admin Console |
Anissa Lam |
GUI doesn't modify any configuration, no change is needed. |
Connectors, Pooling, Resources, JDBC |
Jagadish Ramu |
No configuration change required for connectors, connection-pool, resources from GF 2 or GF 3 to GF 3.1 |
Logging |
Naman Mehta |
No configuration changes required for Logging. |
|