Francesco Chicchiriccò created SYNCOPE-1827:
-----------------------------------------------

             Summary: Remove non-JSON JPA support
                 Key: SYNCOPE-1827
                 URL: https://issues.apache.org/jira/browse/SYNCOPE-1827
             Project: Syncope
          Issue Type: Task
            Reporter: Francesco Chicchiriccò
            Assignee: Francesco Chicchiriccò
             Fix For: 4.0.0


Historically, JPA support was provided since the beginning under 
{{core/persistence-jpa}}.

At a certain point, some way to leverage the possibility to manipulate JSON 
strings for user, group and any object attributes was introduced for PostgreSQL 
first, then MySQL, Oracle and finally MariaDB. The purpose: higher throughput 
and lower search operation roundups.
Such "flavors" were implemented under {{core/persistence-jpa-json}}.

It's been quite some time, however, that all new deployments have been starting 
directly with one of JSON flavors rather than with their non-JSON, original, 
counterparts.

The [proposal|https://lists.apache.org/thread/xkh85f8hv83lz3cmlfxkhj45bmt9hz6c] 
to keep, for 4.0 onwards, only such JSON flavors was discussed and found no 
arguments against.

Removing the non-JSON flavors will result in simplified code, easier to 
maintain.

One side issue of such a proposal is that Syncope 4.0 will not be able to run 
on H2 any more. H2 is currently used for several unit tests, integration test 
profiles, standalone and even in the embedded profile for archetype.

To solve this, we will be leveraging [embedded 
PostgreSQL|https://github.com/zonkyio/embedded-postgres], a nice AL-2.0 project 
which provides support to run a PostgreSQL instance, without Docker, on all 
major platforms including GNU / Linux, Mac OS and Windows.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to