Derek Collison
d057889b13
Merge branch 'main' into dev
2023-03-31 11:36:35 -07:00
Derek Collison
ad5bb366a0
Updates to preacks when multiple consumers are present but mutually exlusive (filtered).
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-31 10:43:28 -07:00
Derek Collison
625ffa8685
Merge branch 'main' into dev
2023-03-29 17:19:45 -07:00
Derek Collison
9a714e7d7d
Update based on review feedback
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-29 15:47:54 -07:00
Derek Collison
c4da37ecc7
Make sure consumer is valid and state was returned
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-29 12:44:01 -07:00
Derek Collison
e516c47a4b
Improvements to consumers attached to an interest retention stream.
...
1. Do not process an ack if we are closed.
2. When checking for needing an ack for a given consumer, hold lock entire time.
3. During recovery and restarts we check if we need to replay acks to the parent stream.
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-29 12:43:49 -07:00
Derek Collison
80d0adede4
Merge branch 'main' into dev
2023-03-15 20:26:13 -07:00
Derek Collison
5bb6f167b9
Make sure to cleanup messages on a follower consumer for an interest based stream when the consumer leader sends a state snapshot.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-15 20:11:16 -07:00
Derek Collison
7d0f011620
Merge branch 'main' into dev
2023-03-14 06:56:00 -07:00
Derek Collison
5a1878b015
Fix for workqueue stream scaling up and not removing acked messages.
...
Make sure when scaling up streams that are workqueue or interest policy that consumers scale as well.
Signed-off-by: Derek Collison <derek@nats.io >
2023-03-13 17:13:49 -07:00
Derek Collison
9f69d8734f
Merge branch 'main' into dev
2023-03-04 08:42:10 -06:00
Tomasz Pietrek
df282a221c
Fix Pull Consumer not sending request timeout
...
Server did check for timeouts in `processWaiting`,
but that needs to be also checked in `nextWaiting` in case of
tight timings, as `nextWaiting` can remove Pull Request based on
timeouts too.
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-03-03 14:49:04 +01:00
Derek Collison
b46f0906ab
Fixup for consumer getNextMsg
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-28 15:17:58 -08:00
Derek Collison
7bd7cda021
Merge branch 'main' into dev
2023-02-28 15:17:24 -08:00
Derek Collison
724160ebac
Fix flapping tests
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-28 14:30:23 -08:00
Derek Collison
24cb570646
Do not lock on stream name for consumer write state error
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-28 13:24:18 -08:00
Derek Collison
d85bec2007
Do not block in place on warning, and only warn if consumer not closed
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-28 11:45:31 -08:00
Derek Collison
b19fe508c4
Do not block routes/gws on internal stream and consumer info requests
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-28 11:17:29 -08:00
Derek Collison
2642a8c03d
Optimize locking for when under heavy loads.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-27 18:56:55 -08:00
Derek Collison
13167f46b9
Optimize some locking for when under heavy loads.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-27 18:56:55 -08:00
Derek Collison
395409e2cd
Fixed up consumer stream pending logic from merge with main.
...
Bumped version
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-25 19:50:03 -08:00
Derek Collison
2463d83ad5
Merge branch 'main' into dev
2023-02-25 19:48:47 -08:00
Derek Collison
daacbf5580
Added optimized store NumPending() call.
...
Optimized and fixed a bug in filestore filteredPending().
Optimized memstore FilteredState().
Added comprehensive tests for NumPending() and FilteredState().
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-25 17:26:26 -08:00
Derek Collison
7ce23c46ce
Merge branch 'main' into dev
2023-02-21 08:34:08 -08:00
Neil Twigg
68961ffedd
Refactor ipQueue to use generics, reduce allocations
2023-02-21 14:50:09 +00:00
Derek Collison
b40621b508
Fixups for large merge with main
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-20 18:41:03 -08:00
Derek Collison
cac712b1d1
Merge branch 'main' into dev
2023-02-20 18:30:26 -08:00
Derek Collison
3c64d07691
Warn of consumer state update failures.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-20 17:28:11 -08:00
Derek Collison
d2179e0939
Make sure to also cleanup pending if below our stream ack floor
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-20 11:56:37 -08:00
Derek Collison
b6149c51f0
Make sure to clean up redelivered state on purge.
...
Make sure to update ack floors on messages being expired out from underneath of us.
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-20 11:16:12 -08:00
Derek Collison
6c9a9fb45e
Fixed bug that would lose ack pending state during partial stream purge.
...
General code cleanup to be more correct.
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-19 14:21:53 -08:00
Derek Collison
06fd81d096
Fixed a bug where a named consumer under interest policy was spinning up inactive threshold timers in all replicas not just the leader.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-19 06:08:43 -08:00
Derek Collison
efa3bcc49d
Parallel consumer creation could drop responses (create and info) and could also run monitorConsumer twice.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-18 05:16:05 -08:00
Derek Collison
017367f281
Merged new pending behavior with multiple filtered subjects.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-17 10:46:23 -08:00
Derek Collison
6920f24217
Merge branch 'main' into dev
2023-02-17 10:45:07 -08:00
Derek Collison
11b0f214d0
Do not re-calculate NumPending on consumer info calls.
...
We noticed this was being called alot in user environments.
When the consumer was filtered with a wilcard and the stream had a high cardinality of subjects and was falling behind this could take a substantial amount of time.
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-16 16:30:14 -08:00
Tomasz Pietrek
45deb3e8ef
Add error for both consumer filter fields specified
...
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-02-13 16:13:35 +01:00
Tomasz Pietrek
b390163908
Make JetStream errors naming consistent
...
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-02-13 14:08:52 +01:00
Tomasz Pietrek
af338d0d59
Add multiple subject filters
2023-02-13 09:38:40 +01:00
Derek Collison
3fe85e6cc4
Merge branch 'main' into dev
2023-02-06 21:57:49 +04:00
Derek Collison
b611e37e95
For updating a consumer filter subject make sure locking ordere correct and that our sublist is present.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-02-06 21:34:48 +04:00
Derek Collison
2d6b316efd
Merge branch 'main' into dev
2023-01-30 20:07:26 -08:00
Derek Collison
1252653c16
Merge pull request #3829 from nats-io/jarema/fix-message-after-update
...
Fix Consumer not getting messages after filter update
2023-01-30 19:59:32 -08:00
Derek Collison
aaacca8549
Merge branch 'main' into dev
2023-01-30 19:54:37 -08:00
Derek Collison
6058056e3b
Minor fixes and optimizations for snapshots.
...
We were snappshotting more then needed, so double check that we should be doing this at the stream and consumer level.
At the raft level, we should have always been compacting the WAL to last+1, so made that consistent. Also fixed bug that would not skip last if more items behind the snapshot.
Signed-off-by: Derek Collison <derek@nats.io >
2023-01-30 17:54:18 -08:00
Tomasz Pietrek
836848ca64
Fix Consumer not getting messages after filter update
...
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-01-30 20:47:17 +01:00
Tomasz Pietrek
9ab52d4ba9
Add metadata to StreamConfig and ConsumerConfig
...
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-01-27 07:27:25 +01:00
Tomasz Pietrek
69aa55a0e7
Merge pull request #3822 from nats-io/jarema/add-batch-completed
...
Add batch completed status to Pull Consumers
2023-01-26 23:43:00 +01:00
Tomasz Pietrek
34be180875
Add batch completed status to Pull Consumers
...
Signed-off-by: Tomasz Pietrek <tomasz@nats.io >
2023-01-26 23:23:49 +01:00
Derek Collison
c2d3d9c467
Merge pull request #3814 from nats-io/jnm/streamsourcetransform
...
[ADDED] Stream subject mapping transforms
2023-01-26 14:09:52 -08:00