ycvodzf 发表于 2015-5-7 12:52:44

Apache Jackrabbit Oak 1.2.0 发布

5月23日 西安 OSC 源创会开始报名啦,存储、虚拟机、Docker 等干货分享
  Apache Jackrabbit Oak 1.2.0 发布,此版本现已提供下载:http://jackrabbit.apache.org/downloads.html。
  
  Apache Jackrabbit Oak 1.2.0 增长性版本,基于并兼容 Jackrabbit Oak 1.x 版本,Jackrabbit Oak 1.2.x 被认为是稳定版本,可以用于生产环境。
  
  Jackrabbit Oak 相比 Oak 1.0.0 的改进内容
  -----------------------
  新特性
  
   CLONE - XPath queries currently require @ in front of
  property names
   Provide PojoSR based RepositoryFactory implementation
   The storage backends should have an estimate on the
  number of nodes below a given path
   Similar (rep:similar) support for Solr
   TarMK compaction
   Debugging console
   DataStore GC support for heterogeneous deployments using
  a shared datastore

   MBean to dump Lucene Index content and>   Adding information to a? Standard MBean interface using annotations
   TarMK Cold Standby
   Introduce Password Expiry With Max Password Age and On First Login
   Add path exclusion to JackrabbitEventFilter
   Utility js methods to manage Oak data in Mongo
   Add command to dump Lucene index in Oak Console

   Use separate Lucene index for performing property>   _lastRev recovery tool

  >   Persistent cache for the DocumentNodeStore
   Support for atomic counters (non-clustered)
   Enable support for NodeType based indexing rules
   Expose checkpoints through JMX
   Support index time Aggregation of repository nodes
   Same Lucene index to support both property restrictions
  and fulltext constraints
   SegmentMK consistency check

   Helper>   Custom scorer for modifying score per documents
   oak-run debug should list a breakdown of space usage per
  record type
   Support IS NULL based property restrictions in LucenePropertyIndex
   Support IS NULL based property restrictions in the query engine
   LogDumper rule to dump logs as part of system out in case
  of test failure
  
  改进
  
  ? Avoid JCR APIs calling other JCR APIs
   Offline tool to repair MongoMK documents
   Expose query plans
   allow selecting a nodestore fixture for tests
   Verify restore to revision on MongoNS
   Implement optimised range queries
   Improve perfomances of the OrderedIndex while insert
   Configurable property exclusions for SolrIndexEditor and
  SolrQueryIndex
   Implement noInternal from JackrabbitEventFilter
   Route find queries to Mongo secondary in MongoDocumentStore
   FileDataStore inUse map causes contention in concurrent env
   JCR Event Info should contain NodeType for all Events
   FulltextQueryTest coverage for Solr indexer
   Clarify contract of NodeBuilder.isReplaced()
   Remove dependency of DocumentStore to MicroKernelException
   BlobStore: improve code readability
   Use in-memory DB for DOCUMENT_JDBC fixture
   Use known.issues instead of commented tests
   Add RestrictionProvider#getPattern(String,Set)
   Enable passing of a execution context to runTest in multi
  threaded runs
   Avoid expanding empty property restrictions if not needed
   register ContentRepository to whiteboard
   Text content should not be stored as part of Index data
   Enable copying of Lucene index to local file system for
  read queries
   Improved SolrCursor support for paged results
   Consolidate Mongo client connection creation logic
   OrderedIndex should serve range queries regardless of direction
   add docu how to connect to Mongo w/ credentials
   Avoid lock contention in Tracker.getServices()
   Avoid lock contention in IndexTracker.getIndexNode()
   Import of compressed wikipedia dump
   Clean up dangling references to previous documents
   Keep commit info for local changes in main document
   Update Mongo Java Driver version to 2.12
   Configurable number of rows in SolrQueryIndex
   Don't create default (Scheduled)Executor when respective
  instance is supplied
   Set _lastRev on insert when new node is also commit root
   Full text expression with * as 'field' should expand to
  the 'catch all' field
   DocumentNodeStore code robustness when persistence inconsistent

   Solr index support for>   Use SegmentMK for testing where possible
   Dump help details for various command supported by oak-run
   DocumentStore API: improve documentation of keys
   Support collection object conversion to String[] in
  ConfigurationParameters
   Segment Explorer
   Limit memory usage of DocumentNodeStore.readChildren()

   Checkpoints>   Generic operation tasks should be able to return specific results
   Optimize SegmentWriter.prepare()
   Configurable filter restrictions to be used in SolrQueryIndex
   oak-run option to do diffs between TarMK revisions
   Omit Configuration Retrieval for PreAuthContext
   Use config parameters to write token property
   Better cost estimates for traversal, property, and ordered indexes
   Use 127.0.0.1 as default for MongoDB host
   Cleanup test and execution fixtures
   MicroKernelServer not usable with user specified
  MicroKernel implementation
   Optimize MutableTree.orderBefore for the common case
   Add progress logs to MarkSweepGarbageCollector

   UserAuthentication: enhance login states with>   Unclear NodeStore.merge() contract
   Add GlobalNameMapper(NodeState) constructor
   oak-run main method should print available run modes
   Introduce DocumentStoreException
   Support for constraints like: foo = 'X' OR bar = 'Y'
   Add Hint for selecting more performant index in
  MongoDocumentStore#query
   Avoid collision marker update when already present
   Query: reduce debug log output
   Log index names for which AsyncIndexUpdate would trigger
  a full reindex
   LuceneIndex should access Lucene Directory if query
  involves FullTextSearch for cost calculation
   Limit no of children listed with ls command in Oak Console
   Improve the message in UniquenessConstraintViolation
  exception to provide more details
   Query engine is slow when using many "or" constraints

   Avoid
in javadoc   Add a way to pause the background async indexer
   MongoBlobStore improvements
   Add a utility method to create Solr synonym file for node
  type expansions
   Log read and write operations to different loggers

   Add utility>   Add checkpoint management to oak-run
   Query: before throwing "traversed more than x nodes"
  exception, log it
   Compact only if needed

   Make the cache>   Remove ContentRepositoryImpl#getNodeStore
   MemoryNodeBuilder#set only works on root builders
   Tar compaction: log a warning if there is more than one checkpoint
   Checkpoint list command should also provide the checkpoint lifetime
   DocumentSplit should allow properties added by persistence
   Query engine: disable or restrict built-in full-text engine
   Provide option to use? Configuration SPI in JAAS
  authentication when running within AppServer
   Add timing to OrderedIndex
   MBean to provide consolidated cache stats
   Oak run debug option to list content from a tar file
   Log details of _lastRev recovery
   Add metatype info for Document and Segment services
   Record time when checpoint is created in SegmentNodeStore
   Improve logging in compaction and cleanup operation in SegmentMK
   Improve logging in MongoDocumentStore
   Oak Upgrade should depend on oak-jcr with a 'test' scope
   Change NodeStore#release method to return a boolean
   Add test for observation events when renaming a node
   IndexStatsMBean should expose the time upto which the
  repository state has been indexed
   Review padding for blobs collection

   DocumentNodeStore: Error calculating the machine>   Turn async indexer checkpoint warning log to debug

   Explorer should display the template>  reference tracking report
   AggregateIndex should support AdvanceQueryIndex
   Simplify BranchStates
   Integrate Lucene logging with Slf4j
   Scalability benchmarks for search
   Reduce usage of _lastRev
   Lucene: improved batching and logging
   Lucene: not using the path restriction can speed up queries
   NodeObservor should catch exception in case event processing
   UserAuthentication: Allow Password Change Via
  SimpleCredentials Attribute
   Fail for ACEs created for the admin principal
   mk.getRevisionHistory: clarify since parameter
   MicroKernelIT: clean test content
   Pluggability of UserAuthenticationFactory
   Allow specifying custom attributes in IndexPlan
   Support for rep:spellcheck
   Support for using query engine for search suggestions
   Configurable Analyzer in Lucene index
   Lucene index boosting on certain fields
   Rep:similar support in Lucene index
   Solr default rows number is too high
   Create whitelist / blacklist of properties to be indexed
  / filtered for Solr index
   TarMK cold standby: update OSGi config example files
   Support for like query for string
   Print tar file graph in segment explorer
   Make blobSize in OakDirectory configurable
   Allow native query to be run against specifc property index
   Add configuration options for ldap connection pools
   The unbound connection pool does not verify if the
  connection is still alive
   Create default repository in OakRepositoryFactory
   LIRS cache: improved concurrency when using the cache loader
   Use daemon threads for scheduled executor service in RepositoryImpl
   Allow SegmentNodeBuilder to provide child builders of the same type
   Log path for text extraction error on the Lucene index
   Changing the query traversal limit should affect already
  started queries
   Provide a way for Index implementation to determine reindex mode
   Execution Stats for async indexing
   Add UserIdCredentials to Oak user management extension
   Support property existence query (for Lucene)
   Support native queries for non-full-text indexes
   UserImporter should always set the rep:authorizableID
   make generic VersionGCSupport perform better
   Index node only if configured property changed
   Add metadata about the changed value to a
  PROPERTY_CHANGED event on a multivalued property
   XD Logo for Oak Apache
   ConflictHandler for merging jcr:lastModified
   Associate user defined values with checkpoint
   Use ConcurrentUpdateSolrServer for remote updates
   Add checkpoint management for MongoMK
   Update sql2.txt test to account for name property
  presence in non test nodes
   Simplify query debugging with MDC
   Add jsr305 annotations to Solr index code
   Not log very common queries
   Path restriction evaluation support within LucenIndex
   Provide API to create Tree from NodeState
   Persistent cache: config option for autoCompact
   Better handling for external binaries in the segment explorer

   Mark checkpoints with>   Provide details in log when reindexing is completed by
  AsyncIndexUpdate
   Remove dependency to MapDB
   Remove option to disable background operations
   Debug logging for merge failures
   SegmentMK startup slow with large journals
   Inspect any revision with SegmentMK explorer
   LucenePropertyIndex should support pure nodeType based query
   Use approx counters property index costs even when path
  restriction is available
   Clean up collision markers
   Permission validation with Node.setPrimaryType
   Pass over name and definitions to StoreStrategy.update
   Improve performance of user query with scope set
   Property name regex should only be applied on property name
   MBean to expose DocumentNodeStore runtime state
   Remove entryCount from NodeType Index
   Refactor node store tests
   TARMK Cold Standby improve test cases for FSDS mirroring
   Move FixturesHelper into common
   add a oak-run command to delete the index data in case of
  inconsistencies
   Abstract over repository creating in tests
   Simplify injection of conflict handlers
   Replace usages of Immutable* with factory calls
   Provide API to create Tree from NodeBuilder

   Change default blob>   TarMk Cold Standby add metatype info for
  'standby.readtimeout' property
   Add RootFactory.createSystemRoot
   Auto-refresh sessions on revision gc
   Clarify Editor.childNodeChanged()
   Improve logging in repository migration in upgrade
   Improve logging in Lucene indexer
   Allow querying on jcr:primaryType property if that
  property is indexed
   Enable the persistent cache by default
   Do not create nodeChildren cache entry for leaf
   Avoid clean up in XmlImportTest benchmark
   Avoid lookup of conflicting node with
  ImportUUIDBehavior.IMPORT_UUID_CREATE_NEW
   Move MongoDiffCache to mongo package
   Upgrade: reduce implementation dependency
   Pre-populate version storage with intermediate nodes
   reduce code duplication between
  Utils.getSelectedDocuments and MissingLastRevCandidateIterator
   Provide support for providing custom Tika config
   Optimize read of known non-existing children
   Index binary only if some Tika parser can support the
  binaries mimeType
   Restrict the maximum number of terms that will be indexed
  for a single field
   Support for maxExtractLength while parsing binaries with Tika
   Include index name in the log from LuceneIndexEditor
   Avoid building suggest/spellcheck dictionary at query time
   Add validating commit hook for login tokens
   DataStoreBlobStore: Merge test
  MongoDataStoreBlobStoreTest into DataStoreBlobStoreTest
   Make it possible to use the PermissionProvider from
  within query indexes

   Improve OAK-2465 avoiding ArithmeticException>   Expose mongo and db versions for reporting purposes
   checkDeepHistory/fixDeepHistory/prepareDeepHistory for oak-mongo.js
   add more trace-logging to mongoMk to debug performance issues
   Add user information in audit events in oak
   remove CachingDocumentStore interface
   Provide a default Tika Config similar to JR2 config
   Update SegmentMK header format definition
   Index usage for "not equals" conditions
   Add missing Apache Jackrabbit qualifiers to OSGi services metatype
   Support using Solr index for sorted queries
   Update RecordUsageAnalyser to reflect changes in segment format
   allow configuring subcaches of documentnodestore individually
   Spellcheck/suggest queries should return no results if no
  index can handle them
   Add builder to file store

   Make AbstractServiceTracker.stop()>   Add option to oak-run check runmode to check consistency
  of binary properties

   Cleanup and document security>   Open indexes in IndexTracker non blocking way
   Protect the persistent cache against Thread.interrupt

   Include cache invalidation stats in logs>  background operations
   Update mongo-java-driver to 2.13.0
   RepositoryManager must not register WhiteboardExecutor with Oak
   Set pauseCompaction default to false
   observation processing too eager/unfair under load
   Provide progress indication when reindexing is being peformed
   IndexCopier Error occurred while removing deleted files from Local
   Invoke indexUpdate only when new Document are added in
  LuceneIndexEditor
   High memory consumption of CompactionGainEstimate
   more (jmx) instrumentation for observation queue
   expose mongo's clusterNodes info more prominently
   PerfLogger for NodeObserver.contentChanged()
   Cost calculation takes time with solr pings even
  when not fulfilling query
   Avoid indexing user/group/uuid props by default
   Timeout for MongoDB query
   Move out non essential task processing from
  DocumentNodeStore background thread
   Log document as debug message on conflict
   Use message from causing exception in
  DocumentStoreException.convert()

   Remove DOCUMENT_MK fixture (and>   SegmentIdTable too eager to refresh
   Ability to disable index hints for MongoDB
   Use Consolidated diff for local changes with persistent
  cache to avoid calculating diff again
   Persistent cache: use different files in tests
   Report a full observation queue situation to the logfile
   Add description annotation to
  RepositoryManagementMBean#startDataStoreGC
   Enable CopyOnRead feature for Lucene indexes by default
  
  Bug 修复
  
  ? Basic same name sibling support
   Failure in ObservationRefreshTest
   Occasional ConcurrentFileOperationsTest failure
   Copying a large subtrees does not scale as expected in
  the number of copied nodes on document node stores
   Aggregate Index isn't usable in an osgi environment
   ConcurrentAddReferenceTest#addReferences still fails
   ConcurrentAddRemoveIT, ConcurrentAddIT test failures
   ObservationTest failure on Windows
   MongoDocumentStore fails to report error for keys that are too long
   RDBBlobStoreTest fails occasionally
   Mongo: Un-/CheckedExecutionException on replica-primary crash
   Node isNew() is false in case the node is removed and
  added in same commit
   NodeStoreServices nondeterministic with customBlobStore
   Add ConflictHandler/Validator to AbstractSecurityTest
   failing test
  org.apache.jackrabbit.core.query.VersionStoreQueryTest.testCheckin
   document atomicity of DS.update(collection, keys, update)
   OrderableNodesTest fails with Document_JDBC
   "like '%'" does not use an index
   Unresolved conflicts in TokenProviderImpl#createToken()
   Improve warning logged on concurrent Session access
   RestrictionProviderImpl returns empty pattern if all
  supported restrictions are set
   Diff cache entry too large
   Cross foreign cluster revision comparison may be wrong
   SolrIndexInitializer async parameter should be boolean
   Sporadic IllegalStateException in
  AbstractServiceTracker.getServices
   Remote Solr server should explicitly handle failures in
  connecting to ZK
   DocumentNodeBuilder.setChildNode() runs OOM with large tree
   Stats for the async indexing don't report 'done' status
  when there are no changes
   Ordered index: explain plan not implemented
   DiffCache not populated after cache miss
   ConcurrentConflictTest fails occasionally
   Sample descendant field configuration not working for root
   Create a benchmark for Full text search with Solr
   Incorrect TarMK graph metadata validation
   LastRevSingleNodeRecoveryTest fails with Mongo
   RevisionComparator my incorrectly report a revision as FUTURE
   Oak#createContentRepository never unregisters some of its services
   NPE in MarkSweepGarbageCollector.saveBatchToFile during
  Datastore GC with FileDataStore
   NodeDocument _modified may go back in time
   DocumentNodeStore "lease update thread" is not a daemon thread
   Empty directories not cleaned up when gc run on FileDataStore

  >   IllegalStateException when using "lowerCase"/"lower" on a
  array property
   Logging in and out many sessions leads to high memory consumption
   Failure when setting up DocumentNS fixture
   Default sync handler property mapping does not allow
  constant properties
   Potential NPE in RDBDocumentStore
   Travis builds time out
   Blob garbage collector deletes referenced blobs for
  Jackrabbit 2.x DataStores
   SegmentMK: Inefficient flat node comparisons
   TarMK: Incorrect tar entry verification in recovery mode

   Lucene blob>   Indexes: re-index automatically when adding an index

   Hourly async reindexing on an>   Unnecessary invocations of LastRevRecovery when recovery
  already done.
   Add restore option for oak-run
   OOM in
  org.apache.jackrabbit.oak.jcr.OrderedIndexConcurrentClusterIT::deleteConcurrently()

   Expose security>  component properties
   Incomplete component declaration with default action provider
   Concurrent System Login: slowdown for high concurrency levels
   OrderedIndexConcurrentClusterIT takes too long
   PropertyIndex only considers the cost of a single indexed property

  >  cheaper than an OrderedIndex (or a different AdvancedQueryIndex impl)
   Stale documents in MongoDocumentStore cache
   Query: Incorrect cost calculation for traversal
   Ordered index fails with old index content
   NodeTypeIndex is not conversative enough about its cost
   NodeStoreKernel doesn't handle array properties correctly
   FileNotFoundException during TarMK GC
   Backup: "Attempt to read external blob" error
   UnmergedBranch state growing with empty BranchCommit
  leading to performance degradation
   TarMK compaction delays journal updates
   MicroKernel.read() returns negative value
   TarMK compaction can create mixed segments
   Query: UnsupportedOperationException for some
  combinations of "or" and "and" conditions
   MAX_QUEUED_CONTINUATIONS feature not working in

  EventGenerator>   TarMK compaction map check should switch comparison sides
   UserImporter doesn't import protected rep:passwordLastModified
   Restore: "Attempt to read external blob" error
   UserContext needs to be adjusted to reflect changes made
  with OAK-1922
   UserContext doesn't reflect new group-member structure
   Oak console on MongoMK fails with NPE
   Session.logout performance poor
   AsyncIndexUpdate unable to cope with missing checkpoint ref
   Console in Oak Run does not close the NodeStore upon exit
   Performance degradation due to SessionDelegate.WarningLock
   Wrong time unit for async index lease time
   Duplicate observation events when using JackrabbitEventFilter
   Async property index update may fail on DocumentMK with
  more than 100 index changes
   IndexUpdate traverses the data nodes under index nodes
   Wrong values reported for OBSERVATION_EVENT_DURATION
   SecurityProvider is not able to add Custom
  PrincipalConfiguration in CompositePrincipalConfiguration in OSGI Mode
   ContentMirrorStoreStrategy should utilize path
  restriction when available
   Ordered index must ignore full-text queries
   TokenLoginModule can't handle case insensitive userids
   Confusing debug message about old revision access
   Optimize access to OrderedPropertyIndex
   Accessible tree below a non-accessible parent are HiddenTree
   Observation events accessibility not checked correctly
   TarMk compaction can still cause repository growth
   TarMK: FileStore constructor loads all entries in the journal.log
   BlobGcMaxAgeInSecs is set to high for MongoBlobStore
   oak run benchmark has bad imports
   oak-run build fails on windows
   PermissionStore doesn't reflect dynamic nature of jcr:all
   NodeState view at given version is not stable with
  DocumentNodeStore
   XPath queries with certain combinations of "or"
  conditions don't use an index
   XPath queries with "order by" are never converted to "union"
   Error when accessing /oak:index/rep:policy/reindex property via JCR
   Incompatibility with
  PropertyDefinitionImpl#getValueConstraints potentially returning null
  values.
   SessionMBean fails to render due to NPE in getSessionAttributes
   Oak Lucene index doesn't get notified about updates when
  index is stored on the file system
   Setting a MV Name property does not validate the namespaces
   Setting a path property with a value that contains a
  unregistered namespace does not fail
   getPlan() output for NodeTypeIndex doesn't indicate the
  index type used
   Invalid type error while importing DocView xml data
   SegmentNodeStore might not create a checkpoint
   TarMK CompactionMap should include more nodes
   Missing privileges after repository upgrade
   oak-solr-osgi uses wrong version of spatial4j
   ArrayIndexOutOfBoundsException in Segment.getRefId()
   Node.setProperty(String, Value) fails for binary non ValueImpls
   Excessive memory usage with Oracle Java 6
   Optimize orderings by date fields
   Hard-coded write concern
   Reindexing can include hidden nodes in the index

   Range queries and>  consistent with JR2
   Segment corruption
   ImporterImpl does not convert JCR paths to Oak paths
   Prevent against integer overflow in compaction check
   Improve the resilence of the OrderedIndex for dangling links
   Prevent null/empty passwords in ldap provider
   BlobSize in OakDirectory differs between trunk and 1.0 branch
   The query engine should not return hidden nodes
   AsyncIndexUpdate can leave orphaned checkpoint in case of
  abrupt shutdown
   RDBBlobStore failure because of missing lastmod column on
  datastore_data table

  >   AIOOBE in Segment#toString
   Oak-run add option to remove all unreferenced checkpoints
   Remove the MongoGridFSBlobStore implementation
   Rename FileStoreCorruptException to
  SegmentNotFoundException and update the NodeStore contract
   Reindex removes all nodes under index definition node
   Aggregation cursor introduces doubles in the result set
   Tests do not tear down repository completely
   Long running merge may block other commits

   BackgroundWriteTest uses>   SegmentExplorer better binary display
   Segment Compactor will not compact binaries > 16k
   Possibility of numeric overflow in blobCacheSize in DocumentMK
   Intermittent Node not found at given revision with
  DocumentNodeStore
   TarMK cold standby: file handle leak
   empty resultset for PropertyIndex and multi-value
  properties with mixed OR+AND
   Indexing on large content is slow
   SegmentExplorer display in memory references to tar files
   TarMK cold standby: logs are too verbose
   DocumentNodeStore does not detect hierarchy conflict
   Ignore maven-javadoc-plugin -Xdoclint:none option
   Disable TokenAuthenticationTest#tokenCreationWithPreAuth
   Better error message for getPrimaryItem
   Oak-run "checkpoint" and "backup" don't use memory mapped files
   Only enforce uniqueness of jcr:uuid for referenceable nodes
   CacheConsistencyTest may fail with IllegalStateException
   Last revision recover incomplete
   Non-blocking reindexing doesn't finish properly
   Change Password On First Login: Wrong Config Property Description
   Add/remove version label fails with restricted access on
  /jcr:system
   Concurrent commit during compaction results in mixed segments
   Repository upgrade does not correctly update jcr:all
  aggregate privileges and bits
   Node.getReferences throws IllegalArgumentException
   OrderedIndex should not return the whole index on
  property=$value statement
   Full reindexing is triggered when the IndexEditor is missing

   Ordered index does not return>  un-restricted indexes
   Increase the threshold for warning in PathIterator
   MultipleMoveTest doesn't restore ACEs properly causing
  later tests to fail
   Aggregate Lucene no results for multiple jcr:contains
   Increase package export on
  org.apache.jackrabbit.oak.plugins.segment
   External events incomplete
   Lucene index not created if no node is indexed
   NodeStoreKernel.getNodes throws when passing filter=""
   Session.getItem violates JCR Spec

   User Query: Condition 'nameMatches' ignores authorizable>   UUID collision check is not does not work in transient space
   IndexOutOfBoundsException in
  o.a.j.o.scalability.ScalabilityNodeRelationshipSuite
   Query with mixed full-text, "and", "or" conditions fails
   Lucene Index property definition is ignored if its not in
  includePropertyNames config
   Observation events accessibility check should respect
  session refresh settings
   PermissionStoreImpl refresh root on flush
   MemoryNodeBuilder NPE on base() following root refresh
   SegmentBlob equals check should verify compaction in both
  directions
   TarMK Cold Standby can corrupt bulk segments
   UserQueryManager: Sort Ignore Case Reversed
   Compaction estimation time should not depend on number of
  checkpoints
   mvn site and site-deploy does not work as expected
   Builder does not exist error during async index update
   DocumentNS may expose branch commit on earlier revision
   Async indexer checkpoints not cleaned up under heavy load
   Corrupt repository after concurrent version operations
   Using "order by jcr:score" slows down queries by a few
  orders of magnitude
   Update for absent document may throw NPE
   oak.removeDescendantsAndSelf() does not remove
  descendants with long paths
   QueryEngine should not tokenize fulltext expression by default
   Incorrect recovery of _lastRev for branch commit

  >   NodeStoreTest.moveToDescendant fails on MemoryNodeStore
   Index cost is sometimes negative
   UserValidator: Detect nested authorizables introduced by
  change of primary type
   DocumentNodeStore.diffManyChildren() reads too many nodes
   UserProvider does not install autocreated items
   Wrong optimization for joins with ISDESCENDANTNODE conditions
   Compaction estimation includes all data segments
   DataStoreBlobStore should log exception thrown while
  reading inputstream
   add logging in OrderedContentMirrorStorateStrategy for
  better investigation
   Field boost not working if the property for indexing is
  picked using aggregate index rules
   LIRS cache: deadlock if a value loader access the cache
   IndexPlanner does not return plan for mixin based queries
   NodeDocument.getNodeAtRevision() may read too many revisions
   Wrong handling of InterruptedException in BackgroundThread
   Diff reads too many nodes
   InitializerTest.testInitializerMongoWithoutInitialContent() fails
   TarMK Cold Standby FSDS mirroring
   Support comments anywhere in a SQL-2 statement
   TarMK Cold Standby expose standby read timeout value
   Logic for writing properties in SegmentWriter.writeNode looks off
   read is inefficient when there are many split documents
   NPE in DocumentNodeStore#retrieve for non existing checkpoint
   Cleanup org.apache.jackrabbit.oak.kernel package
   Importing a group with random node name and members fails.
   Property index: setting declaringNodeTypes to an empty
  array can break queries
   DataStoreWrapperBackend not updated to latest extensions
  added to Backend interface
   o.a.j.o.plugins.segment.HeavyWriteIT fails on travis
  (exit code 137)
   Sporadic test failure of HeavyWriteIT.heavyWrite on Travis
   SegmentReferenceLimitTestIT does not close FileStore
   ConcurrentAddNodesClusterIT does not close sessions
   SegmentNotFoundException when keeping JCR Value references
   AnnotatingConflictHandler: jcr:primaryType must be of type Name
   Possibility of overflow in file length calculation
   issues with JsopBuilder.encode and .escape
   Clarify handling of hidden items in ImmutableTree
   TarMk Cold Standby reduce verbosity of server errors on
  client timeouts
   oak-lucene fails to start in OSGi
   Invalid cast being performed in BlobStoreFixture
   Upgrade may fail with constraint exception
   int overflow with orderby causing huge slowdown
   DocumentNodeStore revision GC may lead to NPE
   DefaultSolrServerProvider should use ConcurrentUpdateSS
  for indexing
   full-text search on first level
  relative node returns no result
   XPath to SQL-2 conversion fails due to escaping error
   MissingIndexProviderStrategy too eager to set the reindex flag

   TARMK Cold Standby>   IllegalStateException for ValueMap on _revisions
   Lucene AND query with a complex OR phrase returns incorrect result
   UpdateOp.Key.equals() incorrect
   LucenePropertyIndex throws IllegalStateException: No
  query created for filter when using order by jcr:score
   IndexPlanner returning plan for queries involving jcr:score
   Regression with Node.getPrimaryNodeType and
  getMixinNodeTypes wrt Jackrabbit 2.x
   NoSuchElementException thrown by NodeDocument
   offline compaction (via oak-run) broken
   MongoDocumentStore fails for DELETED_ONCE indexed property
   Long overflow in PermissionEntryProviderImpl
   Query Filter looses property constraints for multiple and
  conditions for same property
   oak-mongo.js does not escape special characters for
  regular expressions
   TokenProviderImpl.createToken should always create valid node
   Node.getMixinNodeTypes can revive deleted node mixins
   Remove useless configPath in embedded SolrServer provider
   DataStore GC: Fix incorrect tests
   Range query with incorrectly formatted date
   DataStore: Cleanup tests
   ACL filtering on spellchecks
   algorithm with O(n!) in mongoMk rebase - not finishing in years
   SolrQueryIndex blindly executes a 2nd query to check
  there are no more results
   SegmentDataStoreBlobGCTest failing at some places
   Error while configuring analyzer by composition
   SharedDataStoreUtilsTest failing on travis
   Entries in _commitRoot not purged
   Suggest field doesn't get stored if it has only one value
   TARMK Cold Standby allow cleanup on standby instance
   OakSolrConfigurationProviderService used.properties
  initialization fails
   Session operations null check
   TARMK Cold Standby marks the sync as stopped on first error
   Persistent Cache: support append-only mode
   VersionGC uses way too much memory if there is a large
  pile of garbage
   Wrong interpretation of SegmentNodeStoreService
  configuration values
   Lucene index rules should be case insensitive
   DiffCache is inefficient
   PropertyRestriction.isNotNullRestriction does not take
  "list" into account
   AsyncIndex should update the run status after the merge
  has completed
   ServiceEvent on each session login/logout
   LuceneSupportTest fails
   RDB: improve memory cache handling
   Row estimator should have a threshold
   MultiDocumentStoreTest.testInvalidateCache failing for Mongo
   Failure in one of the batch in VersionGC might lead to
  orphaned nodes
   Support for additional encodings needed in ReversedLinesFileReader
   OakSolrConfigurationProviderService wrongly uses
  ignoredProperties for usedProperties
   Lucene suggester should only be updated if the index is
  used for suggestions
   Findbugs plugin version should depend on JDK version
   oak-pojosr tests fail
   GCMonitorMBean#getRepositorySize reports incorrect values
   Incorrect check for log level in PerfLogger
   export org.apache.jackrabbit.oak.plugins.atomic
   DocumentNodeStore.dispose() may leave repository in an
  inconsistent state
   ObservationTest.observationDispose() restarts repository
  after test finished
   IndexCopier might create empty files in case of error
  occuring while copying
   Test failures in TarMK standby: Address already in use
   Failed expectations in TarMK standby tests
   Glob restriction test failures on Jenkins
   LMSEstimator update resetting weights
   Online Backup of segment store fails on Windows because
  the journal file is locked exclusively.
  ? Possible null pointer dereferences in ExternalLoginModule
   Blob GC throws NPE
   Avoid unneeded unboxing in PropertiesUtil
   DocumentNodeStore.dispatch() may pass null to NodeStateDiff
   ConcurrentAddIT occasionally fail with OakMerge0001
   Misleading log message from IndexCopier
   ObservationTest benchmark logs warnings about IllegalStateException

   Background operation lock not>  DocumentNodeStore is closed
   NodeStateSolrServersObserver performs complete diff
  synchronously causing slowness in dispatch
   Misleading traversal warning message while performing query
   Wrong indexed query estimates exceed more than double the
  actual index entries
  
  Tasks
  
   document oak:unstructured performance advantages
   RdbDocumentStore should use a connection pool
   Add configuration for baselining-maven-plugin
   document atomicity of DS.remove(collection, keys)
   Create a benchmark for Full text search
   Upgrade HttClient version in oak-solr-osgi
   Drop oak-mk-perf
   Move JR2 specific logic from oak-run to separate module

   Update parent pom.xml to latest 2.9>   MissingLastRevSeeker optimized only for MongoDS
   Refactor BlobStore creation logic in a BlobStoreFixture
   Analyze repository growth with Lucene index on SegmentMk
   Move CacheStats humanReadableByteCount to Oak Commons IOUtils
   Make SolrIndex implement AdvanceQueryIndex
   Oak 1.1.x : Document new features in security area

  >   MissingLastRevSeeker non MongoDS may fail with OOM

  >   Avoid wrapping of LuceneIndexProvider with
  AggregateIndexProvider in tests
   Evaluate support for must(must_not(x)) query with Lucene
   Add Sling OSGi Mocks to parent pom
   Use PerfLogger in DocumentNodeStoreBranch

   Copy Jackrabbit 2 S3>   Upgrade Jackrabbit dependency to 2.10.0
   Deprecate ordered index
   Move ProgressNotificationEditor from upgrade module to core
   Retire oak-mk-remote
  
  详细 issues 列表:https://issues.apache.org/jira/browse/OAK??
  更多内容请看发行说明。
  Apache Jackrabbit 是由 Apache Foundation 提供的 JSR-170 的开放源码实现..
  随着内容管理应用程序的日益普及,对用于内容仓库的普通、标准化 API 的需求已凸现出来。Content Repository for Java Technology API (JSR-170) 的目标就是提供这样一个接口。JSR-170 的一个主要优点是,它不绑定到任何特定的底层架构。例如,JSR-170 实现的后端数据存储可以是文件系统、WebDAV 仓库、支持 XML 的系统,甚至还可以是 SQL 数据库。此外,JSR-170 的导出和导入功能允许一个集成器在内容后端与 JCR 实现之间无缝地切换。
页: [1]
查看完整版本: Apache Jackrabbit Oak 1.2.0 发布