oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/NodeImpl.java (14 lines): - line 108: * TODO document - line 403: // TODO: type - line 589: size = node.getChildCount(NODE_ITERATOR_MAX_SIZE); // TODO: perform() - line 622: // TODO: use Oak names - line 647: // TODO: use Oak names - line 712: // TODO: use Oak names - line 736: // TODO: use Oak names - line 760: // TODO: avoid nested calls - line 789: // TODO: avoid nested calls - line 801: // TODO: name mapping for path identifiers - line 824: Iterable propertyOakPaths = idManager.getReferences(weak, node.getTree(), name); // TODO: oak name? - line 1306: // TODO: avoid nested calls - line 1409: // TODO: figure out the right place for this check - line 1414: // TODO: END oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/query/ElasticRequestHandler.java (9 lines): - line 170: // TODO : See if we might want to support like Text here (passed as null in - line 373: * TODO : Docs for writing a native mlt query with the various parameters that - line 407: // include the input doc to align the Lucene behaviour TODO: add configuration - line 434: // TODO : Read this from a stopwords text file, configured via index defn maybe - line 526: // TODO: see OAK-2434 and see if ES also can't work without unwrapping - line 670: // TODO Revisit reference constraint. For performant impl - line 743: // TODO OAK-2198 Add proper nodeType query support - line 806: // TODO: this seems very bad as a query - do we really want to support it. In - line 865: //TODO Confirm that all other types can be treated as string oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/NodeTypeImpl.java (8 lines): - line 342: } catch (RepositoryException e) { // TODO don't use exceptions for flow control. Use internal method in ReadOnlyNodeTypeManager instead. - line 363: } catch (RepositoryException e) { // TODO don't use exceptions for flow control. Use internal method in ReadOnlyNodeTypeManager instead. - line 371: // FIXME: properly calculate matching definition - line 395: // FIXME: properly calculate matching definition - line 473: // FIXME: should properly calculate matching definition taking residual definitions into account. - line 509: // TODO distinguish between additive and overriding node definitions. See 3.7.6.8 Item Definitions in Subtypes - line 519: // TODO distinguish between additive and overriding property definitions. See 3.7.6.8 Item Definitions in Subtypes - line 700: // TODO need a better way to handle SNS oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/IndexDefinition.java (6 lines): - line 324: // TODO - this method should be removed after tests don't use it anymore - line 391: // TODO: This method should be abstract... to be done later after tests are updated so that they compile - line 562: //TODO Should this method be abstract? - line 564: return "fulltext";//TODO Should this be FulltextIndexConstants.FUNC_NAME - line 881: //TODO if a rule is defined for nt:base then this map would have entry for each - line 1753: //In case not a proper JCR assume nt:base TODO return null and ignore indexing such nodes oak-run/src/main/groovy/org/apache/jackrabbit/oak/console/commands/OakHelpCommand.groovy (6 lines): - line 68: fail("No such command: $name") // TODO: i18n - line 72: io.out.println("usage: @|bold ${command.name}|@ $command.usage") // TODO: i18n - line 98: io.out.println('For information about @|green Apache Jackrabbit Oak|@, visit:') // TODO: i18n - line 103: io.out.println('Available commands:') // TODO: i18n - line 114: // TODO: Wrap description if needed - line 123: io.out.println('For help on a specific command type:') // TODO: i18n oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndex.java (5 lines): - line 334: // TODO OAK-828 this breaks node aggregation - line 560: .setEstimatedEntryCount(0) //TODO Fake it to provide constant cost for now - line 579: // TODO if the LowCostLuceneIndexProvider is removed, we should do - line 757: // TODO what to do with escaped tokens? - line 981: // TODO what should be returned in the case there are no tokens? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java (5 lines): - line 45: * TODO document - line 106: // TODO allow changes if there is no content referencing the mappings - line 114: // FIXME Desired Behavior: if we enable it, there are a few generic - line 116: // TODO allow changes if there is no content referencing the mappings - line 119: // FIXME Best effort backwards compatible: oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/version/VersionManagerImpl.java (5 lines): - line 229: // TODO mind OAK-1370 when implementing this - line 237: // TODO mind OAK-1370 when implementing this - line 243: // TODO mind OAK-1370 when implementing this - line 323: // FIXME: atomic? - line 456: // TODO: further traverse versioned children with some selector (date?) oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java (5 lines): - line 297: //TODO Look into usage of field cache for retrieving the path - line 859: //TODO Check about SortField.Type.STRING_VAL - line 1149: //TODO Revisit reference constraint. For performant impl - line 1320: //TODO Confirm that all other types can be treated as string - line 1400: //TODO OAK-2198 Add proper nodeType query support oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java (4 lines): - line 362: //TODO Support for property existence queries - line 946: //TODO Should we return order entries only when all order clauses are satisfied - line 955: //TODO May be better if filter.getSuperTypes returned a list which maintains - line 971: //TODO Need a way to check if nodetype reg as seen by IndexDefinition is old then oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticDocumentMaker.java (4 lines): - line 62: // TODO: needed only for oak-lucene. Should be removed from oak-search - line 70: // TODO: check the conjecture below - line 232: // TODO : not implemented - line 237: // TODO : not implemented oak-core/src/main/java/org/apache/jackrabbit/oak/core/ContentRepositoryImpl.java (4 lines): - line 163: // TODO: support multiple workspaces. See OAK-118 - line 248: // TODO OAK-118 - line 254: // TODO OAK-827 - line 256: // TODO OAK-1403 oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/importer/IndexImporter.java (4 lines): - line 113: //TODO Need to review it for idempotent design. A failure in any step should not - line 216: //TODO How to support CompositeNodeStore where some of the child nodes would be hidden - line 234: continue; //TODO Handle sync indexes - line 247: //TODO Support case where checkpoint got lost or complete reindexing is done oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/EffectiveType.java (4 lines): - line 143: // TODO: unnecessary if the OAK-713 fallback wasn't needed below - line 151: // TODO: Fall back to residual definitions until we have consensus on OAK-713 - line 200: // TODO: unnecessary if the OAK-713 fallback wasn't needed below - line 208: // TODO: Fall back to residual definitions until we have consensus on OAK-713 oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/NodeDelegate.java (4 lines): - line 431: // FIXME: add mixins to add again as the removal may change the effect of type inheritance as evaluated during #addMixin - line 728: // FIXME: access to locking status should not depend on access rights (OAK-4234) - line 761: // FIXME: access to locking status should not depend on access rights (OAK-4234) - line 887: @NotNull // FIXME this should be package private. OAK-672 oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorProvider.java (3 lines): - line 181: //TODO Revisit use of warn level once all such cases are analyzed - line 186: //TODO Also check if index has been done once - line 219: //TODO [hybrid] This would cause issue with Facets as for faceted fields oak-run-elastic/src/main/java/org/apache/jackrabbit/oak/index/ElasticIndexCommand.java (3 lines): - line 134: // TODO : See if we need to support dumpIndexStats and index defs for elastic - not needed for now - line 149: // TODO : See if pre text extraction is needed for elastic - line 276: //TODO Do not clean if restarting oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/PropertyImpl.java (3 lines): - line 54: * TODO document - line 319: // TODO: avoid nested calls - line 373: // TODO: avoid nested calls oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java (3 lines): - line 200: // TODO : need to check if this works for all field types (most likely not!) - line 204: // TODO : the current parameter substitution is not expected to work well - line 383: // TODO : handle inclusion / exclusion of bounds oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ChangeProcessor.java (3 lines): - line 284: //TODO If FilterProvider gets changed later then MBean would need to be - line 496: // FIXME don't rely on toString for session id - line 673: // FIXME don't rely on toString for session id oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java (3 lines): - line 162: // TODO sharing the namePathMapper across different thread might lead to lock contention. - line 194: // FIXME Add support for FilterProvider in ListenerTracker - line 325: // FIXME support multiple path in ListenerTracker oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/EquiJoinConditionImpl.java (3 lines): - line 91: // TODO what is the expected result of an equi join for multi-valued properties? - line 119: // TODO support join on multi-valued properties - line 141: // TODO support join on multi-valued properties oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/Multiplexers.java (3 lines): - line 47: // TODO OAK-4645 set default to true once the code is stable - line 80: // TODO should this be collected from the index def? - line 95: // TODO what to do with non-default names that are not covered by oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/TypeEditor.java (3 lines): - line 69: * TODO: check protected properties and the structure they enforce. some of - line 284: // TODO: add any auto-created items that are still missing - line 502: // TODO: this should be done in a pluggable extension oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java (3 lines): - line 229: // TODO: Other prefix rules? - line 259: } else if ("/:[]|*".indexOf(ch) != -1) { // TODO: XMLChar check for unpaired surrogates - line 267: // TODO: Other name rules? oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java (3 lines): - line 221: // passed in setQuery(). TODO: avoid that mutability concern - line 676: // TODO add issue about order by optimization for multiple selectors - line 688: // TODO support joins oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/EffectiveNodeTypeImpl.java (3 lines): - line 81: // TODO: ignore/warning/error? - line 369: // TODO: This may need to be optimized - line 403: // TODO check multivalue handling oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticIndexHelper.java (3 lines): - line 113: // TODO: the mapping below is for features currently not supported. These need to be reviewed - line 130: * TODO: migrate to Elasticsearch Java client when the following issue will be fixed - line 248: // TODO: evaluate https://www.elastic.co/guide/en/elasticsearch/reference/current/faster-prefix-queries.html oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java (3 lines): - line 286: // TODO: take non-security related importers into account as well (proper configuration) - line 439: // TODO: should this be in SessionImpl? - line 449: node.unlock(); // TODO: use a single commit oak-run/src/main/java/org/apache/jackrabbit/oak/run/FrozenNodeRef.java (3 lines): - line 41: // TODO: we could consider NOT continuing here, as an nt:frozenNode could "in theory" - line 47: // TODO: we could consider NOT continuing here, as the structure of /jcr:system/jcr:versionStorage - line 53: // TODO: we could consider NOT continuing here, as we might opt to store frozenNodes oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMongoDownloadTask.java (3 lines): - line 80: // TODO: Revise this timeout. It is used to prevent the indexer from blocking forever if the queue is full. - line 115: //TODO This may lead to reads being routed to secondary depending on MongoURI - line 128: //TODO This may lead to reads being routed to secondary depending on MongoURI oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/lock/LockManagerImpl.java (3 lines): - line 78: if (node.holdsLock(false)) { // TODO: check ownership? - line 86: } catch (IllegalArgumentException e) { // TODO: better exception - line 98: // TODO: name mapping? oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/xml/ImporterImpl.java (3 lines): - line 171: // FIXME this passes the session scoped name path mapper also for workspace imports - line 257: //TODO ordering! (what happened to replace?) - line 274: //TODO find better heuristics? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/NodeTypeTemplateImpl.java (3 lines): - line 161: // TODO fail (in validator?) if not orderable but a supertype is orderable - line 165: // TODO fail (in validator?) if a supertype specifies a different primary item - line 173: // TODO fail (in validator?) on invalid item definitions oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStore.java (3 lines): - line 662: //TODO Make stats collection configurable as it add slight overhead - line 1830: // TODO conflict handling - line 2582: // TODO but if the split fails, we create actual garbage that cannot oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java (3 lines): - line 27: * TODO document - line 35: // TODO: see http://java.net/jira/browse/JSR_333-50) - line 40: String NAMESPACE_REP = "internal"; // TODO: see OAK-74 oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/AsyncIndexUpdate.java (2 lines): - line 145: private final long lifetime = DEFAULT_LIFETIME; // TODO: make configurable - line 1545: //TODO Fix this to account for nrt and sync oak-core/src/main/java/org/apache/jackrabbit/oak/query/index/FilterImpl.java (2 lines): - line 113: // TODO support "order by" - line 593: // TODO support fulltext conditions on certain properties oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java (2 lines): - line 83: * TODO document - line 764: // TODO: add more best-effort checks oak-core/src/main/java/org/apache/jackrabbit/oak/query/xpath/XPathToSQL2Converter.java (2 lines): - line 637: // TODO support "x eq y"? it seems this only matches for single value properties? - line 814: // TODO maybe support jcr:deref oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCache.java (2 lines): - line 78: //TODO We might need skip the calls if they occur due to SecondaryStoreObserver - line 183: //TODO Possibly can be improved oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/OutOfBandIndexerBase.java (2 lines): - line 61: //TODO Support for providing custom index definition i.e. where definition is not - line 74: //TODO Check for indexPaths being empty oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentTraverser.java (2 lines): - line 56: //TODO This may lead to reads being routed to secondary depending on MongoURI - line 81: //TODO Review the cache update approach where tracker has to track *all* docs oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/NodeNameImpl.java (2 lines): - line 86: // TODO reverse namespace remapping? - line 138: // TODO correctly validate JCR names - see JCR 2.0 spec 3.2.4 Naming Restrictions oak-run/src/main/java/org/apache/jackrabbit/oak/index/merge/IndexDefMergerUtils.java (2 lines): - line 195: // TODO when merging, we keep the product index, so two indexes are created. - line 199: // TODO when merging, e.g. lucene-2-custom-1 is created. but oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/ExternalObserverBuilder.java (2 lines): - line 81: //TODO Have a variant of BackgroundObserver which drops elements from the tail - line 100: //TODO Optimize for the case where new async index update is detected. Then oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/WorkspaceImpl.java (2 lines): - line 61: * TODO document - line 256: // FIXME: adjust implementation once OAK-118 is being addressed. oak-store-spi/src/main/java/org/apache/jackrabbit/oak/spi/lifecycle/WorkspaceInitializer.java (2 lines): - line 25: * TODO: define if/how runtime configuration changes may affect the workspace content. - line 26: * TODO: review params of initialize() oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/NodeLocalNameImpl.java (2 lines): - line 79: // TODO reverse namespace remapping? - line 85: // TODO LOCALNAME: evaluation of local name might not be correct oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/NotImpl.java (2 lines): - line 106: // TODO convert NOT conditions - line 112: // TODO convert NOT conditions oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexNodeManager.java (2 lines): - line 56: // TODO oak-search: should extend LuceneIndexNodeManager - line 233: //TODO This is still required to support Suggester, Spellcheck etc OAK-4643 oak-core-spi/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java (2 lines): - line 140: // TODO: Figure out if the old reference instance - line 153: // TODO: Note that the service might still be in use oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/SecondaryStoreCacheService.java (2 lines): - line 133: //TODO Support for exclude is not possible as once a NodeState is loaded from secondary - line 149: //TODO Need to see OSGi dynamics. Its possible that DocumentNodeStore works after the cache oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentBlobReferenceRetriever.java (2 lines): - line 54: // TODO this mode would also add in memory blobId - line 60: // TODO Should not rely on toString. Instead obtain oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/JoinImpl.java (2 lines): - line 152: // TODO right outer join: verify whether converting - line 216: // TODO is a join filter needed? oak-query-spi/src/main/java/org/apache/jackrabbit/oak/spi/query/fulltext/LikePattern.java (2 lines): - line 26: // TODO LIKE: optimize condition to '=' when no patterns are used, or 'between x and x+1' - line 27: // TODO LIKE: what to do for invalid patterns (patterns ending with a backslash) oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java (2 lines): - line 58: * FIXME: -Do we need to create commands for retry etc.? -Not sure if this is - line 287: //TODO The cursor needs to be closed oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/query/RowImpl.java (2 lines): - line 83: // TODO row score - line 89: // TODO row score oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryParser.java (2 lines): - line 22: * TODO: move to o.a.j.o.spi (figure out what to do with the Query class) - line 36: * TODO: Include name mapping information oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/Template.java (2 lines): - line 268: // TODO: Leverage the HAMT data structure for the comparison - line 276: // TODO: can this be optimized? oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexCommand.java (2 lines): - line 272: //TODO To support restart we need to store this checkpoint somewhere - line 382: //TODO Do not clean if restarting oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/LengthImpl.java (2 lines): - line 74: // TODO namespace remapping? - line 79: // TODO what is the expected result for LENGTH(multiValueProperty)? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java (2 lines): - line 237: // TODO : See if the check to skip elastic can be handled in a better way - maybe move isMatchingIndexNode to IndexDefinition ? - line 399: //TODO Implement the estimate oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java (2 lines): - line 417: // TODO : extract more generic SPI for augmentor factory - line 697: //TODO Need to check if it covers all cases oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedTransformTask.java (2 lines): - line 154: //TODO Review the cache update approach where tracker has to track *all* docs - line 156: // TODO: should we cache splitDocuments? Maybe this can be moved to after the check for split document oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexerBase.java (2 lines): - line 151: //TODO How to ensure we can safely read from secondary - line 401: //TODO OAK-7098 - Taken from IndexUpdate. Refactor to abstract out common logic like this oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/SessionDelegate.java (2 lines): - line 75: * TODO document - line 402: * TODO: Consolidate with save(). oak-store-spi/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractNodeState.java (2 lines): - line 140: if (afterChild != beforeChild) { // TODO: fastEquals? - line 371: // TODO inefficient unless there are very few child nodes oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElement.java (2 lines): - line 65: // TODO normalize the path (remove superfluous ".." and "." - line 115: // TODO normalize the path (remove superfluous ".." and "." oak-core/src/main/java/org/apache/jackrabbit/oak/query/SimpleExcerptProvider.java (2 lines): - line 110: // TODO instanceof should not be used - line 119: // TODO instanceof should not be used, oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java (2 lines): - line 241: // FIXME: OAK-3389 - line 536: //TODO Persistent cache should be removed in teardown oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUtils.java (2 lines): - line 56: * TODO document - line 67: // TODO: use property node type name oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/ACFilter.java (2 lines): - line 105: // TODO: check access to the source path, it might not be accessible - line 111: // TODO: check access to the dest name, it might not be accessible oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/principal/PrincipalManager.java (2 lines): - line 103: * TODO: define the filter expression.
- line 118: * TODO: define the filter expression.
oak-http/src/main/java/org/apache/jackrabbit/oak/http/JsonRepresentation.java (1 line): - line 107: // TODO: Type info? oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/mount/SimpleMountInfoProvider.java (1 line): - line 46: //TODO add validation of mountpoints oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentFactory.java (1 line): - line 102: // FIXME the collector should allow to stop processing oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobReferenceIterator.java (1 line): - line 51: // TODO It currently uses the configured read preference. Would that be Ok? oak-jackrabbit-api/src/main/java/org/apache/jackrabbit/api/observation/JackrabbitEventFilter.java (1 line): - line 90: public class JackrabbitEventFilter { // TODO extends EventFilter once JCR 2.1 is out oak-core/src/main/java/org/apache/jackrabbit/oak/core/SecureNodeState.java (1 line): - line 203: // TODO: A further optimization would be to return the raw oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/LowerCaseImpl.java (1 line): - line 80: // TODO toLowerCase(): document the Turkish locale problem oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LuceneIndexImporter.java (1 line): - line 54: //TODO The indexFormatVersion would be considered latest. Need to be revisited oak-blob/src/main/java/org/apache/jackrabbit/oak/spi/blob/FileBlobStore.java (1 line): - line 50: // TODO file operations are not secure (return values not checked, no retry,...) oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/LuceneIndexer.java (1 line): - line 64: //TODO possible optimization for NodeType based filtering oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/nodetype/NodeTypeIndex.java (1 line): - line 55: // TODO don't call getCost for such queries oak-store-spi/src/main/java/org/apache/jackrabbit/oak/json/JsopDiff.java (1 line): - line 26: * TODO document oak-run/src/main/java/org/apache/jackrabbit/oak/index/merge/IndexMerge.java (1 line): - line 318: // TODO probably need the ability to configure mounts oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/NodeStateEntryWriter.java (1 line): - line 48: //TODO Possible optimizations oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/IndexerSupport.java (1 line): - line 136: //TODO Do it only for lucene indexes for now oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeStore.java (1 line): - line 292: // TODO: rebase(); oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/LoggingHook.java (1 line): - line 111: final StringBuilder val = new StringBuilder(); // TODO: an output stream would certainly be better oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/version/VersionConstants.java (1 line): - line 45: String JCR_ROOT = "jcr:root"; // TODO: possible collisions? oak-pojosr/src/main/java/org/apache/jackrabbit/oak/run/osgi/OakOSGiRepositoryFactory.java (1 line): - line 318: //FIXME Pojo SR currently reads this from system property instead of Framework Property oak-examples/webapp/src/main/webapp/remoting/read_batch.jsp (1 line): - line 38: // TODO retrieve url from servlet context oak-core/src/main/java/org/apache/jackrabbit/oak/query/ResultRowImpl.java (1 line): - line 246: // TODO order by: nulls first (it looks like), or oak-core/src/main/java/org/apache/jackrabbit/oak/Oak.java (1 line): - line 701: // FIXME: OAK-810 move to proper workspace initialization oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java (1 line): - line 52: // FIXME: Hack needed to make Lucene work in an OSGi environment oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/PropertyIndexCleaner.java (1 line): - line 299: //TODO Configure validator oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexSanityChecker.java (1 line): - line 54: //TODO Add support for checksum based checks oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/PropertyStateWrapper.java (1 line): - line 27: //TODO Move this to org.apache.jackrabbit.oak.plugins.memory oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/CommitDiff.java (1 line): - line 101: //TODO [bundling] Handle change of primaryType. Current approach would work oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/CommitRateLimiter.java (1 line): - line 161: // TODO should not happen (log an error?) oak-examples/webapp/src/main/webapp/about.jsp (1 line): - line 22: * TODO: There should be an easier way to do this! oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexEditor.java (1 line): - line 139: // TODO: should we reindex when type definitions change? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexLookup.java (1 line): - line 187: // TODO: prefer the most specific type restriction oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NameValidator.java (1 line): - line 38: * TODO document oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/ApproximateCounter.java (1 line): - line 131: // TODO is this the right approach? divide by count_resolution oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java (1 line): - line 189: //TODO OAK-2204 - Should we change the precision to lower resolution oak-api/src/main/java/org/apache/jackrabbit/oak/api/ContentSession.java (1 line): - line 49: * TODO clarify workspace handling once multiple workspaces are oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/ItemDefinitionTemplate.java (1 line): - line 89: // TODO avoid (in validator?) unbounded recursive auto creation. oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/constraint/ReferenceConstraint.java (1 line): - line 33: // TODO implement ReferenceConstraint oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/DocumentBundlor.java (1 line): - line 43: * TODO - Also store the NodeType oak-core-spi/src/main/java/org/apache/jackrabbit/oak/namepath/JcrPathParser.java (1 line): - line 20: * TODO document oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/query/ElasticIndexPlanner.java (1 line): - line 76: //TODO Should we return order entries only when all order clauses are satisfied oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCMemoryBarrier.java (1 line): - line 49: // TODO possibly add a min value to the percentage, ie. skip gc if available oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexInfoServiceImpl.java (1 line): - line 101: return true; //TODO Reconsider this scenario oak-store-spi/src/main/java/org/apache/jackrabbit/oak/spi/state/NodeState.java (1 line): - line 371: * TODO: Define the behavior of this method with regards to oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java (1 line): - line 94: // TODO possibly support using multiple indexes (using index intersection / index merge) oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexUtil.java (1 line): - line 31: // TODO the max string length should be removed, or made configurable oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/datastore/DataStoreTextWriter.java (1 line): - line 132: //TODO should we compress oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DefaultDirectoryFactory.java (1 line): - line 112: // TODO: no locking used oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionableState.java (1 line): - line 581: // FIXME: handle child order properly oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Branch.java (1 line): - line 353: boolean isModified(Path path) { // TODO: rather pass NodeDocument? oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileStoreIterator.java (1 line): - line 86: //TODO Add some checks on expected ordering oak-core/src/main/java/org/apache/jackrabbit/oak/namepath/impl/NamePathMapperImpl.java (1 line): - line 36: * TODO document oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/query/async/ElasticResultRowAsyncIterator.java (1 line): - line 172: // TODO: we could avoid to register this listener when the client is interested in facets only. It would save space and time oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/SequentialCreateNodesTest.java (1 line): - line 40: final Session session = loginWriter(); // TODO: anonymous is slow oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java (1 line): - line 60: // TODO probably we should disable all observers, see OAK-5651 oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/ReadWriteVersionManager.java (1 line): - line 369: // TODO: more methods that modify versions oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/ConcurrentReadTest.java (1 line): - line 86: private final Session session = loginWriter(); // TODO: anonymous is slow oak-benchmarks-lucene/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java (1 line): - line 261: //TODO This to avoid issue with Indexing still running post afterSuite call oak-run/src/main/groovy/org/apache/jackrabbit/oak/console/GroovyConsole.groovy (1 line): - line 246: // TODO: See if we want to add any more language specific completions, like for println for example? oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/UpperCaseImpl.java (1 line): - line 76: // TODO what is the expected result of UPPER(x) for an array property? oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexDefinition.java (1 line): - line 109: return "lucene";//TODO should this be LuceneIndexConstants.TYPE_LUCENE? oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneJournalPropertyBuilder.java (1 line): - line 82: //TODO Add support for overflow oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/StringCache.java (1 line): - line 29: * TODO document oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/OakHelpFormatter.java (1 line): - line 64: //TODO Take care of left over options oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java (1 line): - line 598: // TODO: unify above conflict detection and isConflicting() oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGarbageCollector.java (1 line): - line 704: // FIXME: this is incorrect because that method also removes intermediate docs oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/OsgiRepository.java (1 line): - line 50: // TODO: The context class loader hack below shouldn't be needed oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ExtractedTextCache.java (1 line): - line 327: timeoutCount++; // TODO : use AtomicInteger ? this is a non-atomic operation on a volatile field oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/OakRepositoryFactory.java (1 line): - line 51: // TODO correctly interpret uri oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/SolrServerConfiguration.java (1 line): - line 67: return (S) constructor.newInstance(this); // TODO : each SolrServerProvider impl. is forced to have a constructor with a SolrServerConfiguration, fix? oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/index/ElasticBulkProcessorHandler.java (1 line): - line 167: // TODO: migrate to ES Java client https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current/indexing-bulk.html oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java (1 line): - line 76: // TODO probably we should disable all observers, see OAK-5651 oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/version/VersionStorage.java (1 line): - line 69: // TODO: this assumes the version store is in the same workspace. oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceIndex.java (1 line): - line 84: // TODO don't call getCost for such queries oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/reference/ReferenceEditor.java (1 line): - line 318: // TODO do we still need to encode the values? oak-run/src/main/java/org/apache/jackrabbit/oak/index/OutOfBandIndexer.java (1 line): - line 36: //TODO Support for providing custom index definition i.e. where definition is not oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/Include.java (1 line): - line 46: //TODO Restrict to * and have * == ** oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/util/Utils.java (1 line): - line 402: // TODO deprecate? oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/CugTest.java (1 line): - line 41: * TODO: setup configured number of cugs. oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java (1 line): - line 75: // TODO improve: avoid calculating the 'before' permissions in case the current parent permissions already point to the correct tree. oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java (1 line): - line 74: // TODO is sorting by file name needed? oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakIndexOutput.java (1 line): - line 69: //TODO: Do we know that copyBytes would always reach us via copy?? oak-run-elastic/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/ElasticIndexer.java (1 line): - line 74: //TODO possible optimization for NodeType based filtering oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/write/PropertyDefinitionTemplateImpl.java (1 line): - line 109: Arrays.asList(queryOperators), Type.NAMES); // TODO: mapping? oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/NodeDocument.java (1 line): - line 108: * TODO: check which value is the best one oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndex.java (1 line): - line 343: //TODO Explore following for optimizing indexing speed oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/SearchTest.java (1 line): - line 153: // TODO verify why "order by jcr:score()" accounts for what looks oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentStoreStats.java (1 line): - line 249: //TODO What more to gather oak-examples/webapp/src/main/webapp/remoting/json.js (1 line): - line 97: // TODO: evaluate and add to display info. oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundlingConfigHandler.java (1 line): - line 104: //TODO Any sanity checks oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/LiteralImpl.java (1 line): - line 56: // TODO namespace remapping? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/ConstantFilter.java (1 line): - line 26: * TODO document oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java (1 line): - line 513: // TODO: default hooks? oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakIndexInput.java (1 line): - line 53: // TODO : shouldn't we call super#clone ? oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentDiscoveryLiteDescriptors.java (1 line): - line 35: * DocumentDiscoveryLiteService TODO: move this constant to a generic place for both segment and document oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/CommitMitigatingTieredMergePolicy.java (1 line): - line 159: // TODO: should addIndexes do explicit merging, too? And, oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexConsistencyChecker.java (1 line): - line 280: //TODO Check for SuggestionDirectory Pending oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/ConflictValidatorProvider.java (1 line): - line 27: * TODO document oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/AbstractDecoratedNodeState.java (1 line): - line 237: if (!afterChild.equals(beforeChild)) { // TODO: fastEquals? oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/value/OakValue.java (1 line): - line 24: * TODO: document oak-blob-plugins/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/OakFileDataStore.java (1 line): - line 68: //TODO FIXME Temporary workaround for OAK-1666. Override the default oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalEntry.java (1 line): - line 295: // subsequent background reads to do this, provide a (TODO eventually configurable) oak-query-spi/src/main/java/org/apache/jackrabbit/oak/spi/query/QueryConstants.java (1 line): - line 63: // TODO jcr:path isn't an official feature, support it? oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndexPlan.java (1 line): - line 129: // TODO: avoid repeated scans through the restrictions oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMergeSortTask.java (1 line): - line 49: // TODO: start merging small files into larger files to avoid having too many "small" files at the end. oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/version/ReadWriteVersionManager.java (1 line): - line 253: // TODO: more methods that modify versions oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FullTextSearchScoreImpl.java (1 line): - line 69: // TODO if score() is not supported by the index, use the value 0.0? oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexRootDirectory.java (1 line): - line 333: //TODO Exclude -_ like chars via [^\W_] oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexConstants.java (1 line): - line 20: * TODO document oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/filter/ChangeSetFilterImpl.java (1 line): - line 207: //TODO: optimize this later oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java (1 line): - line 165: //TODO Add test case for above cases oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/CugOakTest.java (1 line): - line 43: * TODO: setup configured number of cugs. oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java (1 line): - line 136: // TODO close the connection oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java (1 line): - line 415: } else if (before != after // TODO: fastEquals? oak-blob-plugins/src/main/java/org/apache/jackrabbit/oak/plugins/blob/FileCache.java (1 line): - line 160: // TODO: Check persisting the in-memory map and initializing Vs building from fs oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/tika/TextExtractor.java (1 line): - line 188: //TODO Handle case where same blob is being concurrently processed oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java (1 line): - line 277: //TODO Distinguish fields which need to be used for search and for sort oak-core/src/main/java/org/apache/jackrabbit/oak/query/index/TraversingIndex.java (1 line): - line 150: // TODO we need to have better estimates, see also OAK-1898 oak-core-spi/src/main/java/org/apache/jackrabbit/oak/namepath/NameMapper.java (1 line): - line 28: * TODO document oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/FunctionIndexProcessor.java (1 line): - line 198: // TODO LOCALNAME: evaluation of local name might not be correct oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/property/PropertyIndex.java (1 line): - line 123: // TODO support indexes on a path oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/metric/MetricStatisticsProvider.java (1 line): - line 298: //TODO Should we use getMeanRate oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/cursor/PathCursor.java (1 line): - line 63: // TODO support jcr:score and possibly rep:excerpt oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/blob/LengthCachingDataStore.java (1 line): - line 88: //TODO For now using an in memory map. For very large repositories oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnReadDirectory.java (1 line): - line 248: //TODO In case of exception there would not be any other attempt oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.java (1 line): - line 162: //TODO make these configurable oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/VersionEditor.java (1 line): - line 46: * TODO document oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/ItemImpl.java (1 line): - line 61: * TODO document oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java (1 line): - line 77: * TODO document oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/version/ReadOnlyVersionManager.java (1 line): - line 289: // FIXME: may need to revise this, because getVersionStorageTree() oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/FileStoreUtils.java (1 line): - line 62: // FIXME the consumer should allow to stop processing oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/nodetype/PropertyDefinitionImpl.java (1 line): - line 93: // TODO: namespace mapping? oak-blob-plugins/src/main/java/org/apache/jackrabbit/oak/plugins/blob/SameThreadExecutorService.java (1 line): - line 35: * TODO: Remove this class once the whole Oak is migrated to use Guava 26. oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java (1 line): - line 144: // TODO possibly support union,... as available at oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserver.java (1 line): - line 72: //TODO Ensure that log do not flood oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/RepositorySecurityProvider.java (1 line): - line 54: //TODO Need to extend it support login for any user with AdminPrincipal oak-store-spi/src/main/java/org/apache/jackrabbit/oak/plugins/value/jcr/BinaryImpl.java (1 line): - line 40: * TODO document oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java (1 line): - line 486: // TODO should not be needed, but it seems oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/xml/DocViewImportHandler.java (1 line): - line 269: // TODO proper multi-value serialization support oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/tree/impl/AbstractTree.java (1 line): - line 61: // TODO: make this configurable oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexNode.java (1 line): - line 54: // TODO: does it matter that we simply return 0 as there's no observation based _refresh_ going on here oak-api/src/main/java/org/apache/jackrabbit/oak/api/ContentRepository.java (1 line): - line 50: * TODO clarify workspace handling once multiple workspaces are oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/identifier/IdentifierManager.java (1 line): - line 60: * TODO document oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/RepositoryStartupServlet.java (1 line): - line 482: //TODO oak-jcr also provides a dummy RepositoryFactory. Hence this oak-store-spi/src/main/java/org/apache/jackrabbit/oak/spi/commit/BackgroundObserver.java (1 line): - line 277: //TODO - Support for merging ChangeSet for external changes oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/util/DataConversionUtil.java (1 line): - line 37: //TODO OAK-2204 - Should we change the precision to lower resolution oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java (1 line): - line 84: //TODO Should not be done if later we implement multithreaded indexing