Skip to content

Commit 779ed8d

Browse files
fix for unicorn
1 parent 2d22d0a commit 779ed8d

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

lib/optimizely/event/batch_event_processor.rb

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ class BatchEventProcessor < EventProcessor
3131
DEFAULT_BATCH_INTERVAL = 30_000 # interval in milliseconds
3232
DEFAULT_QUEUE_CAPACITY = 1000
3333
DEFAULT_TIMEOUT_INTERVAL = 5 # interval in seconds
34-
MAX_NIL_COUNT = 3
3534

3635
FLUSH_SIGNAL = 'FLUSH_SIGNAL'
3736
SHUTDOWN_SIGNAL = 'SHUTDOWN_SIGNAL'
@@ -62,7 +61,7 @@ def initialize(
6261
@notification_center = notification_center
6362
@current_batch = []
6463
@started = false
65-
start!
64+
@stopped = false
6665
end
6766

6867
def start!
@@ -74,6 +73,7 @@ def start!
7473
@logger.log(Logger::INFO, 'Starting scheduler.')
7574
@thread = Thread.new { run_queue }
7675
@started = true
76+
@stopped = false
7777
end
7878

7979
def flush
@@ -83,10 +83,7 @@ def flush
8383
def process(user_event)
8484
@logger.log(Logger::DEBUG, "Received userEvent: #{user_event}")
8585

86-
unless @started
87-
@logger.log(Logger::WARN, 'Executor shutdown, not accepting tasks.')
88-
return
89-
end
86+
start! unless @started || @stopped
9087

9188
begin
9289
@event_queue.push(user_event, true)
@@ -103,6 +100,7 @@ def stop!
103100
@event_queue << SHUTDOWN_SIGNAL
104101
@thread.join(DEFAULT_TIMEOUT_INTERVAL)
105102
@started = false
103+
@stopped = true
106104
end
107105

108106
private
@@ -139,7 +137,10 @@ def run_queue
139137

140138
break unless process_queue
141139

142-
interval = (@flushing_interval_deadline - Helpers::DateTimeUtils.create_timestamp) / 1000.0
140+
interval = (@flushing_interval_deadline - Helpers::DateTimeUtils.create_timestamp)
141+
142+
interval = interval / 5.0 if interval == @flush_interval
143+
interval = interval * 0.001
143144

144145
sleep interval if interval.positive?
145146
end

0 commit comments

Comments
 (0)