See <http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/1971/changes>
Changes: [Alex Rousskov] Allow a ufs cache_dir entry to coexist with a shared memory cache entry instead of being released when it becomes idle. The original boolean version of the StoreController::dereference() code (r11730) was written to make sure that idle unlocked local store_table entries are released if nobody needs them (to avoid creating inconsistencies with shared caches that could be modified in a different process). Then, in r11786, we realized that the original code was destroying non-shared memory cache entries if there were no cache_dirs to vote for keeping them in store_table. I fixed that by changing the StoreController::dereference() logic from "remove if nobody needs it" to "remove if somebody objects to keeping it". That solved the problem at hand, but prohibited an entry to exist in a non-shared cache_dir and in a shared memory cache at the same time. We now go back to the original "remove if nobody needs it" design but also give non-shared memory cache a vote so that it can protect idle non-shared memory cached entries from being released if there are no cache_dirs to vote for them. ------------------------------------------ [...truncated 7413 lines...] Testing ../../src/errorpage.h ...Ok. Testing ../../src/err_type.h ...Ok. Testing ../../src/ETag.h ...Ok. Testing ../../src/event.h ...Ok. Testing ../../src/EventLoop.h ...Ok. Testing ../../src/ExternalACLEntry.h ...Ok. Testing ../../src/ExternalACL.h ...Ok. Testing ../../src/FadingCounter.h ...Ok. Testing ../../src/fde.h ...Ok. Testing ../../src/FileMap.h ...Ok. Testing ../../src/forward.h ...Ok. Testing ../../src/Generic.h ...Ok. Testing ../../src/globals.h ...Ok. Testing ../../src/HelperChildConfig.h ...Ok. Testing ../../src/helper.h ...Ok. Testing ../../src/HierarchyLogEntry.h ...Ok. Testing ../../src/hier_code.h ...Ok. Testing ../../src/htcp.h ...Ok. Testing ../../src/HttpBody.h ...Ok. Testing ../../src/HttpControlMsg.h ...Ok. Testing ../../src/http.h ...Ok. Testing ../../src/HttpHdrCc.h ...Ok. Testing ../../src/HttpHdrContRange.h ...Ok. Testing ../../src/HttpHdrSc.h ...Ok. Testing ../../src/HttpHdrScTarget.h ...Ok. Testing ../../src/HttpHeader.h ...Ok. Testing ../../src/HttpHeaderMask.h ...Ok. Testing ../../src/HttpHeaderRange.h ...Ok. Testing ../../src/HttpHeaderStat.h ...Ok. Testing ../../src/HttpHeaderTools.h ...Ok. Testing ../../src/HttpMsg.h ...Ok. Testing ../../src/HttpParser.h ...Ok. Testing ../../src/HttpReply.h ...Ok. Testing ../../src/HttpRequest.h ...Ok. Testing ../../src/HttpRequestMethod.h ...Ok. Testing ../../src/HttpStatusCode.h ...Ok. Testing ../../src/HttpStatusLine.h ...Ok. Testing ../../src/HttpVersion.h ...Ok. Testing ../../src/ICP.h ...Ok. Testing ../../src/icp_opcode.h ...Ok. Testing ../../src/ipcache.h ...Ok. Testing ../../src/LeakFinder.h ...Ok. Testing ../../src/LoadableModule.h ...Ok. Testing ../../src/LoadableModules.h ...Ok. Testing ../../src/lookup_t.h ...Ok. Testing ../../src/MemBlob.h ...Ok. Testing ../../src/MemBuf.h ...Ok. Testing ../../src/Mem.h ...Ok. Testing ../../src/mem_node.h ...Ok. Testing ../../src/MemObject.h ...Ok. Testing ../../src/MemStore.h ...Ok. Testing ../../src/NullDelayId.h ...Ok. Testing ../../src/Packer.h ...Ok. Testing ../../src/Parsing.h ...Ok. Testing ../../src/pconn.h ...Ok. Testing ../../src/PeerDigest.h ...Ok. Testing ../../src/PeerSelectState.h ...Ok. Testing ../../src/PingData.h ...Ok. Testing ../../src/protos.h ...Ok. Testing ../../src/RemovalPolicy.h ...Ok. Testing ../../src/Server.h ...Ok. Testing ../../src/snmp_core.h ...Ok. Testing ../../src/SquidDns.h ...Ok. Testing ../../src/SquidMath.h ...Ok. Testing ../../src/squid-old.h ...Ok. Testing ../../src/SquidString.h ...Ok. Testing ../../src/SquidTime.h ...Ok. Testing ../../src/StatCounters.h ...Ok. Testing ../../src/StatHist.h ...Ok. Testing ../../src/stmem.h ...Ok. Testing ../../src/StoreClient.h ...Ok. Testing ../../src/StoreEntryStream.h ...Ok. Testing ../../src/StoreFileSystem.h ...Ok. Testing ../../src/Store.h ...Ok. Testing ../../src/StoreHashIndex.h ...Ok. Testing ../../src/StoreIOBuffer.h ...Ok. Testing ../../src/StoreIOState.h ...Ok. Testing ../../src/StoreMeta.h ...Ok. Testing ../../src/StoreMetaMD5.h ...Ok. Testing ../../src/StoreMetaObjSize.h ...Ok. Testing ../../src/StoreMetaSTD.h ...Ok. Testing ../../src/StoreMetaSTDLFS.h ...Ok. Testing ../../src/StoreMetaUnpacker.h ...Ok. Testing ../../src/StoreMetaURL.h ...Ok. Testing ../../src/StoreMetaVary.h ...Ok. Testing ../../src/StoreSearch.h ...Ok. Testing ../../src/StoreStats.h ...Ok. Testing ../../src/StoreSwapLogData.h ...Ok. Testing ../../src/structs.h ...Ok. Testing ../../src/SwapDir.h ...Ok. Testing ../../src/swap_log_op.h ...Ok. Testing ../../src/TimeOrTag.h ...Ok. Testing ../../src/typedefs.h ...Ok. Testing ../../src/URL.h ...Ok. Testing ../../src/URLScheme.h ...Ok. Testing ../../src/wordlist.h ...Ok. Testing ../../src/DiskIO/DiskFile.h ...Ok. Testing ../../src/DiskIO/DiskIOModule.h ...Ok. Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok. Testing ../../src/DiskIO/IORequestor.h ...Ok. Testing ../../src/DiskIO/ReadRequest.h ...Ok. Testing ../../src/DiskIO/WriteRequest.h ...Ok. Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok. Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok. Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok. Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok. Testing ../../src/DiskIO/AIO/async_io.h ...Ok. Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok. Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok. Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok. Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok. Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok. Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok. Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok. Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok. Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok. Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok. Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok. Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok. Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok. Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok. Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok. Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok. Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok. Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok. Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok. .. OK (2) PASS: tests/testACLMaxUserIP . OK (1) PASS: tests/testBoilerplate .. OK (2) PASS: tests/testCacheManager . OK (1) PASS: tests/testDiskIO ..Actual Text: Last event to run: last event Operation \tNext Execution \tWeight\tCallback Valid? test event \t0.000 sec\t 0\t N/A test event2 \t0.000 sec\t 0\t N/A .... OK (6) PASS: tests/testEvent ... OK (3) PASS: tests/testEventLoop PASS: tests/test_http_range ..... OK (5) PASS: tests/testHttpParser . OK (1) PASS: tests/testHttpReply ............. OK (13) PASS: tests/testHttpRequest SKIP: cache_cf.cc operator void* (not implemented). ........... OK (11) PASS: tests/testStore .... OK (4) PASS: tests/testString stub time| persistent connection module initialized .......... OK (10) PASS: tests/testURL . OK (1) PASS: tests/testConfigParser ... OK (3) PASS: tests/testStatHist tools.cc UsingSnmp() Not implemented tools.cc InDaemonMode() Not implemented tools.cc UsingSnmp() Not implemented tools.cc InDaemonMode() Not implemented SKIP: cache_cf.cc operator void* (not implemented). tools.cc UsingSnmp() Not implemented tools.cc InDaemonMode() Not implemented tools.cc UsingSnmp() Not implemented tools.cc InDaemonMode() Not implemented tools.cc InDaemonMode() Not implemented tools.cc InDaemonMode() Not implemented tools.cc InDaemonMode() Not implemented tools.cc InDaemonMode() Not implemented tools.cc InDaemonMode() Not implemented ..F testRock.cc:249:Assertion Test name: testRock::testRockSwapOut assertion failed - Expression: pe->swap_status == SWAPOUT_WRITING Failures !!! Run: 2 Failure total: 1 Failures: 1 Errors: 0 FAIL: tests/testRock SKIP: cache_cf.cc operator void* (not implemented). .. OK (2) PASS: tests/testUfs PASS: testHeaders ================================================= 1 of 18 tests failed Please report to http://www.squid-cache.org/bugs/ ================================================= make[5]: *** [check-TESTS] Error 1 make[5]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src'> make[4]: *** [check-am] Error 2 make[4]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src'> make[3]: *** [check-recursive] Error 1 make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src'> make[2]: *** [check] Error 2 make[2]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src'> make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-CentOS-5.3/ws/btlayer-00-default/squid-3.HEAD-BZR/_build'> make: *** [distcheck] Error 2 buildtest.sh result is 2 BUILD: .././test-suite/buildtests/layer-00-default.opts configure: BUILD LIBRARIES: configure: BUILD EXTRA LIBRARIES: -lm -lnsl -lresolv -lrt -ldl -ldl configure: BUILD OBJECTS: configure: BUILD EXTRA OBJECTS: configure: BUILD C FLAGS: -Wall -g -O2 configure: BUILD EXTRA C FLAGS: -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wcomments -Werror -pipe -D_REENTRANT configure: BUILD C++ FLAGS: -g -O2 configure: BUILD EXTRA C++ FLAGS: -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Werror -pipe -D_REENTRANT configure: BUILD LIBRARIES: configure: BUILD EXTRA LIBRARIES: -lm -lnsl -lresolv -lrt -ldl -ldl configure: BUILD OBJECTS: configure: BUILD EXTRA OBJECTS: configure: BUILD C FLAGS: -Wall -g -O2 configure: BUILD EXTRA C FLAGS: -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wcomments -Werror -pipe -D_REENTRANT configure: BUILD C++ FLAGS: -g -O2 configure: BUILD EXTRA C++ FLAGS: -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Werror -pipe -D_REENTRANT assertion failed FAIL: tests/testRock make[5]: *** [check-TESTS] Error 1 make[4]: *** [check-am] Error 2 make[3]: *** [check-recursive] Error 1 make[2]: *** [check] Error 2 make[1]: *** [check-recursive] Error 1 make: *** [distcheck] Error 2 Build FAILED. Build step 'Execute shell' marked build as failure
