View Issue Details

IDProjectCategoryView StatusLast Update
0007008SymmetricDSImprovementpublic2025-08-07 15:49
Reporteremiller Assigned Toemiller  
Prioritynormal 
Status closedResolutionfixed 
Product Version3.14.0 
Target Version3.16.5Fixed in Version3.16.5 
Summary0007008: Allow other threads to access the node channel cache while it's being refreshed
DescriptionCurrently, when one thread is refreshing the node channel cache, other threads have to wait for it to complete and release the lock. When the database is slow, this can cause a large number of pull threads to be stuck waiting for the refresh to complete. Meanwhile, the following message may appear in the log:

INFO [server] [ConcurrentConnectionManager] [qtp53752060-468] Node 'client' Channel 'null' requested a /sync/pull connection, but was rejected because it already has one

Instead, if another thread can't get the lock, it should use the cached value if it isn't null. The outgoing batch cache can be used as an example. It uses a semaphore to achieve this kind of behavior.
Tagsconfiguration, data sync, performance

Relationships

related to 0007007 closedemiller Allow other threads to access the node channel cache while it's being refreshed 

Activities

emiller

2025-07-31 14:16

developer   ~0003282

PR: https://github.com/JumpMind/symmetric-ds/pull/334

pbelov

2025-08-07 15:49

manager   ~0003296

Included in the 3.16.5 release

Related Changesets

SymmetricDS: 3.16 829a2deb

2025-08-01 16:01:38

evan-miller-jumpmind


Committer: GitHub Details Diff
0007008: Allowed other threads to access the node channel cache while it's being refreshed (#334)

* 0007008: Allowed other threads to access the node channel cache while it's being refreshed
Affected Issues
0007008
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/cache/ConfigurationCache.java Diff File

Issue History

Date Modified Username Field Change
2025-07-30 15:50 emiller New Issue
2025-07-30 15:50 emiller Tag Attached: configuration
2025-07-30 15:50 emiller Tag Attached: data sync
2025-07-30 15:50 emiller Tag Attached: performance
2025-07-30 15:50 emiller Issue generated from: 0007007
2025-07-30 15:50 emiller Relationship added related to 0007007
2025-07-30 15:51 emiller Status new => confirmed
2025-07-30 18:17 emiller Assigned To => emiller
2025-07-30 18:17 emiller Status confirmed => assigned
2025-07-31 14:16 emiller Note Added: 0003282
2025-08-01 16:02 pbelov Status assigned => resolved
2025-08-01 16:02 pbelov Resolution open => fixed
2025-08-01 16:02 pbelov Fixed in Version => 3.16.5
2025-08-01 17:00 Changeset attached => SymmetricDS 3.16 829a2deb
2025-08-07 15:49 pbelov Note Added: 0003296
2025-08-07 15:49 pbelov Status resolved => closed