Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JAMES-2586 Postgresql implementation: ready for master #2587

Open
wants to merge 344 commits into
base: master
Choose a base branch
from

Conversation

Arsnael
Copy link
Contributor

@Arsnael Arsnael commented Jan 7, 2025

Here is the final work regarding postgresql implementation with James.

Please James community help us reviewing, commenting, approving if you wish to see this work being officially merged into the main branch of the project!

Note for the team: Last two commits were added to fix the build after rebase on latest master.

Arsnael and others added 30 commits January 7, 2025 09:16
Fixed by JAMES-2586 Small codestyle refactorings.
…lict

Otherwise, we could retry on other fatal errors like: io.r2dbc.postgresql.ExceptionFactory$PostgresqlBadGrammarException: column "domain" of relation "mailbox" already exists.
…ostgres table

Would be useful in case jOOQ DSL does not provide support for some queries e.g. create an EXCLUDE constraint.
Merge a few PRs parallel led to this.
Again, an issue because of merging PRs in parallel.
While not needed now this extra field would
significantly ease a future JMAP Sieve
implementation and avoid a migration.
Arsnael and others added 20 commits January 7, 2025 09:20
…-cli

GIVEN I run james-cli in kubernetes
THEN the pod crashes and reboots

Because the james-cli runs JVM it catches the environment variables set by James.
As such it always pretouch 3GB of RAM. When added to memory consumed by James it exceeds the limit and pod get's OOM-killed.
- Ref commit: 829a63f [IMPROVEMENT] JMAP use search index relevance as default sort
…Supported

- TODO - Wait to adapt James-3945 to Postgres
Ref commit: 81b61ed
- Fix java.util.ConcurrentModificationException
- Fix test InMemoryUploadRepositoryTest
…some test class

- The RLS PostgresExtension for test case that use without domain part don't make sense
@Arsnael Arsnael self-assigned this Jan 7, 2025
@Arsnael Arsnael changed the title Postgresql implementation: ready for master JAMES-2586 Postgresql implementation: ready for master Jan 7, 2025
Jenkinsfile Outdated Show resolved Hide resolved
@Maxxx873
Copy link
Contributor

Maxxx873 commented Jan 8, 2025

Here is the final work regarding postgresql implementation with James.

Please James community help us reviewing, commenting, approving if you wish to see this work being officially merged into the main branch of the project!

Note for the team: Last two commits were added to fix the build after rebase on latest master.

Excellent work, in my opinion

Copy link
Contributor

@j-hellenberg j-hellenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, guys! While we do not quite feel qualified to review this large change set, we experimented with the work-in-progress version lately and found it to work quite well.

@chibenwa
Copy link
Contributor

chibenwa commented Jan 8, 2025

While we do not quite feel qualified to review this large change set,

Nobody do!

Hopefully it was built by many smaller PR against the postgresql branch so that people could review each step of the implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants