splitclient-rb 7.3.3.pre.rc10-java → 7.3.3.pre.rc14-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cef1d0e7796aa26ef80add139ea7cc9fbd671803
4
- data.tar.gz: 7cb0de04898f2a9fc5e4c1f041bfd5f948a3aecb
3
+ metadata.gz: 8648cd9f96feaf87170f931e640405f393922b59
4
+ data.tar.gz: 268645f59cde745017905266d920d43b866eebcb
5
5
  SHA512:
6
- metadata.gz: 8991127acb956b9bb256fb4ef34f5612d9b75d0e64079c222469499729c103ee07db89e6cae4a5d57b981daaa001cd959efaff80fd958902327b033e886e8231
7
- data.tar.gz: ab57a7f198719c6e9e3e0dd20c26800fc6f2b4a95be2cde03b31ce53f21abb9f65e8a04d9241fe25e948cd244135dcf57a56545708e6346350ff64fea1bbf0a5
6
+ metadata.gz: 998dfcc024601f920d22e722624a993cfc7aa5d5c6c7099a3d62a0fa9a19915913f5f9ce8d198e2fca45f70b1c95aa22a1fc2c776f370c1a4ee2b60e4cd6ca3b
7
+ data.tar.gz: 022fe8fc3f3db13ac6e7063ba31db902e81566a21f64a76b9b57a96b06cce58701020495d906b3d0f4ee26814370ec66f2df9307dc7584bb6df2bdaf234ff487
@@ -34,8 +34,13 @@ module SplitIoClient
34
34
  end
35
35
 
36
36
  def stop_sse
37
+ @config.logger.error('## STOP SSE')
37
38
  @sse_handler.process_disconnect if @sse_handler.sse_client.nil?
38
39
  @sse_handler.stop
40
+ stop_next_token_refresh
41
+ end
42
+
43
+ def stop_next_token_refresh
39
44
  SplitIoClient::Helpers::ThreadHelper.stop(:schedule_next_token_refresh, @config)
40
45
  end
41
46
 
@@ -47,9 +52,12 @@ module SplitIoClient
47
52
  @config.logger.debug("schedule_next_token_refresh refresh in #{time} seconds.") if @config.debug_enabled
48
53
  sleep(time)
49
54
  @config.logger.debug('schedule_next_token_refresh starting ...') if @config.debug_enabled
55
+ @config.logger.error('## SCHEDULE NEXT TOKEN')
56
+
50
57
  @sse_handler.stop
51
58
  start_sse
52
59
  rescue StandardError => e
60
+ @config.logger.error("## SCHEDULE EXCEPTION #{e.inspect}")
53
61
  @config.logger.debug("schedule_next_token_refresh error: #{e.inspect}") if @config.debug_enabled
54
62
  end
55
63
  end
@@ -67,6 +67,7 @@ module SplitIoClient
67
67
  end
68
68
 
69
69
  def process_action(action)
70
+ @config.logger.error("process_action #{action}")
70
71
  case action
71
72
  when Constants::PUSH_CONNECTED
72
73
  process_connected
@@ -117,8 +118,8 @@ module SplitIoClient
117
118
 
118
119
  @sse_connected.make_true
119
120
  @synchronizer.stop_periodic_fetch
120
- @synchronizer.sync_all
121
121
  @sse_handler.start_workers
122
+ @synchronizer.sync_all
122
123
  record_telemetry(Telemetry::Domain::Constants::SYNC_MODE, SYNC_MODE_STREAMING)
123
124
  rescue StandardError => e
124
125
  @config.logger.error("process_connected error: #{e.inspect}")
@@ -131,11 +132,12 @@ module SplitIoClient
131
132
  end
132
133
 
133
134
  @sse_connected.make_false
134
- @sse_handler.stop_workers
135
135
  @synchronizer.start_periodic_fetch
136
+ @sse_handler.stop_workers
136
137
  record_telemetry(Telemetry::Domain::Constants::SYNC_MODE, SYNC_MODE_POLLING)
137
138
 
138
139
  if reconnect
140
+ @push_manager.stop_sse
139
141
  @synchronizer.sync_all
140
142
  @push_manager.start_sse
141
143
  end
@@ -7,8 +7,6 @@ module SplitIoClient
7
7
  thread = config.threads[thread_sym]
8
8
 
9
9
  unless thread.nil?
10
- config.logger.debug("Stopping #{thread_sym} thread...") if config.debug_enabled
11
- config.logger.debug("################## #{thread.status}") if config.debug_enabled
12
10
  Thread.kill thread
13
11
  config.logger.debug("#{thread_sym} killed.") if config.debug_enabled
14
12
  end
@@ -35,10 +35,15 @@ module SplitIoClient
35
35
  @on[:action] = action
36
36
  end
37
37
 
38
- def close(action = Constants::PUSH_NONRETRYABLE_ERROR)
38
+ def close
39
+ unless connected?
40
+ @config.logger.error('SSEClient already disconected.') if @config.debug_enabled
41
+ return
42
+ end
43
+
39
44
  @connected.make_false
40
45
  @socket&.close
41
- dispatch_action(action)
46
+ @config.logger.error('## CLOSE SSE')
42
47
  rescue StandardError => e
43
48
  @config.logger.error("SSEClient close Error: #{e.inspect}")
44
49
  end
@@ -70,10 +75,12 @@ module SplitIoClient
70
75
 
71
76
  def connect_thread(latch)
72
77
  @config.threads[:connect_stream] = Thread.new do
78
+ @config.logger.error('## CONNECT THREAD')
73
79
  @config.logger.info('Starting connect_stream thread ...') if @config.debug_enabled
74
80
  closed_with_exception = connect_stream(latch)
75
- close(closed_with_exception) unless closed_with_exception.nil?
81
+ dispatch_action(closed_with_exception) unless closed_with_exception.nil?
76
82
  @config.logger.info('connect_stream thread finished.') if @config.debug_enabled
83
+ @config.logger.error('#### DISCONNECTED')
77
84
  end
78
85
  end
79
86
 
@@ -87,8 +94,11 @@ module SplitIoClient
87
94
  read_first_event(partial_data, latch)
88
95
 
89
96
  raise 'eof exception' if partial_data == :eof
97
+ rescue Errno::EBADF, IOError => e
98
+ @config.logger.error(e.inspect)
99
+ return nil
90
100
  rescue StandardError => e
91
- @config.logger.error('Error reading partial data: ' + e.inspect) if @config.debug_enabled
101
+ @config.logger.error("Error reading partial data: #{e.inspect}") if @config.debug_enabled
92
102
  return Constants::PUSH_RETRYABLE_ERROR
93
103
  end
94
104
 
@@ -183,8 +193,10 @@ module SplitIoClient
183
193
  end
184
194
 
185
195
  def dispatch_action(action)
186
- @config.logger.debug("Dispatching action: #{action}") if @config.debug_enabled
187
- @on[:action].call(action)
196
+ @config.threads[:dispatch_action] = Thread.new do
197
+ @config.logger.debug("Dispatching action: #{action}") if @config.debug_enabled
198
+ @on[:action].call(action)
199
+ end
188
200
  end
189
201
  end
190
202
  end
@@ -1,3 +1,3 @@
1
1
  module SplitIoClient
2
- VERSION = '7.3.3.pre.rc10'
2
+ VERSION = '7.3.3.pre.rc14'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitclient-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.3.3.pre.rc10
4
+ version: 7.3.3.pre.rc14
5
5
  platform: java
6
6
  authors:
7
7
  - Split Software
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-20 00:00:00.000000000 Z
11
+ date: 2022-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement