Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
add deleteUnusedNatively to repository configuration json schema

Support using profile-based credentials for S3 binary storage

  1. … 5 more files in changeset.
Fix typos in ModeShape schemas

  1. … 1 more file in changeset.
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. … 20 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. … 10 more files in changeset.
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.
MODE-2635 Adds replica set support for the Mongo binary store to the JSON and WF configs

  1. … 13 more files in changeset.
MODE-1446 Adds BinaryStorage option for Amazon S3

  1. … 22 more files in changeset.
MODE-2077 Adds the ability to use DB locking via SELECT FOR UPDATE instead of JGroups locking

  1. … 24 more files in changeset.
MODE-2591 Changes the name of the datasource JNDI attribute for the DB persistence This should now match the other DS JNDI names used by the database binary store and JDBC metadata connector

  1. … 12 more files in changeset.
MODE-2574, MODE-2575 Adds configuration support for the Cassandra and MongoDB binary stores The support is added both in the JSON and the Wildfly kit, based on the current code (i.e. in terms of configuration options). This also fixes a number of other JBoss AS kit issues, exposed by the enhancement of the JBoss AS subsystem tests.

  1. … 37 more files in changeset.
MODE-2528 Integrates the new relational provider with the modeshape codebase This is a huge commit which makes the necessary changes to remove all Infinispan configuration and dependencies, replacing it with the new mechanism. It also contains several changes to the relational provider design because of various failing tests. This includes among other thing the necessity for ModeShape to notify the provider once exclusive locks have been obtained as part of each transaction.

  1. … 305 more files in changeset.
MODE-2556 Adds the ability to enable/disable the journal from the JSON/WF configuration

  1. … 11 more files in changeset.
MODE-2556 Adds the ability to enable/disable the journal from the JSON/WF configuration

  1. … 11 more files in changeset.
MODE-2546 Adds the ability to configure the lock timeout This also changes the previous implementation of the StandaloneLockingService and adds some more tests.

  1. … 22 more files in changeset.
MODE-2542 Adds the ability to cluster ModeShape repositories using dedicated JGroups channels This a semantical rollback of, but with a simplified configuration: ModeShape now has a built-in default for the JGroups configuration file and the WF kit supports both a separate JGroups configuration file and also a built-in server-defined stack.

  1. … 41 more files in changeset.
MODE-2540 Removes the ISPN binary store support.

  1. … 56 more files in changeset.
MODE-2536 Ads the ability for ModeShape to lookup different JTA transaction managers This is required because in the absence of ISPN, ModeShape will have to be able to support both local and user transactions, regardless of the environment it's being run in. This commit also removes the "transactionMode" configuration option, as ModeShape should be able to auto-detect if it's being run or not in the context of a user transaction.

  1. … 34 more files in changeset.
MODE-2529 Removes the "cacheTtlSeconds" setting and replaces it with a "cacheable" flag This also cleans up some of the code for as most of those abstractions weren't really required.

  1. … 35 more files in changeset.
MODE-2526 Replaces the workspace cache with a simple LRU cache based on a ConcurrentLinkedMap This is also updates both the JSON configuration and the Wildfly configuration with a simple setting - "cacheSize" - which controls the maximum number of elements from the workspace cache.

  1. … 63 more files in changeset.
MODE-2507 Exposes the "trash" folder as a configurable option of the FileSystemBinaryStore

  1. … 14 more files in changeset.
MODE-1903 Changes the journal to expose iterators of changed nodes, instead of collections This should ensure (if MapDB works correctly) that if there are lots of node being reindexed, the memory will not be filled up. This commit also changes the default reindexing mode from 'full' to 'if_missing' and fixes a minor validation of the TimeBasedKeys, to ensure overflow doesn't happen.

  1. … 10 more files in changeset.
MODE-1903 Adds incremental reindexing via the repository configuration Each index provider can "tell" the repository if it supports incremental reindexing. If it does and the journal is enabled, the repository can be configured at startup to reindex only the changed nodes since the last successful index update time. This commit also makes several changes & fixes to the ClusteredJournal logic.

  1. … 26 more files in changeset.
MODE-2195 Makes the event bus size configurable

  1. … 18 more files in changeset.
MODE-2489 Refactored mime-type handling and added the possibility of configuring the repository to use either "content", "name" or no mime-type detection at all.

  1. … 35 more files in changeset.
MODE-2469 Added a "maxPoolSize" configuration attribute which allows the configuration of the sequencer's and text extractor's maximum number of threads. Updated the AS kit to expose configuration attributes both for the names of the thread pools and the maximum size of the thread pool.

  1. … 23 more files in changeset.
MODE-2355 Fixed several indexing related issues: - when constraint contains the OR operator and index should apply only if it applies to all the parts of the constraint - the (cost * cardinality) formula should always be used when deciding which indexes to use - when determining the node-type criteria for the index selection, always use only the less-specific node type (i.e. super-type)

  1. … 6 more files in changeset.
MODE-2301 Added support for indexes to be updated synchronously or asynchronously

Prior to this commit, all updates to the indexes in the 4.0 codebase were asynchronous. That means that

the method added the ChangeSet describing the session's changes onto the event bus and

then returned. All index updates were done in separate listener threads on the event bus, so it's entirely

possible (and perhaps likely) that any updates to the indexes happen after the client's call to

returned. The net effect is that the client might make changes and immediately issue a query that would not

find the recently-saved changes. Additionally, there was no way for the client to know when the indexes would

be updated.

With this commit, it is possible to define whether each index is updated synchronously before the

the returns, or asynchronously so that index updates are made in a separate thread.

This commit changes the default behavior of the index updates to be *synchronous*.

In a cluster, any changes made on one process are sent via the change bus to the other processes,

and the indexes in those other processes are always updated asynchronously. In other words, if an

index provider keeps copies of the indexes on every process, then only the local indexes are updated

synchronously before save returns -- and that does not wait until the indexes in the other

processes are updated.

In order to properly implement this, a small change was made to the ChangeBus to expand the semantic concept

of an "in-thread" listener. Prior to this, "in-thread" meant that the listener only received locally-originating

change sets. Now, it's still possible to do this (and the journal uses this older behavior), but it's also

possible to register a listener such that locally-originating change sets are handled in-thread while remotely

originating change sets are handled asynchronously.

  1. … 20 more files in changeset.
MODE-2160 Added support for specifying index definitions in repository configuration files

  1. … 13 more files in changeset.
MODE-2188 Added management of index providers to Wildfly subsystem

It is now possible to manage the index providers using the Wildfly configuration and CLI tools.

Additionally, ModeShape is no longer dependent upon Lucene or Hibernate Search.

    • -538
    • +68
  1. … 141 more files in changeset.