Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 85 additions & 0 deletions doc/release-notes/21715-Payara-7.2026.9-update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
This PR updates Dataverse to be compatible with Payara version 7.2026.9 which includes breaking changes for our code.

## Upgrade Instructions

Upgrading requires a maintenance window and downtime. Please plan accordingly, create backups of your database, etc.

Note: These instructions assume that you are upgrading from the immediate previous version. That is to say, you've already upgraded through all the 6.x releases and are now running Dataverse 6.12. See [tags on GitHub](https://github.com/IQSS/dataverse/tags) for a list of versions. If you are running an earlier version, the only supported way to upgrade is to progress through the upgrades to all the releases in between before attempting the upgrade to this version.

If you are running Payara as a non-root user (and you should be!), **remember not to execute the commands below as root**. By default, Payara runs as the `dataverse` user. In the commands below, we use sudo to run the commands as a non-root user.

Also, we assume that Payara is installed in `/usr/local/payara7`. If not, adjust as needed.

The instructions below describe the upgrade procedure based on moving your existing Payara 7.2026.8 domain directory into the new Payara 7.2026.9 distribution. We recommend this method because it is the easiest way to recreate your current configuration and preserve your data.

1. Undeploy Dataverse, if deployed, using the unprivileged service account ("dataverse", by default).

The new version of Payara is not compatible with previous versions of Dataverse, so you should undeploy the running Dataverse 6.12 war file first.

```shell
sudo -u dataverse /usr/local/payara7/bin/asadmin list-applications

sudo -u dataverse /usr/local/payara7/bin/asadmin undeploy dataverse-6.12
```

1. Stop Payara.

```shell
sudo systemctl stop payara
```

1. Move the current Payara directory out of the way. Version 7.2026.8 is used in the examples below. Adjust accordingly if you are upgrading from a different version.

```shell
sudo mv /usr/local/payara7 /usr/local/payara7-2026.8
```

1. Download the new Payara version 7.2026.9, and unzip it.

```shell
curl -L -O https://nexus.payara.fish/repository/payara-community/fish/payara/distributions/payara/7.2026.9/payara-7.2026.9.zip

sudo unzip payara-7.2026.9.zip -d /usr/local/
```
1. Set ownership of the payara distribution to root, making it read-only for the service account ("dataverse" by default).

```shell
sudo chown -R root:root /usr/local/payara7
```

1. Replace the brand new `payara7/glassfish/domains/domain1` with your old, preserved domain1.

```shell
sudo mv /usr/local/payara7/glassfish/domains/domain1 /usr/local/payara7/glassfish/domains/domain1_DIST

sudo mv /usr/local/payara7-2026.8/glassfish/domains/domain1 /usr/local/payara7/glassfish/domains/
```

1. Set ownership of the domain for the service account ("dataverse" by default). Ownership should have been preserved during the move above, but this step assures that the domain is writable by the service account.

```shell
sudo chown -R dataverse:dataverse /usr/local/payara7/glassfish/domains/domain1
```

1. Remove the cache directories.

```shell
sudo rm -rf /usr/local/payara7/glassfish/domains/domain1/generated/

sudo rm -rf /usr/local/payara7/glassfish/domains/domain1/osgi-cache/
```

1. Start Payara.

```shell
sudo systemctl start payara
```

1. Deploy the Dataverse 6.12.1 war file.

```shell
wget https://github.com/IQSS/dataverse/releases/download/v6.12/dataverse-6.12.1.war

sudo -u dataverse /usr/local/payara7/bin/asadmin deploy dataverse-6.12.1.war
```

14 changes: 6 additions & 8 deletions doc/release-notes/6.12-release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ These are features that weren't already mentioned under "highlights" above.

## Other Changes

- Payara 7.2026.8 is now the supported and recommended version. See upgrade instructions below and #12498. We are aware that Payara 7.2026.9 is out but it didn't "just work" so we don't recommend it yet. See #12715.
- Payara 7.2026.9 is now the supported and recommended version. See upgrade instructions below, #12498 and #12715.
- Database indexes were added to the guestbookresponse table to speed up queries. See #12616.
- The QA Guide was added as an experiment in #10103 but has been removed because it has proved less useful than imagined. It can still be [viewed](https://guides.dataverse.org/en/6.11/qa/index.html) as it existed as of Dataverse 6.11. See #12582.

Expand Down Expand Up @@ -164,7 +164,7 @@ If you are running Payara as a non-root user (and you should be!), **remember no

Also, we assume that Payara is installed in `/usr/local/payara7`. If not, adjust as needed.

The instructions below describe the upgrade procedure based on moving your existing Payara 7.2026.2 domain directory into the new Payara 7.2026.8 distribution. We recommend this method because it is the easiest way to recreate your current configuration and preserve your data.
The instructions below describe the upgrade procedure based on moving your existing Payara 7.2026.2 domain directory into the new Payara 7.2026.9 distribution. We recommend this method because it is the easiest way to recreate your current configuration and preserve your data.

1. Undeploy Dataverse, if deployed, using the unprivileged service account ("dataverse", by default).

Expand All @@ -188,12 +188,12 @@ The instructions below describe the upgrade procedure based on moving your exist
sudo mv /usr/local/payara7 /usr/local/payara7-2026.2
```

1. Download the new Payara version 7.2026.8, and unzip it.
1. Download the new Payara version 7.2026.9, and unzip it.

```shell
curl -L -O https://nexus.payara.fish/repository/payara-community/fish/payara/distributions/payara/7.2026.8/payara-7.2026.8.zip
curl -L -O https://nexus.payara.fish/repository/payara-community/fish/payara/distributions/payara/7.2026.9/payara-7.2026.9.zip

sudo unzip payara-7.2026.8.zip -d /usr/local/
sudo unzip payara-7.2026.9.zip -d /usr/local/
```
1. Set permission for the service account ("dataverse" by default).

Expand Down Expand Up @@ -223,7 +223,7 @@ The instructions below describe the upgrade procedure based on moving your exist

1. Update configuration files in the moved domain.

The file `glassfish-acc.xml` from Payara 7.2026.2 has been renamed to `payara-acc.xml` in Payara 7.2026.8. Also `default-logging.properties` has been updated in the Payara 7.2026.8. We recommend copying these new files from the Payara 7.2026.8 distribution domain into the domain you copied over from your Payara 7.2026.2 installation.
The file `glassfish-acc.xml` from Payara 7.2026.2 has been renamed to `payara-acc.xml` in Payara 7.2026.9. Also `default-logging.properties` has been updated in the Payara 7.2026.9. We recommend copying these new files from the Payara 7.2026.9 distribution domain into the domain you copied over from your Payara 7.2026.2 installation.

```shell
sudo rm /usr/local/payara7/glassfish/domains/domain1/config/glassfish-acc.xml
Expand Down Expand Up @@ -257,8 +257,6 @@ The instructions below describe the upgrade procedure based on moving your exist
sudo -u dataverse /usr/local/payara7/bin/asadmin deploy dataverse-6.12.war
```

Please note: when watching logs while waiting for the deployment to finish, you may encounter `SEVERE` level warnings like "Leaking injection manager found in the current thread. Very likely because it wasn't removed in a previous invocation and leaked into this invocation." We have not found severe issues during testing this release and advise to ignore but monitor for unusual resource usage. We plan to address the underlying issue with the next release. See #12715 for more details.

1. Update metadata blocks.

In #12346 we added the value "Translator" under "contributorType" field and we need to reload the citation.tsv file because of this.
Expand Down
6 changes: 3 additions & 3 deletions doc/sphinx-guides/source/installation/prerequisites.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ On RHEL/derivative you can make Java 21 the default with the ``alternatives`` co
Payara
------

Payara 7.2026.8 is recommended. Payara 7.2026.9 doesn't "just work". See https://github.com/IQSS/dataverse/issues/12715 for details.
Payara 7.2026.9 is recommended. Newer versions might work fine. Regular updates are recommended.

Installing Payara
=================
Expand All @@ -55,8 +55,8 @@ Installing Payara

- Download and install Payara (installed in ``/usr/local/payara7`` in the example commands below)::

# wget https://nexus.payara.fish/repository/payara-community/fish/payara/distributions/payara/7.2026.8/payara-7.2026.8.zip
# unzip payara-7.2026.8.zip
# wget https://nexus.payara.fish/repository/payara-community/fish/payara/distributions/payara/7.2026.9/payara-7.2026.9.zip
# unzip payara-7.2026.9.zip
# mv payara7 /usr/local

If nexus.payara.fish is ever down for maintenance, Payara distributions are also available from https://repo1.maven.org/maven2/fish/payara/distributions/payara/
Expand Down
2 changes: 1 addition & 1 deletion modules/dataverse-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@
<argLine>-Duser.timezone=${project.timezone} -Dfile.encoding=${project.build.sourceEncoding} -Duser.language=${project.language} -Duser.region=${project.region}</argLine>

<!-- Major system components and dependencies -->
<payara.version>7.2026.8</payara.version>
<payara.version>7.2026.9</payara.version>
<postgresql.version>42.7.12</postgresql.version>
<solr.version>9.8.0</solr.version>
<postgresql.server.version>16</postgresql.server.version>
Expand Down
5 changes: 2 additions & 3 deletions src/main/java/edu/harvard/iq/dataverse/api/LDNInbox.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,16 @@
import java.util.logging.Logger;

import jakarta.ejb.EJB;
import jakarta.inject.Inject;
import jakarta.json.JsonObject;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.ws.rs.BadRequestException;
import jakarta.ws.rs.ClientErrorException;
import jakarta.ws.rs.ServiceUnavailableException;
import jakarta.ws.rs.WebApplicationException;
import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.ForbiddenException;
import jakarta.ws.rs.POST;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.Response;
import org.eclipse.microprofile.openapi.annotations.Operation;
import org.eclipse.microprofile.openapi.annotations.parameters.RequestBody;
Expand Down Expand Up @@ -58,7 +57,7 @@ public class LDNInbox extends AbstractApiBean {
@EJB
RoleAssigneeServiceBean roleAssigneeService;

@Context
@Inject
protected HttpServletRequest httpRequest;

public static final JsonLDNamespace activityStreams = JsonLDNamespace.defineNamespace("as",
Expand Down
Loading
Loading