alibaba / druid

阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
https://github.com/alibaba/druid/wiki
Apache License 2.0
27.95k stars 8.58k forks source link

什么时候能把sessionStatMap is full这个没用的Error去掉 #3388

Open Vecho95 opened 5 years ago

Vecho95 commented 5 years ago

这段代码又不处理,天天在我们系统里打Error 球球你们快把这个解决了吧,我快被告警烦死了

        try {
            uriStat = (WebSessionStat)this.sessionStatMap.get(sessionId);
            if (uriStat == null) {
                if (this.sessionStatMap.size() >= this.getMaxStatSessionCount()) {
                    long fullCount = this.uriSessionMapFullCount.getAndIncrement();
                    if (fullCount == 0L) {
                        LOG.error("sessionStatMap is full");
                    }
                }

                newStat = new WebSessionStat(sessionId);
                this.sessionStatMap.put(sessionId, newStat);
                WebSessionStat var5 = newStat;
                return var5;
            }

            newStat = uriStat;
        } finally {
            this.sessionStatLock.writeLock().unlock();
        }
ToryZhou commented 1 year ago

现在是1.1.6版本,也是报这个错,往测试开发群里面发报错。 ` public WebURIStat getURIStat(String uri, boolean create) { WebURIStat uriStat = uriStatMap.get(uri);

    if (uriStat != null) {
        return uriStat;
    }

    if (!create) {
        return null;
    }

    if (uriStatMap.size() >= this.getMaxStatUriCount()) {
        long fullCount = uriStatMapFullCount.getAndIncrement();

        if (fullCount == 0) {
            LOG.error("uriSessionMapFullCount is full");
        }

        return null;
    }

    uriStatMap.putIfAbsent(uri, new WebURIStat(uri));
    uriStat = uriStatMap.get(uri);

    return uriStat;
}`