ITPUB论坛 » Java企业开发 » 请教OSCache奇怪问题


2008-7-2 21:55 szhswl_db
请教OSCache奇怪问题

最近开发的几个项目中,都用到OSCache,之前几个项目也都进行了压力测试,没出现问题。
可现在在测试一个项目时,OSCache配置一样,代码一样,用JMeter进行测试时,就报如下错误:
ERROR [http-8080-Processor17] (Cache.java:417) - internal error: expected to get a state from key [screen_listviewmenu]
ERROR [http-8080-Processor24] (Cache.java:417) - internal error: expected to get a state from key [queries_private_detail_ff80808100d20ca40100d50ed39b0972]
ERROR [http-8080-Processor21] (Cache.java:417) - internal error: expected to get a state from key [query_402880900951a1830109533e726a1339]
ERROR [http-8080-Processor24] (Cache.java:417) - internal error: expected to get a state from key [query_402880900951a1830109534326f617b6]
ERROR [http-8080-Processor21] (Cache.java:417) - internal error: expected to get a state from key [enums_402880900951a18301095336ee34118e]
ERROR [http-8080-Processor19] (Cache.java:417) - internal error: expected to get a state from key [queries_private_request_ff80808100d20ca40100d50ed39b0972]
ERROR [http-8080-Processor15] (Cache.java:417) - internal error: expected to get a state from key [query_4028808f0284f2d9010285acc5a51eb7]
ERROR [http-8080-Processor22] (Cache.java:417) - internal error: expected to get a state from key [query_request-all]
......
java.lang.IllegalStateException: Cannot cancel cache update - current state (1) is not UPDATE_IN_PROGRESS
......


出现UPDATE_IN_PROGRESS错误应该是下面:
        public static Object get(String value) {

                try {
                        return cache.getFromCache(value);
                } catch (NeedsRefreshException e) {
                        cache.cancelUpdate(value);
                        return null;
                }
        }
代码中cache.cancelUpdate(value)导致的。
不知何解?
希望大家能讨论讨论。

[[i] 本帖最后由 szhswl_db 于 2008-7-2 23:07 编辑 [/i]]

2008-7-3 09:44 szhswl_db
今天又测试了,发现了此类错误都是发生在缓存第一个加载时,并发又高,缓存数据又需要一定的时间的地方。

看来是得修改测试方法。

2008-7-3 09:51 justforregister
测试还是漫游效果的嘛

页: [1]
查看完整版本: 请教OSCache奇怪问题


Powered by ITPUB论坛