Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
MODE-2562 Fixes the parsing of backslash characters by the JsonReader

  1. … 11 more files in changeset.
MODE-2527 Renames the schematic package to org.modeshape and removes all ISPN related code.

    • -155
    • +0
    ./DefaultDocumentValueFactory.java
    • -169
    • +0
    ./IncrementalDocumentEditor.java
  1. … 299 more files in changeset.
MODE-2528 Removes any ISPN specific SPI from the SchematicDB and LocalDocumentStore. Makes some changes to transactions processing, preparing for non ISPN storage.

    • -0
    • +169
    ./IncrementalDocumentEditor.java
  1. … 43 more files in changeset.
MODE-2437 Removed Infinispan test-jar dependencies and reduced as much as possible the regular ISPN API dependencies throughout the code.

  1. … 56 more files in changeset.
MODE-2317 Updated the JsonReader to support regular character sequences, even if they begin with \u.

  1. … 3 more files in changeset.
MODE-2317 Updated the JsonReader to support regular character sequences, even if they begin with \u.

Conflicts:

modeshape-schematic/src/test/java/org/infinispan/schematic/internal/document/JsonReaderTest.java

  1. … 3 more files in changeset.
MODE-2309 Corrected handling of non-ASCII characters when reading and writing JSON via binary streams by enforcing UTF-8

  1. … 2 more files in changeset.
MODE-2309 Corrected handling of non-ASCII characters when reading and writing JSON via binary streams by enforcing UTF-8

  1. … 2 more files in changeset.
MODE-2309 Added a comment to clarify JSON read/write logic.

MODE-2309 Added a comment to clarify JSON read/write logic.

MODE-2309 Corrected reading and writing JSON files when escaped characters are used.

This fixes the backup and restore issue. Note that ModeShape uses BSON when storing nodes in Infinispan, so this

should not affect persistent storage in a cache store. ModeShape uses JSON for the file connector (extra properties)

and for the REST service; neither of these should be impacted negatively by this change, though like the backup

and restore this change should fix any as-of-yet unseen issues related to escaped characters.

Note that it is not possible to just update the Restore functionality, so with this change new backups will have

to be created. This change does need to be applied to the 3.x branch as well.

  1. … 7 more files in changeset.
MODE-2309 Corrected reading and writing JSON files when escaped characters are used.

This fixes the backup and restore issue. Note that ModeShape uses BSON when storing nodes in Infinispan, so this

should not affect persistent storage in a cache store. ModeShape uses JSON for the file connector (extra properties)

and for the REST service; neither of these should be impacted negatively by this change, though like the backup

and restore this change should fix any as-of-yet unseen issues related to escaped characters.

Note that it is not possible to just update the Restore functionality, so with this change new backups will have

to be created. This change does need to be applied to the 3.x branch as well.

Conflicts:

modeshape-jcr/src/test/java/org/modeshape/jcr/RepositoryBackupAndRestoreTest.java

modeshape-schematic/src/test/java/org/infinispan/schematic/internal/document/JsonReaderTest.java

  1. … 7 more files in changeset.
MODE-2254 Changed the JsonSidecarExtraPropertiesStore to avoid trying to interpret string properties as dates by default and also fixed a potential StringIndexOutOfBounds exception when converting ISO 8601 strings to dates.

Conflicts:

modeshape-jcr/src/test/java/org/modeshape/connector/filesystem/FileSystemConnectorTest.java

  1. … 3 more files in changeset.
MODE-2254 Changed the JsonSidecarExtraPropertiesStore to avoid trying to interpret string properties as dates by default and also fixed a potential StringIndexOutOfBounds exception when converting ISO 8601 strings to dates.

  1. … 3 more files in changeset.
MODE-2254 Changed the JsonSidecarExtraPropertiesStore to avoid trying to interpret string properties as dates by default and also fixed a potential StringIndexOutOfBounds exception when converting ISO 8601 strings to dates.

Conflicts:

modeshape-jcr/src/test/java/org/modeshape/connector/filesystem/FileSystemConnectorTest.java

  1. … 3 more files in changeset.
MODE-2214 Fixed JSON array parsing and corrected invalid files use throughout our tests.

  1. … 5 more files in changeset.
MODE-2082 Added support for single-line comments in JSON files.

  1. … 5 more files in changeset.
MODE-2066 Migrated to Infinispan 6.0.1 and JGroups 3.4.1. Beside the changes involving package migrations and API changes, because the BDB and JDBM cachestore have not been ported to 6.x yet, all references (only unit tests) to those cache stores were removed and replaced with LevelDB. The old FileCacheStore has been discontinued and therefore replaced with SingleFileStore.

  1. … 93 more files in changeset.
MODE-2148 Added checkstyle to our build, and corrected numerous potential problems or issues in the code. Also removed lots of meaningless JavaDoc

  1. … 365 more files in changeset.
MODE-2041 Corrected numerous compiler warninings, JavaDoc errors and warnings, and removed quite a few JavaDoc comments that are inherited via @Override.

  1. … 79 more files in changeset.
MODE-2081 Changed the license for ModeShape code to ASL 2.0.

    • -16
    • +10
    ./DefaultDocumentValueFactory.java
  1. … 106 more files in changeset.
Schematic improvement to add ability to merge documents

  1. … 5 more files in changeset.
MODE-1853 - Updated the code so that "unwrap" is called in more places, trying to avoid the risk of Document & Array editors being passed in.

  1. … 7 more files in changeset.
MODE-1853 Add checks to ensure DocumentEditor & ArrayEditor instances are stored

Added a few bits of logic to ensure that any DocumentEditor or ArrayEditor

(which wrap Document and Array objects) are not stored. There were a few

methods that might have been storing them.

  1. … 1 more file in changeset.
MODE-1745 Corrections to Schematic's state transfer

Several issues related to state-transfer were identified and corrected within Schematic's DeltaAware implementation. These primarily dealt with using diff-based deltas when using Infinispan 5.2.0 (tested with Beta6 and later), the implementations of the two deltas (and related classes), and how merges are made, and removal of the NullDelta class.

With these changes, the test projects in MODE-1745 and MODE-1746 work better. There still are problems with state transfer during repository initialization. See MODE-1745 for details.

  1. … 10 more files in changeset.
MODE-1513 Merge branch 'federation' into 'master'

Conflicts:

modeshape-jcr/src/main/java/org/modeshape/jcr/JcrRepository.java

modeshape-jcr/src/test/java/org/modeshape/jcr/JcrNodeTypesTest.java

modeshape-jcr/src/test/java/org/modeshape/jcr/JcrRepositoryStartupTest.java

  1. … 9 more files in changeset.
MODE-1286 Added more tests for the Git connector

The Git connector is running much better now after the new tests

helped check the functionality.

This includes a change to the Connector SPI that allows the connector

to offer a direct way to find a parent's ChildReference to a particular

child node. When some connectors have *lots* of children under a single

parent, getting the path to that child can be expensive because the

repository (or session) has to find the ChildReference in the parent's

(potentially-segmented) list of ChildReferences. With lots of children,

this becomes very expensive.

Now, a new method on ChildReferences allows the LazyCachedNode to

directly ask the DocumentStore (and thus the Connector) for the child

reference. Some connectors (like the Git connector) can do this

directly.

  1. … 36 more files in changeset.
MODE-1703 Minor improvements

Based upon feedback, two sections of commented-out code were removed (they'd been there

for some time) and the Code.Externalizer methods were changed to use constants rather

than magic numbers for the types of the Code classes.

  1. … 1 more file in changeset.
MODE-1703 Minor improvements

Based upon feedback, two sections of commented-out code were removed (they'd been there

for some time) and the Code.Externalizer methods were changed to use constants rather

than magic numbers for the types of the Code classes.

  1. … 1 more file in changeset.
MODE-1703 Corrected serialization of Schematic deltas

Array objects were not being serialized/deserialized properly

within the delta's operation instances (e.g., PutOperation).

Normally, all SchematicEntry (e.g., Documents containing values

such as Arrays and other Documents) are serialized using BSON, and

this works correctly in the non-clustered case. However, in the

clustered case, the changes made to one Document are recorded to

create a SchematicEntryDelta that is shipped across the Infinispan

cluster. (This way we can ship only the changes to the

SchematicEntry rather than the whole document.) Thus the problem

only manifest itself in clustered configurations.

The actual problem stemmed from the fact that an

SchematicEntryDelta and its Operation objects are all

externalizable (with custom Externalizers). The Operation objects

can contain individual values, Document or Array objects. These are

also externalizable, but there was a single DocumentExternalizer

for both Document and Array objects and the DocumentExternalizer

wrote/read both to/from BSON.

However, the BSON format (which is simply a binary representation

of JSON documents, with a few extra value types) is only valid for

Documents; a standalone Array cannot be written in BSON format.

The solution was to use the DocumentExternalizer for Documents, but

a new ArrayExternalizer for Arrays. This ArrayExternalizer still

uses BSON, but it uses a subset of the BSON representation to

serialize Array objects. But, it does work well and fixes the

problem.

Quite a few new tests were added to verify that the various

operations with various parameters are indeed externalizable. The

tests don't cover all the permuations, but they do attempt to cover

the different kinds of operations with documents and arrays.

To make the Operation objects easily testable, equals and hashCode

methods were added to all the Operation subclasses. Additionally,

all of the externalizers were manually reviewed for asymmetric read

and write methods (e.g, writing an object to the ObjectOutputStream

but reading an integer from the ObjectInputStream), and several

asymmetries were found in the Externalizers for BSON value types

that ModeShape doesn't currently use, and these asymmetries were

corrected.

All unit and integration tests pass with these changes.

    • -0
    • +71
    ./ArrayExternalizer.java
  1. … 23 more files in changeset.