Kaynağa Gözat

Fix the bug of misplaced locks in ContextUtil and ClusterNode (#1429)

- which may lead to IllegalMonitorStateException in unlock() when unchecked error occurs during lock()
master
haifeng GitHub 4 yıl önce
ebeveyn
işleme
04a1d065dd
Veri tabanında bu imza için bilinen anahtar bulunamadı GPG Anahtar Kimliği: 4AEE18F83AFDEB23
2 değiştirilmiş dosya ile 2 ekleme ve 2 silme
  1. +1
    -1
      sentinel-core/src/main/java/com/alibaba/csp/sentinel/context/ContextUtil.java
  2. +1
    -1
      sentinel-core/src/main/java/com/alibaba/csp/sentinel/node/ClusterNode.java

+ 1
- 1
sentinel-core/src/main/java/com/alibaba/csp/sentinel/context/ContextUtil.java Dosyayı Görüntüle

@@ -127,8 +127,8 @@ public class ContextUtil {
setNullContext();
return NULL_CONTEXT;
} else {
LOCK.lock();
try {
LOCK.lock();
node = contextNameNodeMap.get(name);
if (node == null) {
if (contextNameNodeMap.size() > Constants.MAX_CONTEXT_NAME_SIZE) {


+ 1
- 1
sentinel-core/src/main/java/com/alibaba/csp/sentinel/node/ClusterNode.java Dosyayı Görüntüle

@@ -101,8 +101,8 @@ public class ClusterNode extends StatisticNode {
public Node getOrCreateOriginNode(String origin) {
StatisticNode statisticNode = originCountMap.get(origin);
if (statisticNode == null) {
lock.lock();
try {
lock.lock();
statisticNode = originCountMap.get(origin);
if (statisticNode == null) {
// The node is absent, create a new node for the origin.


Yükleniyor…
İptal
Kaydet