You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by Alex Parvulescu <al...@apache.org> on 2014/04/03 21:45:48 UTC

Re: svn commit: r1584349 - in /jackrabbit/oak/trunk: RELEASE-NOTES.txt oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java

pushed out by mistake, trying to fix now


On Thu, Apr 3, 2014 at 9:43 PM, <al...@apache.org> wrote:

> Author: alexparvulescu
> Date: Thu Apr  3 19:43:03 2014
> New Revision: 1584349
>
> URL: http://svn.apache.org/r1584349
> Log:
> OAK-1675 The OrderedPropertyIndex track WARN and INFO too often
>  patch by Davide Giannella
>
>
> Modified:
>     jackrabbit/oak/trunk/RELEASE-NOTES.txt
>
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java
>
> Modified: jackrabbit/oak/trunk/RELEASE-NOTES.txt
> URL:
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/RELEASE-NOTES.txt?rev=1584349&r1=1584348&r2=1584349&view=diff
>
> ==============================================================================
> --- jackrabbit/oak/trunk/RELEASE-NOTES.txt (original)
> +++ jackrabbit/oak/trunk/RELEASE-NOTES.txt Thu Apr  3 19:43:03 2014
> @@ -1,4 +1,4 @@
> -Release Notes -- Apache Jackrabbit Oak -- Version 0.19
> +Release Notes -- Apache Jackrabbit Oak -- Version 0.20.0
>
>  Introduction
>  ------------
> @@ -10,108 +10,148 @@ world-class web sites and  other demandi
>  The Oak effort is a part of the Apache Jackrabbit project.
>  Apache Jackrabbit is a project of the Apache Software Foundation.
>
> -Jackrabbit Oak 0.19 is to alpha-level software. Use at your own risk.
> +Jackrabbit Oak 0.20.0 is to alpha-level software. Use at your own risk.
>
> -Changes in Oak 0.19
> --------------------
> +Changes in Oak 0.20.0
> +---------------------
>
>  New Features
>
> -  [OAK-168] Basic JCR VersionManager support
> -  [OAK-307] Oak/Solr integration
> -  [OAK-516] Create LdapLoginModule based on ExternalLoginModule
> -  [OAK-805] Support for existing Jackrabbit 2.x DataStores
> -  [OAK-867] Oak whiteboard
> -  [OAK-1160] Generic interfaces for operation tasks
> -  [OAK-1161] Simple failover for TarMK-based installations
> -  [OAK-1333] SegmentMK: Support for Blobs in external storage
> -  [OAK-1511] S3 DataStore in Oak (including GC)
> -  [OAK-1512] Jackrabbit 2.x DataStore GC for SegmentNodeStore
> -  [OAK-1539] Implement JackrabbitObservationManager
> +  [OAK-382] JMX service to configure auto-cancel or long running queries
> +  [OAK-593] Segment-based MK
> +  [OAK-631] SegmentMK: Implement garbage collection
> +  [OAK-904] Query: support "union" and "union all"
> +  [OAK-1341] DocumentNodeStore: Implement revision garbage collection
> +  [OAK-1574] AbstractRebaseDiff: Implement refined conflict resolution
> for addExistingNode conflicts
> +  [OAK-1576] SegmentMK: Implement refined conflict resolution for
> addExistingNode conflicts
> +  [OAK-1577] H2MK: Implement refined conflict resolution for
> addExistingNode conflicts
> +  [OAK-1636] Solr index: support "jcr:score"
>
>  Improvements
>
> -  [OAK-17] Modularisation and configuration concept
> -  [OAK-150] Basic JCR LockManager support
> -  [OAK-377] Data store garbage collection
> -  [OAK-458] Define upgrade from Jackrabbit2.x to Jackrabbit OAK
> -  [OAK-650] Move SegmentNodeStoreBranch.RebaseDiff to utility package
> -  [OAK-700] Fix OSGi deployment for Oak based SolrServers
> -  [OAK-759] MongoMK: read from a secondary member when possible
> -  [OAK-850] Degrade gracefully when :childOrder is out of sync
> -  [OAK-1013] Node.addNode(name) different behavior from JR if NodeType
> resolves to an abstract
> -  [OAK-1153] Write test to measure throughput on Mongo with multiple
> reader and writer
> -  [OAK-1251] DocumentStore refactoring
> -  [OAK-1261] Enable LDAP related tests
> -  [OAK-1263] optimize oak index to support 'fast ORDER BY' queries to
> support sorting & pagination for large set of children
> -  [OAK-1355] ResultSet.getSize returns -1 failing QueryResultTest
> -  [OAK-1390] Document the migration from Jackrabbit Classic to Oak
> -  [OAK-1423] SegmentMK: Add index(es) to tar file backend
> -  [OAK-1426] Cleanup options in oak-run
> -  [OAK-1434] Cleanup dependencies of oak-core
> -  [OAK-1443] Oak Solr indexer should be resilient to Solr failures
> -  [OAK-1444] Improve precision of Solr default analyzers
> -  [OAK-1454] Warn on huge multi-valued properties
> -  [OAK-1475] Make Oak Solr bundle a fragment of Oak Lucene
> -  [OAK-1484] additional observation queue jmx attributes
> -  [OAK-1497] JackrabbitEvent#isExternal() returns true for internal
> changes for slow listeners
> -  [OAK-1499] SolrIndexEditor should cache indexing requests if Solr is
> not reachable
> -  [OAK-1502] Make DataStores available to NodeStores
> -  [OAK-1504] Create benchmark tests to measure effect of mod_count and
> everyone cache
> -  [OAK-1505] Benchmark for Session#hasPermission
> -  [OAK-1507] Expose MLT feature for Lucene index
> -  [OAK-1508] Binary less transport of content support
> -  [OAK-1509] AbstractBlobStore: use a concurrent cache
> -  [OAK-1510] MongoDB / DocumentNodeStore DataStore GC performance
> -  [OAK-1514] Support for Sling JcrResourceListener
> -  [OAK-1518] Relaxed type checking during upgrade
> -  [OAK-1519] UserAuthentication: Return false if userId cannot be resolved
> -  [OAK-1521] Remove dependency on com.googlecode.json-simple from oak-core
> -  [OAK-1527] Remove dependency on commons-beanutils
> -  [OAK-1528] Update Slf4j Api dependency to 1.7.6
> -  [OAK-1534] Clock improvements
> -  [OAK-1538] Create OSGi package for oak-solr indexer
> -  [OAK-1540] Switch Jackrabbit dependency to 2.8-SNAPSHOT and back once
> we have JCR-3745 released
> -  [OAK-1547] Simplify management of Solr configuration changes in
> SolrServerProviderService
> -  [OAK-1548] Updated bundled solrconfig.xml to support latest improvements
> -  [OAK-1551] EmbeddedSolrServerProvider should not let JettySolrRunner
> running
> -  [OAK-1552] Switch to newest solr.xml file format
> -  [OAK-1563] FullTextConstraint support in SolrQueryIndex
> -  [OAK-1565] Optimize repository upgrade by loading bundles where possible
> -  [OAK-1572] Add checkpoint operation to the filestore jmx api
> +  [OAK-262] Query: support pseudo properties like jcr:score() and
> rep:excerpt()
> +  [OAK-319] Similar (rep:similar) support
> +  [OAK-321] Deref (jcr:deref) support
> +  [OAK-327] XPath 'eq' support and related
> +  [OAK-1056] Transient changes contributed by commit hooks are kept in
> memory
> +  [OAK-1295] Recovery for missing _lastRev updates
> +  [OAK-1329] Relaxed JCR locking behavior
> +  [OAK-1342] Cascading document history
> +  [OAK-1446] Offline tool to repair TarMK
> +  [OAK-1448] Tool to detect and possibly fix permission store
> inconsistencies
> +  [OAK-1452] Expose query plans
> +  [OAK-1453] MongoMK failover support for replica sets (esp. shards)
> +  [OAK-1456] Non-blocking reindexing
> +  [OAK-1489] ValueImpl should implement JackrabbitValue
> +  [OAK-1496] Benchmark for concurrent file writes.
> +  [OAK-1500] Verify restore to revision on MongoNS
> +  [OAK-1513] Analyze the OSGi configuration PID used by various OSGi
> components in Oak
> +  [OAK-1543] Document the configuration steps for DataStore and BlobStores
> +  [OAK-1553] More sophisticated conflict resolution when concurrently
> adding nodes
> +  [OAK-1559] Expose BlobGCMBean for supported NodeStores
> +  [OAK-1560] Expose RevisionGCMBean for supported NodeStores
> +  [OAK-1561] Implement optimised range queries
> +  [OAK-1567] Return Iterator instead of returning List in
> DocumentStore.query
> +  [OAK-1568] Provide flag to not cache documents from queries
> +  [OAK-1570] Improve perfomances of the OrderedIndex while insert
> +  [OAK-1571] OSGi Configuration for Query Limits
> +  [OAK-1573] Document External Login and LDAP specifically
> +  [OAK-1578] Configurable size of capped collection used by MongoDiffCache
> +  [OAK-1592] Performance of Session#hasPermission
> +  [OAK-1593] Guard against NPE in
> ConfigurationParameters.of(ConfigurationParameters...)
> +  [OAK-1601] Log warning on concurrent session access
> +  [OAK-1603] Operations tasks api improvements
> +  [OAK-1606] Omit warnings about accessing commit related info when
> external events are excluded
> +  [OAK-1607] EmbeddedSolrServerConfigurationProvider should not expose
> HTTP configuration
> +  [OAK-1608] Let oak-solr-osgi start also in containers different than
> Jetty
> +  [OAK-1612] Limit number of wildcards in rep:glob
> +  [OAK-1616] Password utility: prevent timing attacks
> +  [OAK-1617] Automatically convert "or" queries to "union" for SQL-2
> +  [OAK-1627] Use non-orderable child nodes in ObservationRefreshTest
> +  [OAK-1637] SolrIndexInitializer should be more configurable
> +  [OAK-1638] Add QueryJcrTest suite coverage to Solr indexer
> +  [OAK-1640] When modifying node types, revalidate only affected content
> +  [OAK-1643] Implement BlobReferenceIterator optimized for Mongo
> +  [OAK-1646] MarkSweepGarbageCollector - Improvements in exception
> handling and initialization
> +  [OAK-1647] AsyncIndexUpdateTask creating too many checkpoint
> +  [OAK-1651] Fix oak-solr-core pom dependencies
> +  [OAK-1656] Provide lazy iterator for FileDataStore.getAllIdentifiers
> +  [OAK-1657] Don't expand FT conditions if FT constraints are available
> +  [OAK-1659] Improve CommitRateLimiter to delay commits
> +  [OAK-1660] SegmentMK: Optimize reading of large binaries
> +  [OAK-1661] JCR Event Info should contain NodeType for Events Type
> Node-Deleted
> +  [OAK-1671] Use request handlers instead of search components in Solr
> native support
> +  [OAK-1673] FulltextQueryTest coverage for Solr indexer
>
>  Bugs
>
> -  [OAK-333] 1000 byte path limit in MongoMK
> -  [OAK-622] Improve QueryIndex interface
> -  [OAK-771] Correct behavior for strange node and property names
> -  [OAK-1166] Warnings on concurrent async index update
> -  [OAK-1226] Hidden item handling in VersionEditor
> -  [OAK-1291] RandomizedReadTest fails with OutOfMemoryError: PermGen space
> -  [OAK-1416] Adding many siblings does not scale as expected in the
> number of added nodes
> -  [OAK-1418] Read performance regression
> -  [OAK-1429] Slow event listeners do not scale as expected
> -  [OAK-1471] Mod count in permission store requires cluster wide
> synchronization
> -  [OAK-1476] Hardcoded SecurityProvider implementation in oak-jcr
> Activator
> -  [OAK-1516] PhraseQuery fails due to missing posiion info in indexed
> fields
> -  [OAK-1520] Native pass-through queries combined with other conditions
> might not work
> -  [OAK-1523] Remove Bundle Activator which are not required
> -  [OAK-1524] NPE in TarMK flush thread
> -  [OAK-1525] VersionHistory.getAllVersions must be sorted by date for
> linear version histories
> -  [OAK-1526] Lock contention in SegmentIdFactory
> -  [OAK-1530] TarMK thread logs warning
> -  [OAK-1531] OrderedPropertyIndex logs many warnings
> -  [OAK-1532] ShareableNodesTest.testAddShareableMixin failures
> -  [OAK-1535] ClockTest.testClockDrift failures
> -  [OAK-1537] Merge oak-solr-* into oak-solr-core
> -  [OAK-1545] NPE in SegmentTracker
> -  [OAK-1546] Switch Lucene dependency to oak core tests to test scope
> -  [OAK-1549] AbstractRebaseDiff incorrectly handles conflict in added
> nodes
> -  [OAK-1555] Inefficient node state diff with old revisions
> -  [OAK-1562] BackgroundObserver not closed in ChangeProcessor
> +  [OAK-204] short cutting the name mapping breaks path validation in
> value factory
> +  [OAK-828] Full-text support for index aggregates
> +  [OAK-955] Query: Filter doesn't contain fulltext constraints from joins
> +  [OAK-1168] Invalid JCR paths not caught
> +  [OAK-1174] Inconsistent handling of invalid names/paths
> +  [OAK-1267] Failure in ObservationRefreshTest
> +  [OAK-1304] createQuery(query,Query.JCR_JQOM) is returning QueryImpl
> instead of QueryObjectModel
> +  [OAK-1344] HierarchicalInvalidator hits query size limit
> +  [OAK-1410] Allow automatic propagation of oak-whiteboard when adding
> security manager
> +  [OAK-1415] OOME when moving large subtree
> +  [OAK-1465] performance degradation with growing index size on Oak-Mongo
> +  [OAK-1472] ConcurrentAddReferenceTest#addReferences still fails
> +  [OAK-1488] ConcurrentAddRemoveIT, ConcurrentAddIT test failures
> +  [OAK-1491] ObservationTest failure on Windows
> +  [OAK-1541] Concurrent creation of users chokes on intermediate paths
> +  [OAK-1554] Clarify behaviour for BlobStore api for invalid arguments
> +  [OAK-1564] ClockTest on Windows fails
> +  [OAK-1566] ArrayIndexOutOfBoundsException in Segment.getRefId()
> +  [OAK-1569] ClusterPermissionsTest occasionally fails on Windows
> +  [OAK-1579] ConcurrentAddNodesClusterIT.addNodes2() fails on travis
> +  [OAK-1580] DBCursor close missing
> +  [OAK-1581] NPE in OsgiWhiteboard#track()
> +  [OAK-1582] ClassCastException in MarkSweepGarbageCollector#init()
> +  [OAK-1583] Adjust release check script to remove all hidden files from
> the source comparison
> +  [OAK-1584] Performance regression of adding and removing child nodes
> after OAK-850
> +  [OAK-1585] rollback logic issues incorrect Updates
> +  [OAK-1586] Implement checkpoint support in DocumentNodeStore
> +  [OAK-1587] NoSuchElementException in SegmentTracker.getSegment()
> +  [OAK-1588] Create more tests/validation to LDAP integration
> +  [OAK-1591]
> org.apache.jackrabbit.oak.plugins.document.mongo.CacheInvalidationIT fails
> +  [OAK-1594] Build fails on Java 8
> +  [OAK-1595] Permissions#getPermissions(String, TreeLocation, boolean)
> does not work for permissions names
> +  [OAK-1596] Provide mechanism for pre authenticated shared credentials
> +  [OAK-1597] QueryStat MBean does not log any query
> +  [OAK-1602] 512 byte shard key limit in MongoMK
> +  [OAK-1604] Support for signed references in Blob
> +  [OAK-1605] Running into endless loop due to tika 1.4
> +  [OAK-1613] Node aggregation over multiple levels does't work
> +  [OAK-1614] Oak Analyzer can't tokenize chinese phrases
> +  [OAK-1615] Incomplete escaping in XPathConditionVisitor
> +  [OAK-1620] Index cost calculation integer overflow
> +  [OAK-1621] NPE on concurrent session usage
> +  [OAK-1622] Duplicate configuration services (regression of OAK-1476)
> +  [OAK-1623] TokenConfiguration expects nested configuration options
> +  [OAK-1624] Item names with trailing spaces should not be allowed
> +  [OAK-1625] SegmentTracker: Blob references not added
> +  [OAK-1630] Solr parse exceptions for and/or full text expressions
> +  [OAK-1632] Solr parse exception for primary type restriction
> +  [OAK-1634] After crash, segment persistence is broken with failures in
> java.nio classes (with v0.19)
> +  [OAK-1635] SolrIndexEditor should better escape path when deleting
> +  [OAK-1644] Has Binary flag should also be copied to split documents
> +  [OAK-1649] NamespaceException: OakNamespace0005 on save, after replica
> crash
> +  [OAK-1650] NPE and MicroKernelException: The node .. does not exist, on
> replica primary crash during save
> +  [OAK-1652] Incorrect name mapping in NodeObserver
> +  [OAK-1654] Composite index aggregates
> +  [OAK-1655] DataStoreBlobStore does not take into maxLastModifiedTime
> when fetching all chunks
> +  [OAK-1662] Node not accessible after document split
> +  [OAK-1663] Long running RevisionTest
> +  [OAK-1664] org.apache.jackrabbit.oak.namepath package missing
> package-info file
> +  [OAK-1668] Lucene should not serve queries for what it doesn't index
> +  [OAK-1670] ConnectedHead.update() passes current state on to
> Unconnected instead of base state
> +  [OAK-1672] TarFileTest#testWriteAndRead failure
> +  [OAK-1675] The OrderedPropertyIndex track WARN and INFO too often
> +
>
>  In addition to the above-mentioned changes, this release contains
> -all the changes included up to the Apache Jackrabbit Oak 0.18 release.
> +all the changes included up to the Apache Jackrabbit Oak 0.19 release.
>
>  For more detailed information about all the changes in this and other
>  Oak releases, please see the Oak issue tracker at
>
> Modified:
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java
> URL:
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java?rev=1584349&r1=1584348&r2=1584349&view=diff
>
> ==============================================================================
> ---
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java
> (original)
> +++
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/OrderedPropertyIndexEditor.java
> Thu Apr  3 19:43:03 2014
> @@ -70,8 +70,8 @@ public class OrderedPropertyIndexEditor
>              if (Strings.isNullOrEmpty(value)) {
>                  LOG.warn("Empty value passed as propertyNames. Index not
> properly configured. Ignoring.");
>              } else {
> -                if (names.isArray()) {
> -                    LOG.warn("Only single value supported. '{}' only will
> be used.", value);
> +                if (names.isArray() && names.count() > 1) {
> +                    LOG.debug("Only single value supported. '{}' only
> will be used.", value);
>                  }
>                  pns = Collections.singleton(value);
>                  this.properlyConfigured = true;
> @@ -82,7 +82,7 @@ public class OrderedPropertyIndexEditor
>          // configuring direction
>          String propertyDirection =
> definition.getString(OrderedIndex.DIRECTION);
>          if (propertyDirection == null) {
> -            LOG.info("Using default direction for sorting: {}",
> this.direction);
> +            // LOG.debug("Using default direction for sorting: {}",
> this.direction);
>          } else {
>              OrderDirection dir =
> OrderDirection.fromString(propertyDirection);
>              if (dir == null) {
>
>
>