Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						97b491aace 
					 
					
						
						
							
							chore: update import path  
						
						
						
						
					 
					
						2023-01-23 08:48:54 +02:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						331e40dc6c 
					 
					
						
						
							
							fix: reset pubsub state when unsubscribing from all channels  
						
						
						
						
					 
					
						2022-10-14 15:15:06 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						58f7149e38 
					 
					
						
						
							
							feat: add ContextTimeoutEnabled to respect context timeouts and deadlines  
						
						
						
						
					 
					
						2022-10-11 10:22:42 +03:00 
						 
				 
			
				
					
						
							
							
								jianghang 
							
						 
					 
					
						
						
							
						
						baa48a4415 
					 
					
						
						
							
							feat(pubsub): support sharded pub/sub  
						
						
						
						
					 
					
						2022-08-04 00:05:22 +08:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						a18fad5bd3 
					 
					
						
						
							
							chore: v9  
						
						
						
						
					 
					
						2022-06-04 17:42:06 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						c98c5f0eeb 
					 
					
						
						
							
							fix: update ChannelWithSubscriptions to accept options  
						
						
						
						
					 
					
						2022-06-04 16:20:10 +03:00 
						 
				 
			
				
					
						
							
							
								Pau Freixes 
							
						 
					 
					
						
						
							
						
						98bb99ddc2 
					 
					
						
						
							
							Fix Redis Cluster issue during roll outs of new nodes with same addr ( #1914 )  
						
						... 
						
						
						
						* fix: recycle connections in some Redis Cluster scenarios
This issue was surfaced in a Cloud Provider solution that used for
rolling out new nodes using the same address (hostname) of the nodes
that will be replaced in a Redis Cluster, while the former ones once
depromoted as Slaves would continue in service during some mintues
for redirecting traffic.
The solution basically identifies when the connection could be stale
since a MOVED response will be returned using the same address (hostname)
that is being used by the connection. At that moment we consider the
connection as no longer usable forcing to recycle the connection. 
						
						
					 
					
						2021-10-04 13:10:42 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						b94bde306e 
					 
					
						
						
							
							Fix/pubsub ping mutex ( #1878 )  
						
						... 
						
						
						
						* Fix PubSub.Ping to hold the lock
* Fix PubSub.Ping to hold the lock
* add write cmd data-race test
Signed-off-by: monkey92t <golang@88.com >
Co-authored-by: monkey92t <golang@88.com > 
						
						
					 
					
						2021-09-03 17:57:34 +08:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						37f5a2b1cd 
					 
					
						
						
							
							Update changelog  
						
						
						
						
					 
					
						2021-05-26 15:12:25 +03:00 
						 
				 
			
				
					
						
							
							
								monkey92t 
							
						 
					 
					
						
						
							
						
						8e8510431d 
					 
					
						
						
							
							Improve pubsub ( #1764 )  
						
						... 
						
						
						
						* Improve pubsub
Signed-off-by: monkey92t <golang@88.com >
* Extract code to channel struct and tweak API
* Move chanSendTimeout to channel
* Cleanup health check
* Add WithChannelSendTimeout and tweak comments
* clear notes
Signed-off-by: monkey92t <golang@88.com >
Co-authored-by: Vladimir Mihailenco <vladimir.webdev@gmail.com > 
						
						
					 
					
						2021-05-26 11:25:18 +08:00 
						 
				 
			
				
					
						
							
							
								monkey 
							
						 
					 
					
						
						
							
						
						a2410beb43 
					 
					
						
						
							
							upgrade golangci-lint to v1.39.0  
						
						... 
						
						
						
						Signed-off-by: monkey <golang@88.com > 
						
						
					 
					
						2021-04-08 14:44:31 +08:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						02a9c81ef1 
					 
					
						
						
							
							Fix golangci-lint check  
						
						
						
						
					 
					
						2021-03-23 11:02:29 +02:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						76f1e50d50 
					 
					
						
						
							
							Do not use retry backoff in PubSub  
						
						
						
						
					 
					
						2020-09-17 12:54:48 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						8a25ceadae 
					 
					
						
						
							
							Merge pull request  #1448  from rueian/pubsub-message-payload-slice  
						
						... 
						
						
						
						Support string array in pubsub message payload 
						
						
					 
					
						2020-09-08 18:02:19 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						c357d18624 
					 
					
						
						
							
							Faster renew the subscription  
						
						
						
						
					 
					
						2020-09-05 10:56:09 +03:00 
						 
				 
			
				
					
						
							
							
								Rueian 
							
						 
					 
					
						
						
							
						
						f5f73f8033 
					 
					
						
						
							
							Support string array in pubsub message payload  
						
						
						
						
					 
					
						2020-08-21 17:29:37 +08:00 
						 
				 
			
				
					
						
							
							
								刘青 
							
						 
					 
					
						
						
							
						
						8a3f304b25 
					 
					
						
						
							
							Log with context to associate all log by traceID ( #1413 )  
						
						... 
						
						
						
						* Log with context to associate all log by traceID 
						
						
					 
					
						2020-07-18 09:04:36 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						4440575966 
					 
					
						
						
							
							Merge branch 'v8'  
						
						
						
						
					 
					
						2020-05-21 10:16:44 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						eecd319ee3 
					 
					
						
						
							
							Fix nil type assertion  
						
						
						
						
					 
					
						2020-05-21 09:11:00 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						3dcb844106 
					 
					
						
						
							
							Bump major version  
						
						
						
						
					 
					
						2020-05-19 08:52:38 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						f5593121e0 
					 
					
						
						
							
							Add ctx as first arg  
						
						
						
						
					 
					
						2020-05-19 08:52:38 +03:00 
						 
				 
			
				
					
						
							
							
								Iain Proctor 
							
						 
					 
					
						
						
							
						
						7247939b32 
					 
					
						
						
							
							Fix "redis: discarding bad PubSub connection" stuck state ( #1162 )  
						
						... 
						
						
						
						* Reset healthy on reconnect 
						
						
					 
					
						2019-09-30 11:24:53 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						7779accbea 
					 
					
						
						
							
							Use semantic import versioning  
						
						
						
						
					 
					
						2019-08-08 14:29:44 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						4e9cea8876 
					 
					
						
						
							
							Add proper SingleConnPool implementation  
						
						
						
						
					 
					
						2019-08-03 17:31:28 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						f3ce3362a0 
					 
					
						
						
							
							Add golangci-lint  
						
						
						
						
					 
					
						2019-07-25 14:36:50 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						11ef80b162 
					 
					
						
						
							
							Change PubSub.Channel  
						
						
						
						
					 
					
						2019-07-09 10:25:27 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						3bdf64784a 
					 
					
						
						
							
							Cleanup  
						
						
						
						
					 
					
						2019-06-17 12:32:40 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						5460bc10f2 
					 
					
						
						
							
							Use Context.Deadline to set net.Conn deadline  
						
						
						
						
					 
					
						2019-06-08 15:02:51 +03:00 
						 
				 
			
				
					
						
							
							
								Francois Parquet 
							
						 
					 
					
						
						
							
						
						af59960088 
					 
					
						
						
							
							Typo error in comments  
						
						
						
						
					 
					
						2019-04-08 20:06:31 +08:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						b6fdeca648 
					 
					
						
						
							
							Add PubSub.ChannelSize  
						
						
						
						
					 
					
						2019-03-12 12:48:32 +02:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						21913a8304 
					 
					
						
						
							
							pubsub: drop a message when the channel is full  
						
						
						
						
					 
					
						2019-03-12 12:40:08 +02:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						daf101bd79 
					 
					
						
						
							
							Fix nil ping error  
						
						
						
						
					 
					
						2018-10-09 10:52:30 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						6a768df38b 
					 
					
						
						
							
							.  
						
						
						
						
					 
					
						2018-10-01 11:38:21 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						0197108027 
					 
					
						
						
							
							Use bufio.Writer  
						
						
						
						
					 
					
						2018-08-17 14:14:02 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						5146fb0c57 
					 
					
						
						
							
							Cleanup buffers manipulation  
						
						
						
						
					 
					
						2018-08-15 11:53:15 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						7c26d1ceb6 
					 
					
						
						
							
							Pass cn.Rd where possible  
						
						
						
						
					 
					
						2018-08-15 09:38:58 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						e3b56f7641 
					 
					
						
						
							
							pubsub: fix ping logic  
						
						
						
						
					 
					
						2018-08-07 16:48:32 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						316917d99f 
					 
					
						
						
							
							pubsub: log an error on reconnect  
						
						
						
						
					 
					
						2018-08-07 10:33:07 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						96d1b85009 
					 
					
						
						
							
							Cleanups  
						
						
						
						
					 
					
						2018-08-06 13:59:15 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						b576fe91a1 
					 
					
						
						
							
							Use single read and write buffer where possible  
						
						
						
						
					 
					
						2018-08-04 13:09:22 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						7e6413d467 
					 
					
						
						
							
							Better allowTimeout in PubSub  
						
						
						
						
					 
					
						2018-07-30 13:57:04 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						9bb7bb3cde 
					 
					
						
						
							
							Change ReceiveMessage to not use Ping  
						
						
						
						
					 
					
						2018-07-24 09:54:34 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						ea9da7c2e8 
					 
					
						
						
							
							Rework ReceiveMessage  
						
						
						
						
					 
					
						2018-07-23 17:10:58 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						b92dacbfa7 
					 
					
						
						
							
							Conn timeout should be higher than read timeout  
						
						
						
						
					 
					
						2018-07-22 08:49:48 +03:00 
						 
				 
			
				
					
						
							
							
								superkinglabs 
							
						 
					 
					
						
						
							
						
						877867d284 
					 
					
						
						
							
							Remove costly 'appendIfNotExists' and 'remove' call from PubSub ( #743 )  
						
						... 
						
						
						
						* remove costly 'appendIfNotExists' and 'remove' call from pubsub 
						
						
					 
					
						2018-03-14 12:42:51 +02:00 
						 
				 
			
				
					
						
							
							
								Veselkov Konstantin 
							
						 
					 
					
						
						
							
						
						ea4d6c3490 
					 
					
						
						
							
							golint warnings are removed  
						
						
						
						
					 
					
						2018-01-24 22:38:47 +04:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						15f14b8305 
					 
					
						
						
							
							Create PubSub channel once  
						
						
						
						
					 
					
						2017-10-30 12:09:57 +02:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						dbd2c99ba9 
					 
					
						
						
							
							Rework pipeline retrying  
						
						
						
						
					 
					
						2017-09-01 14:56:00 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						dbcf95c85e 
					 
					
						
						
							
							Fix PubSub.Subscribe deadlock  
						
						
						
						
					 
					
						2017-08-01 14:21:26 +03:00 
						 
				 
			
				
					
						
							
							
								Vladimir Mihailenco 
							
						 
					 
					
						
						
							
						
						6060f097e1 
					 
					
						
						
							
							Add PubSub support to Cluster client  
						
						
						
						
					 
					
						2017-07-09 10:07:20 +03:00