ModeShape

Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Merge pull request #1641 from hchiorean/MODE-2674

MODE-2674 Adds the ability to pass custom Hikari configuration options to the relational db provider

MODE-2674 Adds the ability to pass custom Hikari configuration options to the relational db provider It configures the "minimumIdle" property to a default of 1, meaning only 1 idle connection should be in the pool at any time. It changes the structure of the WF kit by removing the custom Hikari module (which had just 1 resource) and moving that dependency inside the persistence-relational module. It also updates the Hikari version to 2.6.1.

  1. … 6 more files in changeset.
Merge pull request #1640 from hchiorean/MODE-2676

MODE-2676 Fixes the removal of version histories when multi-version graphs exist

MODE-2676 Fixes the removal of version histories when multi-version graphs exist

Merge pull request #1639 from hchiorean/MODE-2672

MODE-2672 Fixes the handling of node removals spanning multiple session saves via the same user transaction

MODE-2672 Fixes the handling of node removals spanning multiple session saves via the same user transaction The problem was that the RelationalDb was incorrectly sending back a "dummy" document which had no ID causing subsequent failures. This commit contains an additional (unrelated) change which clears the internal JcrSession state after a successful save or refresh. This should ensure better memory handling as it does not keep "hydrated" JCR node references in the internal cache

Merge pull request #1637 from dnillia/MODE-2673

MODE-2673: add missing argument to [threadAssociatedWithAnotherTransaction] i18n key.

MODE-2673: add missing argument to [threadAssociatedWithAnotherTransaction] i18n key.

Merge pull request #1636 from hchiorean/MODE-2670

MODE-2670 Changes the logic of initializing in a cluster, removing redundant locking

MODE-2670 Changes the logic of initializing in a cluster, removing redundant locking This commit also changes the default locking method in a cluster to be DB locking, which is far more reliable than JGroups. That latter has been deprecated (code wise) and will be removed in the next major version.

Merge pull request #1635 from hchiorean/MODE-2671

MODE-2671 Fixes potential DB connection leak if a binary value is not found in a DB binary store

MODE-2671 Fixes potential DB connection leak if a binary value is not found in a DB binary store

Merge pull request #1634 from hchiorean/MODE-2670

MODE-2670 Changes the implementation of the internal repository locking

MODE-2670 Changes the implementation of the internal repository locking The new lock implementation uses a bare-bone AbstractQueuedSynchronizer implementation because in ModeShape's case locks have to be able to be unlocked from other threads than the owning threads (transaction rollbacks). The previous ReentrantLock implementation would obviously not work.

This commit also changes the way the persistence stores deal with transactions: instead of holding onto the "current" transaction via a ThreadLocal variable, they will now rely on their internal mapping of tx ids. This is provided by ModeShape for each transaction. Therefore, thread-locality is no longer an issue.

The commit further changes some of the ways in which internal transactions are used during repository startup, making sure some operations are grouped and some - the preconfigured workspaces - are created up-front within a single transaction.

  1. … 5 more files in changeset.
Merge pull request #1633 from hchiorean/MODE-2669

MODE-2668, MODE-2669 Fixes some more issues around user transactions

MODE-2669 Makes sure that RelationalDb correctly cleans up resources for commit and rollback This change makes sure that even if commit or rollback are called from a separate thread than txStarted, the cleanup logic is still performed

MODE-2668 Adds an additional check for the case when there's an aborted user transaction

Merge pull request #1631 from open4storage/mode-2667

MODE-2667 Added S3 endpoint support

updated schema for new s3 endpoint parameter and replace constant bug. fcrepo-webapp/

Merge pull request #1632 from hchiorean/MODE-2668

MODE-2668 Fixes the handling of JCR operations within non-active user transactions

MODE-2668 Fixes the handling of JCR operations within non-active user transactions Any JCR session operation attempted within a non active user transaction will raise an exception and will leave the transient state of the session unchanged (as per the docs of the session.save method)

MODE-2532, MODE-2532 Added S3 endpoint support

Added changes to:

-Added additional overloaded constructor to take 'endpoint' as an parameter

-Updated schema file to support this additional parameter (as optional to keep backward compatibility).

-Repository config files so it uses endpoint

{

"name": "Test Repository",

"storage": {

"binaryStorage": {

"type": "s3",

"username": "access_key",

"password": "secrey",

"bucketName": "modeshape_bucket",

"endPoint": "https://some3scompatiblestorage"

}

}

}

Merge pull request #1628 from hchiorean/MODE-2666

MODE-2666 Fixes the issue of the Comparators used for MapDB storage not being Serializable

MODE-2666 Fixes the issue of the Comparators used for MapDB storage not being Serializable This commit also makes sure that when ORDER BY is used with the same column multiple times, only one occurrence is present in the query plan

Merge pull request #1627 from hchiorean/MODE-2661

MODE-2661 Changes the logic of some of the Lucene queries to improve search performance

MODE-2661 Changes the logic of some of the Lucene queries to improve search performance The changes include both the logic of ConstantScoreWeightQuery which no longer goes through all the documents directly and also making sure to use Lucene native TermQueries when applicable. They also refactor some of the query code to use Java 8 idioms. This commit also upgrades the Lucene version to the latest 6.4.1

Merge pull request #1626 from hchiorean/MODE-2664

MODE-2664 Fixes various issues with SQLServer support

MODE-2664 Fixes various issues with SQLServer support The fixes include: * making sure CREATE and DROP table statements correctly detect existing objects * using correct syntax for DB locking * using the correct binary type for storing schematic documents

    • -4
    • +58
    /modeshape-persistence-tests/pom.xml
Merge pull request #1625 from hchiorean/MODE-2665

MODE-2665 Changes the RepositoryLockManager#unlock method so that it saves the system session first

MODE-2665 Changes the RepositoryLockManager#unlock method so that it saves the system session first This addresses potential multi-threaded deadlocks in the sense that the same order of node keys should be used when locking nodes internally across the JCR lock and unlock operations, as a whole.