Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Merge pull request #1655 from dalbani/patch-3

[MODE-2691] Set min size of S3BinaryStore's file system cache to 0

Set min size of S3BinaryStore's file system cache to 0

[MODE-2690] Set content length in ObjectMetadata for S3 uploads

MODE-2685 Fixes ClassCastException when reordering transient child nodes

  1. … 1 more file in changeset.
MODE-2684 Removes the compile time dependency of modeshape-core towards Apache Tika The mime type extraction functionality will still function as-is if Tika is present, but now there is also an independent extension-based default which will be used if Tika is not present in the CP at runtime

    • -0
    • +75
    ./org/modeshape/jcr/mimetype/DefaultMimeTypeDetector.java
  1. … 15 more files in changeset.
MODE-2682 Fixes the performance issues with the LocalEnumeratedIndex This change first makes sure that the total index count is calculated in memory and also uses the MapDB internal counter for the inner hash sets

  1. … 2 more files in changeset.
MODE-2681 Fixes the updating of the counter for the local duplicate index This change should make the logic fault-tolerant when the index is stopped unexpectedly

MODE-2679 Fixes case insensitive comparisons done via the TokenStream This affects node types and any other places where the aforementioned class is used

    • -1
    • +19
    ./org/modeshape/jcr/JcrRepository.java
  1. … 5 more files in changeset.
MODE-2678 Changes the DatabaseBinaryStore to use transactions instead of auto-committed connections It also fixes the case of multiple cluster nodes inserting the same binary simultaneously in the database.

  1. … 1 more file in changeset.
MODE-2672 Adds exception handling for the case when multiple cluster nodes attempt to concurrently lock a node

    • -1
    • +4
    ./org/modeshape/jcr/RepositoryLockManager.java
  1. … 1 more file in changeset.
MODE-2677 Fixes the logic of the loadAll method to make sure the size of the first non-empty batch is returned

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

    • -0
    • +12
    ./org/modeshape/jcr/JcrVersionManager.java
  1. … 2 more files in changeset.
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

    • -1
    • +19
    ./org/modeshape/jcr/AbstractJcrNode.java
    • -6
    • +12
    ./org/modeshape/jcr/JcrSession.java
    • -8
    • +6
    ./org/modeshape/jcr/JcrSharedNodeCache.java
    • -1
    • +1
    ./org/modeshape/jcr/JcrVersionHistoryNode.java
  1. … 5 more files in changeset.
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.

    • -6
    • +6
    ./org/modeshape/jcr/JcrRepository.java
    • -78
    • +74
    ./org/modeshape/jcr/cache/RepositoryCache.java
  1. … 10 more files in changeset.
MODE-2671 Fixes potential DB connection leak if a binary value is not found in a DB binary store

    • -4
    • +15
    ./org/modeshape/jcr/value/binary/Database.java
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.

    • -26
    • +11
    ./org/modeshape/jcr/JcrRepository.java
    • -5
    • +0
    ./org/modeshape/jcr/ModeShapeLexicon.java
    • -87
    • +60
    ./org/modeshape/jcr/cache/RepositoryCache.java
    • -4
    • +10
    ./org/modeshape/jcr/txn/Transactions.java
  1. … 11 more files in changeset.
MODE-2668 Adds an additional check for the case when there's an aborted user transaction

    • -0
    • +12
    ./org/modeshape/jcr/txn/Transactions.java
updated schema for new s3 endpoint parameter and replace constant bug. fcrepo-webapp/

  1. … 2 more files in changeset.
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)

    • -5
    • +5
    ./org/modeshape/jcr/txn/LocalTransaction.java
    • -4
    • +3
    ./org/modeshape/jcr/txn/Transactions.java
  1. … 2 more files in changeset.
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"

}

}

}

  1. … 9 more files in changeset.
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

    • -52
    • +38
    ./org/modeshape/jcr/query/Tuples.java
  1. … 1 more file in changeset.
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

    • -21
    • +11
    ./org/modeshape/jcr/query/engine/QueryUtil.java
  1. … 14 more files in changeset.
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.

    • -1
    • +2
    ./org/modeshape/jcr/RepositoryLockManager.java
MODE-2663 Adds ordering to the MongoDB input/output stream chunks so that they work with Mongo replicas

MODE-2658 Fixes the sequencing's behavior of removing existing output when the same node is sequenced multiple times

    • -3
    • +3
    ./org/modeshape/jcr/SequencingRunner.java
  1. … 4 more files in changeset.
MODE-2654 Fixes the behavior of copying locked nodes As per JCR #17.7 locked nodes should be copied without any special restriction

  1. … 1 more file in changeset.
MODE-2650 Adds the ability to update the connector configuration of a running repository

    • -28
    • +56
    ./org/modeshape/jcr/Connectors.java
    • -8
    • +10
    ./org/modeshape/jcr/JcrRepository.java
  1. … 3 more files in changeset.
MODE-2641 Changes the behavior of lock#getSecondsRemaining() to return the actual number of seconds for open scoped locks

    • -4
    • +24
    ./org/modeshape/jcr/RepositoryLockManager.java
  1. … 2 more files in changeset.
support non-built-in namespaces in query selectors

MODE-2635 Makes the host and port configurations optional so that they can be used interchangeably with host addresses

  1. … 3 more files in changeset.