Overflowing the cache into the quarantine doesn’t make sense. If you don’t want the cache to overflow just make it bigger.
Let me see if I can clear some things up. There are 3 terms I’m going to use:
buffer: The memory buffer that all data is initial placed in
cache: The local cache of pending and quarantined records that is stored in an internal database on the Gateway’s hard drive
sink: The actual target database that you’d like to store the records in
available: Whether or not a connection to the sink is currently working or not
All records initially go into the buffer. When they move out of the buffer depends on 1) the Write Size/Time settings and 2) Whether or not the cache is enabled and 3) whether or not the sink is available.
Lets assume we’re dealing with a cache-enabled scenario.
Records move out of the buffer after the Write Size has been reached or the Write Time has elapsed, whichever comes first. If the cache has records in it that are being written, the records from the buffer go into the cache so that ordering is maintained. If the sink is unavailable, the records will go into the cache. If the sink is available and the cache is empty, the records go straight to the sink.
Heres the important part.
If the sink is available but spits back an error when trying to store a record, that record is quarantined. The reason is that the connection to the sink was up, but the sink said “hey - these records are no good, I can’t store them”. So rather than constantly erroring out, we put them aside (in the quarintine) for a human to make a decision: “Ok, try again - I’ve changed whatever was causing them to fail” - OR - “Just forget about it - they can be dropped”
So the quarantine has very different semantics than the cache. The cache is simply a non-volatile temporary storage area for records that will be stored to the sinks as soon as it is available.
Hope this helps,