Class: Gitlab::Database::Reindexing::ReindexAction

Inherits:
SharedModel
  • Object
show all
Defined in:
lib/gitlab/database/reindexing/reindex_action.rb

Constant Summary collapse

RECENT_THRESHOLD =

Amount of time to consider a previous reindexing recent

10.days

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from SharedModel

connection, #connection_db_config, connection_pool, using_connection

Class Method Details

.create_for(index) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/gitlab/database/reindexing/reindex_action.rb', line 17

def self.create_for(index)
  create!(
    index_identifier: index.identifier,
    action_start: Time.zone.now,
    ondisk_size_bytes_start: index.ondisk_size_bytes,
    bloat_estimate_bytes_start: index.bloat_size
  )
end

Instance Method Details

#finishObject



26
27
28
29
30
31
32
33
34
# File 'lib/gitlab/database/reindexing/reindex_action.rb', line 26

def finish
  index.reload # rubocop:disable Cop/ActiveRecordAssociationReload

  self.state = :finished unless failed?
  self.action_end = Time.zone.now
  self.ondisk_size_bytes_end = index.ondisk_size_bytes

  save!
end