You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2015/05/18 22:29:41 UTC

svn commit: r1680088 - /accumulo/site/trunk/content/release_notes/1.7.0.mdtext

Author: elserj
Date: Mon May 18 20:29:41 2015
New Revision: 1680088

URL: http://svn.apache.org/r1680088
Log:
ACCUMULO-3737 Add in some bug fixes

Modified:
    accumulo/site/trunk/content/release_notes/1.7.0.mdtext

Modified: accumulo/site/trunk/content/release_notes/1.7.0.mdtext
URL: http://svn.apache.org/viewvc/accumulo/site/trunk/content/release_notes/1.7.0.mdtext?rev=1680088&r1=1680087&r2=1680088&view=diff
==============================================================================
--- accumulo/site/trunk/content/release_notes/1.7.0.mdtext (original)
+++ accumulo/site/trunk/content/release_notes/1.7.0.mdtext Mon May 18 20:29:41 2015
@@ -151,19 +151,36 @@ https://issues.apache.org/jira/browse/AC
 
 ## Notable Bug Fixes
 
-### Bug Fix 1
+### SourceSwitchingIterator Deadlock
 
-Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
-Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
- dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
- non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
-
-### Bug Fix 2
+An instance of SourceSwitchingIterator, the Accumulo iterator which transparently
+manages whether data for a Tablet is in memory (the in-memory map) or disk (HDFS 
+after a minor compaction), was found deadlocked in a production system.
+
+This deadlock prevented the scan and the minor compaction from ever successfully
+completing without restarting the TabletServer. [ACCUMULO-3745][ACCUMULO-3745]
+fixes the inconsistent synchronization inside of the SourceSwitchingIterator
+to prevent this deadlock from happening in the future.
+
+
+### Table flush blocked indefinitely
+
+While running the Accumulo Randomwalk distributed test, it was observed
+that all activity in Accumulo had stopped and there was an offline
+Accumulo metadata table tablet. The system first tried to flush a user
+tablet but the metadata table was not online (likely due to the agitation
+process which stops and starts Accumulo processes during the test). After
+this call, a call to load the metadata tablet was queued but could not 
+complete until the previous flush call. Thus, a deadlock occurred.
+
+This deadlock happened because the synchronous flush call could not complete
+before the load tablet call completed, but the load tablet call couldn't
+run because of connection caching we perform in Accumulo's RPC layer
+to reduce the quantity of sockets we need to create to send data. 
+[ACCUMULO-3597][ACCUMULO-3597] prevents this dealock by forcing a
+non-cached connection for the message requesting loads of metadata tablets,
+we can ensure that this deadlock won't occur.
 
-Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
-Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
- dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
- non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
 
 ## Performance Improvements
 
@@ -258,7 +275,9 @@ and, in HDFS High-Availability instances
 [ACCUMULO-2815]: https://issues.apache.org/jira/browse/ACCUMULO-2815
 [ACCUMULO-3134]: https://issues.apache.org/jira/browse/ACCUMULO-3134
 [ACCUMULO-3439]: https://issues.apache.org/jira/browse/ACCUMULO-3439
+[ACCUMULO-3597]: https://issues.apache.org/jira/browse/ACCUMULO-3597
 [ACCUMULO-3657]: https://issues.apache.org/jira/browse/ACCUMULO-3657
+[ACCUMULO-3745]: https://issues.apache.org/jira/browse/ACCUMULO-3745
 [ACCUMULO-378]: https://issues.apache.org/jira/browse/ACCUMULO-378
 [apilyzer]: http://code.revelc.net/apilyzer-maven-plugin/
 [group_balancer]: https://blogs.apache.org/accumulo/entry/balancing_groups_of_tablets