{"shas":[["45ac6e4660a1489d1e56cfed1c06b5f987cdf47b","98cea3c3b3df59d0f63c136e44b3a8464d02d6d2@hibernate.org","ISPN-1373 - Initialization of extensions (module properties) is unguarded","Sanne Grinovero"],["657d31e66605ade624e3532a697c739ec776e1da","eef68e5ee251468ec8f005ad2290d5037e32afd1@gmail.com","removed double spaces in logging to streamline with AS7 logging a little","Radoslav Husar"],["4ba0b88639b548f20de4f8cc1aed204445139259","a2df1e659c9fd2578de0a26565357cb273292eeb@linhard.sk","fixed typo in trace log message: \"stop method\" -> \"start method\"","Michal Linhard"],["4d69eb7b56bc0052bc04854dbc59c77518ee24ad","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1123 - Some tests were creating a non-default cache but then they were waiting for the default cache to finish rehashing.","Dan Berindei"],["7b2b5bce5b7d5c167a7f09fdbd1755582edf543c","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1123 - Fixed some more mismatched test names\n\nFixed mismatchedTestNames.sh script.","Dan Berindei"],["208f6a7c0dcbde8b356b9ff96319714086a6f23f","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1106 - Log more information about locks and rehashing\n\n* In LockManagerImpl log the other keys owned by the current transaction.\n* In DefaultCacheManager push the cache name to the NDC during cache startup.\n* Improved toString() for RehashControlCommand and DistributedExecuteCommand.\n* In InboundInvocationHandler log the cache name.\n* Log cache start/stop.\n* Log the read lock owners in JGroupsDistSync.","Dan Berindei"],["46682b954fca36038f2576dd9b5a09b17c6b649d","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1106 - Fixed an error in the LockControlCommand constructor.","Dan Berindei"],["3f9dacfbffbf15b2f330d31948f41d68e8ddcb23","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1106 - Separated the rehash completion into two phases so RebalanceTask can invalidate the keys after rehashing is done but before the cache listeners (e.g. KeyAffinityService) know it.","Dan Berindei"],["7e697318359ced57af054c70532960f2a3ddd01f","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1106 - Moved the lock cleanup back from the DataRehashed event to the TopologyChanged event.","Dan Berindei"],["6ed94d3b2e184d4a48d4e781db8d404baf5915a3","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1255 - Ongoing transactions waiting on locks are blocking the rehash from finishing\n\nThe generic scenario involves multiple caches.\nSay we have transactions Tx1 and Tx2 spanning caches C1 and C2.\nA new node joins the cluster, starting C1 and C2.\nWith the following sequence of events rehashing will be blocked for lockAcquisitionTimeout.\n\n1. Tx1 prepares on C1 locking K1\n2. Tx2 wants to prepare on C2, Tx2 gets the tx lock\n3. Tx2 now waits to lock K1 while holding the tx lock on C2\n4. Rehash starts on C2 but it can't proceed because Tx2 has the tx lock\n5. Tx1 now wants to prepare on C2, but can't acquire the tx lock\n\nI've implemented a crude \"deadlock detection\" scheme: a new tx will wait\nthe full lockAcquisitionTimeout for the tx lock, but a tx that already\nhas locks acquired will only wait 1/100 of that. So if there is a cycle\nit will break much quicker and allow rehashing to proceed.\n\nThere is also a simpler variant where the transactions work with a single cache.\nIn that case if the remote command can't acquire the tx lock with 0 timeout it knows\nthat it has the tx lock on the origin node and it's in a deadlock situation.","Dan Berindei"],["548fa6212d2b64c4925ac584acf5d4b87322c3b2","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1106 - Allow the users to start multiple caches at once\n\nThis is no longer strictly necessary for ISPN-1106, as we are waiting\nwith a shorter timeout on transactions with locks and so the rehash\ndoes not block for a very long period of time.\n\nIt is recommended however to start all caches on application startup,\nand this method provides an easy way for users to start all their caches.","Dan Berindei"],["ee0ea592f7deb49d23ac7afee58be81a633ba4b8","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1375 - A transaction thread can fail to acquire the transaction logger lock even if the latch was open\n\nSometimes the rehasher can acquire the write lock after a transaction thread has called latch.await() but before readLock.lock(). If that happens we need to retry the lock acquisition in the transaction thread.","Dan Berindei"],["07746c947689461209d929c67864e9ce9278148c","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1343 - The retry queue processor was not waiting for the cache to start properly\n\nThis allowed an inbound command to start before the initial rehash even started.","Dan Berindei"],["bef259fad4e78db892c545d4ed84aaee469ef023","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1343 - Fixed the check if the previous rehash unblocked transactions or not","Dan Berindei"],["b9fb4dc2c3186fc21de48c2181058c12ed9b0630","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1123 - Log exceptions in tests before the @After methods that do the cleanup.","Dan Berindei"],["f0a6969d3cb17d7eb9ffff2644349c6a6ec004a4","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1343 - Stop waiting for a cache to start up in InboundInvocationHandlerImpl if the entire cache manager is stopping","Dan Berindei"],["ecc11fcc86d27a35193d16e4d6e5103f96fb7f96","44ecad630ea92e38dea1ca86008238d788947997@redhat","ISPN-1343 - Don't send the commit command to all members that received the prepare command, since they could have already left the cluster.\n\nJGroups will wait for the response message until the timeout replication expires, while holding the locks for the modified keys. So other transactions could time out waiting for our locks.","Dan Berindei"]],"ref":"refs/heads/5.0.x","size":17,"head":"ecc11fcc86d27a35193d16e4d6e5103f96fb7f96","push_id":42175342}