IQSS / IQSS/dataverse

Extend and document recommended database connection settings

Open
#11,556 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component: Containers Feature: Installation Guide Type: Feature User Role: Sysadmin
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Overview of the Feature Request

We have some (limited) docs about what kind of options you can set, but there is no docs about what would be a good idea for a production setup.

I suppose https://guides.dataverse.org/en/latest/installation/config.html#additional-recommendations would be a good place for such a thing. Or put it at https://guides.dataverse.org/en/latest/installation/config.html#database-persistence

What kind of user is the feature intended for?
Sysadmin

What inspired the request?
My own troubles when I had to restart the Postgres DB. Talking with fellow ops.

What existing behavior do you want changed?

  • Add hints about connection validation (probably recommend auto-commit as a first step, or go with org.glassfish.api.jdbc.validation.PostgresConnectionValidation class).
  • Add connectTimeout=30&socketTimeout=600 via DATAVERSE_DB_PARAMETERS (add docs what these do, too, see pgJDBC docs)
  • Update Payara docs links, now here.
  • Add notes about statement + connection leaks (enable, monitor, later enforce, ensure statement timeout < statement leak timeout < connection leak timeout, dataverse.db.statement-timeout-in-seconds)

Any brand new behavior do you want to add to Dataverse?
None.

Any open or closed issues related to this feature request?
#9504
#8959
#7980
#12241

Are you thinking about creating a pull request for this feature?
Probably will do.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the installation/config.html sections on additional recommendations and database persistence. Review the requested DATAVERSE_DB_PARAMETERS values, Postgres connection validation, Payara database connectivity links, and leak and statement-timeout settings listed in the issue. Done means the production recommendations and option explanations are documented accurately in the relevant configuration guide.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, postgresql
Domain
databases, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.