Interface IndexingFeatures

All Known Implementing Classes:
IndexingFeaturesImpl

@Internal public interface IndexingFeatures
These feature flags enables indexing improvements that reduces indexing time and index size for instances with large number of custom fields. Only intended for internal Jira use.
Since:
8.9
  • Method Details

    • isCFValueDrivenIndexingEnabled

      boolean isCFValueDrivenIndexingEnabled()
      Returns true if custom field value driven index is enabled otherwise false.
    • isLocalContextIndexingEnabled

      boolean isLocalContextIndexingEnabled()
      Returns true if local context index is enabled otherwise false.
    • isSkipIndexingNullEnabled

      boolean isSkipIndexingNullEnabled()
      Returns true if skip indexing null is enabled otherwise false.
    • getCustomFieldIndexingBatchSize

      int getCustomFieldIndexingBatchSize()
      Returns number representing batch size of custom field value retrieval. Never less than 1. Default value is 50. To disable batching set the value to 1.
    • getShouldEmitCacheClearEvent

      boolean getShouldEmitCacheClearEvent()
      Returns whether the cache clear event should be emitted after indexing. This is used to notify caches that they should clear their entries related to the indexed issues.
      Returns:
      true if the cache clear event should be emitted, false otherwise
    • isSearchApiEnabled

      boolean isSearchApiEnabled()
      Returns whether the search API Feature Flag is enabled ("com.atlassian.jira.search.api").
      Returns:
      true if the search API FF is enabled, false otherwise
      Since:
      10.4
    • isOpenSearchEnabled

      boolean isOpenSearchEnabled()
      Checks if OpenSearch is enabled based on the configured search platform.
      Returns:
      true if OpenSearch is the configured search platform, false otherwise
    • getReindexProcessingQueueSize

      int getReindexProcessingQueueSize()
      Returns the size of the reindex processing queue. This is used to determine how many issues can be queued for reindexing at once.
      Returns:
      the size of the reindex processing queue
    • getReindexProducerThreadPutTimeoutMs

      int getReindexProducerThreadPutTimeoutMs()
      Returns the timeout for the producer thread when putting issues into the reindexing queue. This is used to determine how long the producer thread will wait to put an issue into the queue before timing out.
      Returns:
      the timeout for putting issues into the reindexing queue in milliseconds
    • getMaxReindexConsumerThreads

      int getMaxReindexConsumerThreads()
      Returns the maximum number of threads that can be used for consuming issues from the processing queue and indexing them.
      Returns:
      the maximum number of consumer threads for reindexing
    • getReindexConsumerThreadPollingTimeoutMs

      int getReindexConsumerThreadPollingTimeoutMs()
      Returns the timeout for polling the reindexing queue. This is used to determine how long to wait for new issues to be added to the queue before timing out.
      Returns:
      the timeout for polling the reindexing queue in milliseconds
    • getReindexBulkRequestSize

      int getReindexBulkRequestSize()
      Returns the size of the bulk request sent to the Search platform for reindexing.
      Returns:
      the size of the bulk request sent to the Search platform for reindexing.
    • getTermsSetQueryMaxTermsCount

      int getTermsSetQueryMaxTermsCount()
      Returns the maximum number of terms that can be set in a TermsSetQuery. This is used to prevent hitting the Search Platform's limit on the number of terms that can be set in a TermsSetQuery.
      Returns:
      the maximum number of terms that can be set in a TermsSetQuery
    • getReindexFailureTolerancePercentage

      int getReindexFailureTolerancePercentage()
      Returns the percentage of reindex failures that can be tolerated before the reindexing process is considered failed. This is used to determine how many percentage of reindexing failures can be tolerated
      Returns:
      the percentage of reindex failures that can be tolerated
    • isIndexBackupSupported

      boolean isIndexBackupSupported()
      Returns true if the active Search Platform supports index backup (i.e. Lucene), otherwise false.
      Returns:
      true if index backup is supported, false otherwise
    • setReindexFailureTolerancePercentage

      void setReindexFailureTolerancePercentage(int percentage)
      Sets the value to use for the reindexing fault tolerance.
      Parameters:
      percentage - the fault tolerance value