Uploaded image for project: 'Syncope'
  1. Syncope
  2. SYNCOPE-1827

Remove non-JSON JPA support

    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 4.0.0
    • None
    • None

    Description

      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 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, 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.

      Attachments

        Issue Links

          Activity

            People

              ilgrosso Francesco Chicchiriccò
              ilgrosso Francesco Chicchiriccò
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: