summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikolaus Rath <Nikolaus@rath.org>2016-03-09 10:08:28 -0800
committerNikolaus Rath <Nikolaus@rath.org>2016-03-09 10:08:28 -0800
commit811b4c327398abfd460754079b2f98897b44dd1f (patch)
treedb4ffa8eec0f4881e3d27b3941414b1bd99e2cc3
parent8637d44c9ca3652c30895bf010acbd57ce6d451b (diff)
Import s3ql_1.5.orig.tar.bz2
-rw-r--r--Changes.txt12
-rw-r--r--PKG-INFO2
-rw-r--r--contrib/expire_backups.12
-rwxr-xr-xcontrib/expire_backups.py9
-rw-r--r--contrib/pcp.12
-rw-r--r--doc/html/.buildinfo2
-rw-r--r--doc/html/_static/jquery.js393
-rw-r--r--doc/html/about.html10
-rw-r--r--doc/html/adm.html10
-rw-r--r--doc/html/backends.html10
-rw-r--r--doc/html/contrib.html10
-rw-r--r--doc/html/fsck.html10
-rw-r--r--doc/html/general.html10
-rw-r--r--doc/html/index.html10
-rw-r--r--doc/html/installation.html10
-rw-r--r--doc/html/issues.html10
-rw-r--r--doc/html/man/adm.html10
-rw-r--r--doc/html/man/cp.html10
-rw-r--r--doc/html/man/ctrl.html10
-rw-r--r--doc/html/man/expire_backups.html10
-rw-r--r--doc/html/man/fsck.html10
-rw-r--r--doc/html/man/index.html10
-rw-r--r--doc/html/man/lock.html10
-rw-r--r--doc/html/man/mkfs.html10
-rw-r--r--doc/html/man/mount.html10
-rw-r--r--doc/html/man/pcp.html10
-rw-r--r--doc/html/man/rm.html10
-rw-r--r--doc/html/man/stat.html10
-rw-r--r--doc/html/man/umount.html10
-rw-r--r--doc/html/mkfs.html10
-rw-r--r--doc/html/mount.html10
-rw-r--r--doc/html/objects.inv2
-rw-r--r--doc/html/resources.html10
-rw-r--r--doc/html/search.html10
-rw-r--r--doc/html/searchindex.js2
-rw-r--r--doc/html/special.html10
-rw-r--r--doc/html/tips.html10
-rw-r--r--doc/html/umount.html10
-rw-r--r--doc/latex/manual.log4
-rw-r--r--doc/latex/manual.tex4
-rw-r--r--doc/man/fsck.s3ql.12
-rw-r--r--doc/man/mkfs.s3ql.12
-rw-r--r--doc/man/mount.s3ql.12
-rw-r--r--doc/man/s3qladm.12
-rw-r--r--doc/man/s3qlcp.12
-rw-r--r--doc/man/s3qlctrl.12
-rw-r--r--doc/man/s3qllock.12
-rw-r--r--doc/man/s3qlrm.12
-rw-r--r--doc/man/s3qlstat.12
-rw-r--r--doc/man/umount.s3ql.12
-rw-r--r--doc/manual.pdfbin286943 -> 286997 bytes
-rw-r--r--src/s3ql.egg-info/PKG-INFO2
-rw-r--r--src/s3ql/__init__.py2
-rw-r--r--src/s3ql/backends/common.py4
-rw-r--r--src/s3ql/backends/s3.py6
-rw-r--r--src/s3ql/block_cache.py2
-rw-r--r--src/s3ql/cli/mount.py45
-rw-r--r--src/s3ql/fs.py5
-rw-r--r--src/s3ql/parse_args.py15
59 files changed, 455 insertions, 370 deletions
diff --git a/Changes.txt b/Changes.txt
index 064c5c0..e2b961a 100644
--- a/Changes.txt
+++ b/Changes.txt
@@ -1,3 +1,15 @@
+2011-10-20, S3QL 1.5
+
+ * Fixed parsing of storage urls, s3s:// no longer generates bogus
+ error message.
+
+ * Fixed support for prefix in storage urls.
+
+ * Retry on timeout when transmitting data to remote server.
+
+ * Do not free mount point when terminating due to unhandled
+ exception in background thread.
+
2011-10-06, S3QL 1.4
* Metadata is now always LZMA compressed, mount.s3ql's --compress
diff --git a/PKG-INFO b/PKG-INFO
index 82ca15c..4344ad8 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: s3ql
-Version: 1.4
+Version: 1.5
Summary: a full-featured file system for online data storage
Home-page: http://code.google.com/p/s3ql/
Author: Nikolaus Rath
diff --git a/contrib/expire_backups.1 b/contrib/expire_backups.1
index c946732..e70c3bb 100644
--- a/contrib/expire_backups.1
+++ b/contrib/expire_backups.1
@@ -1,4 +1,4 @@
-.TH "EXPIRE_BACKUPS" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "EXPIRE_BACKUPS" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
expire_backups \- Intelligently expire old backups
.
diff --git a/contrib/expire_backups.py b/contrib/expire_backups.py
index 20b78a7..7a49d9b 100755
--- a/contrib/expire_backups.py
+++ b/contrib/expire_backups.py
@@ -97,9 +97,12 @@ def main(args=None):
if not os.path.exists(options.state) and len(backup_list) > 1:
if not options.reconstruct_state:
raise QuietError('Found more than one backup but no state file! Aborting.')
- else:
- log.warn('Trying to reconstruct state file..')
- state = upgrade_to_state(backup_list)
+
+ log.warn('Trying to reconstruct state file..')
+ state = upgrade_to_state(backup_list)
+ if not options.n:
+ log.info('Saving reconstructed state..')
+ pickle.dump(state, open(options.state, 'wb'), pickle.HIGHEST_PROTOCOL)
elif not os.path.exists(options.state):
log.warn('Creating state file..')
state = dict()
diff --git a/contrib/pcp.1 b/contrib/pcp.1
index ce65684..1a31857 100644
--- a/contrib/pcp.1
+++ b/contrib/pcp.1
@@ -1,4 +1,4 @@
-.TH "PCP" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "PCP" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
pcp \- Recursive, parallel copy of directory trees
.
diff --git a/doc/html/.buildinfo b/doc/html/.buildinfo
index 1477d1e..a3a4b18 100644
--- a/doc/html/.buildinfo
+++ b/doc/html/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: e865faf28c93004a1127b2fd92570e19
+config: e54f704fa8b866eafa68f0ac31ee012b
tags: fbb0d17656682115ca4d033fb2f83ba1
diff --git a/doc/html/_static/jquery.js b/doc/html/_static/jquery.js
index f3201aa..11e6d06 100644
--- a/doc/html/_static/jquery.js
+++ b/doc/html/_static/jquery.js
@@ -1,5 +1,5 @@
/*!
- * jQuery JavaScript Library v1.6.2
+ * jQuery JavaScript Library v1.6.4
* http://jquery.com/
*
* Copyright 2011, John Resig
@@ -11,7 +11,7 @@
* Copyright 2011, The Dojo Foundation
* Released under the MIT, BSD, and GPL Licenses.
*
- * Date: Thu Jun 30 14:16:56 2011 -0400
+ * Date: Mon Sep 12 18:54:48 2011 -0400
*/
(function( window, undefined ) {
@@ -37,8 +37,8 @@ var jQuery = function( selector, context ) {
rootjQuery,
// A simple way to check for HTML strings or ID strings
- // (both of which we optimize for)
- quickExpr = /^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
+ // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
+ quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
// Check if a string has a non-whitespace character in it
rnotwhite = /\S/,
@@ -66,11 +66,12 @@ var jQuery = function( selector, context ) {
rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,
// Matches dashed string for camelizing
- rdashAlpha = /-([a-z])/ig,
+ rdashAlpha = /-([a-z]|[0-9])/ig,
+ rmsPrefix = /^-ms-/,
// Used by jQuery.camelCase as callback to replace()
fcamelCase = function( all, letter ) {
- return letter.toUpperCase();
+ return ( letter + "" ).toUpperCase();
},
// Keep a UserAgent string for use with jQuery.browser
@@ -212,7 +213,7 @@ jQuery.fn = jQuery.prototype = {
selector: "",
// The current version of jQuery being used
- jquery: "1.6.2",
+ jquery: "1.6.4",
// The default length of a jQuery object is 0
length: 0,
@@ -521,10 +522,15 @@ jQuery.extend({
return false;
}
- // Not own constructor property must be Object
- if ( obj.constructor &&
- !hasOwn.call(obj, "constructor") &&
- !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
+ try {
+ // Not own constructor property must be Object
+ if ( obj.constructor &&
+ !hasOwn.call(obj, "constructor") &&
+ !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
+ return false;
+ }
+ } catch ( e ) {
+ // IE8,9 Will throw exceptions on certain host objects #9897
return false;
}
@@ -574,24 +580,23 @@ jQuery.extend({
},
// Cross-browser xml parsing
- // (xml & tmp used internally)
- parseXML: function( data , xml , tmp ) {
-
- if ( window.DOMParser ) { // Standard
- tmp = new DOMParser();
- xml = tmp.parseFromString( data , "text/xml" );
- } else { // IE
- xml = new ActiveXObject( "Microsoft.XMLDOM" );
- xml.async = "false";
- xml.loadXML( data );
- }
-
- tmp = xml.documentElement;
-
- if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) {
+ parseXML: function( data ) {
+ var xml, tmp;
+ try {
+ if ( window.DOMParser ) { // Standard
+ tmp = new DOMParser();
+ xml = tmp.parseFromString( data , "text/xml" );
+ } else { // IE
+ xml = new ActiveXObject( "Microsoft.XMLDOM" );
+ xml.async = "false";
+ xml.loadXML( data );
+ }
+ } catch( e ) {
+ xml = undefined;
+ }
+ if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) {
jQuery.error( "Invalid XML: " + data );
}
-
return xml;
},
@@ -611,10 +616,10 @@ jQuery.extend({
}
},
- // Converts a dashed string to camelCased string;
- // Used by both the css and data modules
+ // Convert dashed to camelCase; used by the css and data modules
+ // Microsoft forgot to hump their vendor prefix (#9572)
camelCase: function( string ) {
- return string.replace( rdashAlpha, fcamelCase );
+ return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
},
nodeName: function( elem, name ) {
@@ -699,6 +704,9 @@ jQuery.extend({
},
inArray: function( elem, array ) {
+ if ( !array ) {
+ return -1;
+ }
if ( indexOf ) {
return indexOf.call( array, elem );
@@ -1071,7 +1079,7 @@ jQuery.extend({
if ( returned && jQuery.isFunction( returned.promise ) ) {
returned.promise().then( newDefer.resolve, newDefer.reject );
} else {
- newDefer[ action ]( returned );
+ newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] );
}
});
} else {
@@ -1173,6 +1181,7 @@ jQuery.support = (function() {
div.setAttribute("className", "t");
div.innerHTML = " <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
+
all = div.getElementsByTagName( "*" );
a = div.getElementsByTagName( "a" )[ 0 ];
@@ -1293,13 +1302,14 @@ jQuery.support = (function() {
width: 0,
height: 0,
border: 0,
- margin: 0
+ margin: 0,
+ background: "none"
};
if ( body ) {
jQuery.extend( testElementStyle, {
position: "absolute",
- left: -1000,
- top: -1000
+ left: "-1000px",
+ top: "-1000px"
});
}
for ( i in testElementStyle ) {
@@ -1404,7 +1414,7 @@ jQuery.boxModel = jQuery.support.boxModel;
var rbrace = /^(?:\{.*\}|\[.*\])$/,
- rmultiDash = /([a-z])([A-Z])/g;
+ rmultiDash = /([A-Z])/g;
jQuery.extend({
cache: {},
@@ -1436,7 +1446,9 @@ jQuery.extend({
return;
}
- var internalKey = jQuery.expando, getByName = typeof name === "string", thisCache,
+ var thisCache, ret,
+ internalKey = jQuery.expando,
+ getByName = typeof name === "string",
// We have to handle DOM nodes and JS objects differently because IE6-7
// can't GC object references properly across the DOM-JS boundary
@@ -1452,7 +1464,7 @@ jQuery.extend({
// Avoid doing any more work than we need to when trying to get data on an
// object that has no data at all
- if ( (!id || (pvt && id && !cache[ id ][ internalKey ])) && getByName && data === undefined ) {
+ if ( (!id || (pvt && id && (cache[ id ] && !cache[ id ][ internalKey ]))) && getByName && data === undefined ) {
return;
}
@@ -1511,10 +1523,24 @@ jQuery.extend({
return thisCache[ internalKey ] && thisCache[ internalKey ].events;
}
- return getByName ?
- // Check for both converted-to-camel and non-converted data property names
- thisCache[ jQuery.camelCase( name ) ] || thisCache[ name ] :
- thisCache;
+ // Check for both converted-to-camel and non-converted data property names
+ // If a data property was specified
+ if ( getByName ) {
+
+ // First Try to find as-is property data
+ ret = thisCache[ name ];
+
+ // Test for null|undefined property data
+ if ( ret == null ) {
+
+ // Try to find the camelCased property
+ ret = thisCache[ jQuery.camelCase( name ) ];
+ }
+ } else {
+ ret = thisCache;
+ }
+
+ return ret;
},
removeData: function( elem, name, pvt /* Internal Use Only */ ) {
@@ -1522,7 +1548,12 @@ jQuery.extend({
return;
}
- var internalKey = jQuery.expando, isNode = elem.nodeType,
+ var thisCache,
+
+ // Reference to internal data cache key
+ internalKey = jQuery.expando,
+
+ isNode = elem.nodeType,
// See jQuery.data for more information
cache = isNode ? jQuery.cache : elem,
@@ -1537,9 +1568,16 @@ jQuery.extend({
}
if ( name ) {
- var thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ];
+
+ thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ];
if ( thisCache ) {
+
+ // Support interoperable removal of hyphenated or camelcased keys
+ if ( !thisCache[ name ] ) {
+ name = jQuery.camelCase( name );
+ }
+
delete thisCache[ name ];
// If there is no data left in the cache, we want to continue
@@ -1566,7 +1604,8 @@ jQuery.extend({
// Browsers that fail expando deletion also refuse to delete expandos on
// the window, but it will allow it on all other JS objects; other browsers
// don't care
- if ( jQuery.support.deleteExpando || cache != window ) {
+ // Ensure that `cache` is not a window object #10080
+ if ( jQuery.support.deleteExpando || !cache.setInterval ) {
delete cache[ id ];
} else {
cache[ id ] = null;
@@ -1690,7 +1729,8 @@ function dataAttr( elem, key, data ) {
// If nothing was found internally, try to fetch any
// data from the HTML5 data-* attribute
if ( data === undefined && elem.nodeType === 1 ) {
- var name = "data-" + key.replace( rmultiDash, "$1-$2" ).toLowerCase();
+
+ var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
data = elem.getAttribute( name );
@@ -1910,8 +1950,7 @@ var rclass = /[\n\t\r]/g,
rfocusable = /^(?:button|input|object|select|textarea)$/i,
rclickable = /^a(?:rea)?$/i,
rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
- rinvalidChar = /\:|^on/,
- formHook, boolHook;
+ nodeHook, boolHook;
jQuery.fn.extend({
attr: function( name, value ) {
@@ -2049,7 +2088,7 @@ jQuery.fn.extend({
hasClass: function( selector ) {
var className = " " + selector + " ";
for ( var i = 0, l = this.length; i < l; i++ ) {
- if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
+ if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
return true;
}
}
@@ -2229,14 +2268,11 @@ jQuery.extend({
if ( !hooks ) {
// Use boolHook for boolean attributes
if ( rboolean.test( name ) ) {
-
hooks = boolHook;
- // Use formHook for forms and if the name contains certain characters
- } else if ( formHook && name !== "className" &&
- (jQuery.nodeName( elem, "form" ) || rinvalidChar.test( name )) ) {
-
- hooks = formHook;
+ // Use nodeHook if available( IE6/7 )
+ } else if ( nodeHook ) {
+ hooks = nodeHook;
}
}
}
@@ -2273,14 +2309,9 @@ jQuery.extend({
var propName;
if ( elem.nodeType === 1 ) {
name = jQuery.attrFix[ name ] || name;
-
- if ( jQuery.support.getSetAttribute ) {
- // Use removeAttribute in browsers that support it
- elem.removeAttribute( name );
- } else {
- jQuery.attr( elem, name, "" );
- elem.removeAttributeNode( elem.getAttributeNode( name ) );
- }
+
+ jQuery.attr( elem, name, "" );
+ elem.removeAttribute( name );
// Set corresponding property to false for boolean attributes
if ( rboolean.test( name ) && (propName = jQuery.propFix[ name ] || name) in elem ) {
@@ -2308,33 +2339,20 @@ jQuery.extend({
}
}
},
- tabIndex: {
- get: function( elem ) {
- // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
- // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
- var attributeNode = elem.getAttributeNode("tabIndex");
-
- return attributeNode && attributeNode.specified ?
- parseInt( attributeNode.value, 10 ) :
- rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
- 0 :
- undefined;
- }
- },
// Use the value property for back compat
- // Use the formHook for button elements in IE6/7 (#1954)
+ // Use the nodeHook for button elements in IE6/7 (#1954)
value: {
get: function( elem, name ) {
- if ( formHook && jQuery.nodeName( elem, "button" ) ) {
- return formHook.get( elem, name );
+ if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
+ return nodeHook.get( elem, name );
}
return name in elem ?
elem.value :
null;
},
set: function( elem, value, name ) {
- if ( formHook && jQuery.nodeName( elem, "button" ) ) {
- return formHook.set( elem, value, name );
+ if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
+ return nodeHook.set( elem, value, name );
}
// Does not return so that setAttribute is also used
elem.value = value;
@@ -2383,7 +2401,7 @@ jQuery.extend({
}
} else {
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== undefined ) {
+ if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
return ret;
} else {
@@ -2392,14 +2410,33 @@ jQuery.extend({
}
},
- propHooks: {}
+ propHooks: {
+ tabIndex: {
+ get: function( elem ) {
+ // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
+ // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
+ var attributeNode = elem.getAttributeNode("tabindex");
+
+ return attributeNode && attributeNode.specified ?
+ parseInt( attributeNode.value, 10 ) :
+ rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
+ 0 :
+ undefined;
+ }
+ }
+ }
});
+// Add the tabindex propHook to attrHooks for back-compat
+jQuery.attrHooks.tabIndex = jQuery.propHooks.tabIndex;
+
// Hook for boolean attributes
boolHook = {
get: function( elem, name ) {
// Align boolean attributes with corresponding properties
- return jQuery.prop( elem, name ) ?
+ // Fall back to attribute presence where some booleans are not supported
+ var attrNode;
+ return jQuery.prop( elem, name ) === true || ( attrNode = elem.getAttributeNode( name ) ) && attrNode.nodeValue !== false ?
name.toLowerCase() :
undefined;
},
@@ -2425,12 +2462,10 @@ boolHook = {
// IE6/7 do not support getting/setting some attributes with get/setAttribute
if ( !jQuery.support.getSetAttribute ) {
-
- // propFix is more comprehensive and contains all fixes
- jQuery.attrFix = jQuery.propFix;
- // Use this for any attribute on a form in IE6/7
- formHook = jQuery.attrHooks.name = jQuery.attrHooks.title = jQuery.valHooks.button = {
+ // Use this for any attribute in IE6/7
+ // This fixes almost every IE6/7 issue
+ nodeHook = jQuery.valHooks.button = {
get: function( elem, name ) {
var ret;
ret = elem.getAttributeNode( name );
@@ -2440,13 +2475,13 @@ if ( !jQuery.support.getSetAttribute ) {
undefined;
},
set: function( elem, value, name ) {
- // Check form objects in IE (multiple bugs related)
- // Only use nodeValue if the attribute node exists on the form
+ // Set the existing or create a new attribute node
var ret = elem.getAttributeNode( name );
- if ( ret ) {
- ret.nodeValue = value;
- return value;
+ if ( !ret ) {
+ ret = document.createAttribute( name );
+ elem.setAttributeNode( ret );
}
+ return (ret.nodeValue = value + "");
}
};
@@ -2505,6 +2540,7 @@ if ( !jQuery.support.optSelected ) {
parent.parentNode.selectedIndex;
}
}
+ return null;
}
});
}
@@ -3235,8 +3271,9 @@ if ( !jQuery.support.submitBubbles ) {
setup: function( data, namespaces ) {
if ( !jQuery.nodeName( this, "form" ) ) {
jQuery.event.add(this, "click.specialSubmit", function( e ) {
+ // Avoid triggering error on non-existent type attribute in IE VML (#7071)
var elem = e.target,
- type = elem.type;
+ type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : "";
if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) {
trigger( "submit", this, arguments );
@@ -3245,7 +3282,7 @@ if ( !jQuery.support.submitBubbles ) {
jQuery.event.add(this, "keypress.specialSubmit", function( e ) {
var elem = e.target,
- type = elem.type;
+ type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : "";
if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) {
trigger( "submit", this, arguments );
@@ -3270,7 +3307,8 @@ if ( !jQuery.support.changeBubbles ) {
var changeFilters,
getVal = function( elem ) {
- var type = elem.type, val = elem.value;
+ var type = jQuery.nodeName( elem, "input" ) ? elem.type : "",
+ val = elem.value;
if ( type === "radio" || type === "checkbox" ) {
val = elem.checked;
@@ -5295,12 +5333,17 @@ jQuery.fn.extend({
// Determine the position of an element within
// the matched set of elements
index: function( elem ) {
- if ( !elem || typeof elem === "string" ) {
- return jQuery.inArray( this[0],
- // If it receives a string, the selector is used
- // If it receives nothing, the siblings are used
- elem ? jQuery( elem ) : this.parent().children() );
+
+ // No argument, return index in parent
+ if ( !elem ) {
+ return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1;
}
+
+ // index in selector
+ if ( typeof elem === "string" ) {
+ return jQuery.inArray( this[0], jQuery( elem ) );
+ }
+
// Locate the position of the desired element
return jQuery.inArray(
// If it receives a jQuery object, the first element is used
@@ -6048,7 +6091,10 @@ jQuery.extend({
// with an element if you are cloning the body and one of the
// elements on the page has a name or id of "length"
for ( i = 0; srcElements[i]; ++i ) {
- cloneFixAttributes( srcElements[i], destElements[i] );
+ // Ensure that the destination node is not null; Fixes #9587
+ if ( destElements[i] ) {
+ cloneFixAttributes( srcElements[i], destElements[i] );
+ }
}
}
@@ -6248,14 +6294,14 @@ function evalScript( i, elem ) {
+
var ralpha = /alpha\([^)]*\)/i,
ropacity = /opacity=([^)]*)/,
// fixed for IE9, see #8346
rupper = /([A-Z]|^ms)/g,
rnumpx = /^-?\d+(?:px)?$/i,
rnum = /^-?\d/,
- rrelNum = /^[+\-]=/,
- rrelNumFilter = /[^+\-\.\de]+/g,
+ rrelNum = /^([\-+])=([\-+.\de]+)/,
cssShow = { position: "absolute", visibility: "hidden", display: "block" },
cssWidth = [ "Left", "Right" ],
@@ -6332,18 +6378,18 @@ jQuery.extend({
if ( value !== undefined ) {
type = typeof value;
- // Make sure that NaN and null values aren't set. See: #7116
- if ( type === "number" && isNaN( value ) || value == null ) {
- return;
- }
-
// convert relative number strings (+= or -=) to relative numbers. #7345
- if ( type === "string" && rrelNum.test( value ) ) {
- value = +value.replace( rrelNumFilter, "" ) + parseFloat( jQuery.css( elem, name ) );
+ if ( type === "string" && (ret = rrelNum.exec( value )) ) {
+ value = ( +( ret[1] + 1) * +ret[2] ) + parseFloat( jQuery.css( elem, name ) );
// Fixes bug #9237
type = "number";
}
+ // Make sure that NaN and null values aren't set. See: #7116
+ if ( value == null || type === "number" && isNaN( value ) ) {
+ return;
+ }
+
// If a number was passed in, add 'px' to the (except for certain CSS properties)
if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
value += "px";
@@ -6459,18 +6505,29 @@ if ( !jQuery.support.opacity ) {
set: function( elem, value ) {
var style = elem.style,
- currentStyle = elem.currentStyle;
+ currentStyle = elem.currentStyle,
+ opacity = jQuery.isNaN( value ) ? "" : "alpha(opacity=" + value * 100 + ")",
+ filter = currentStyle && currentStyle.filter || style.filter || "";
// IE has trouble with opacity if it does not have layout
// Force it by setting the zoom level
style.zoom = 1;
- // Set the alpha filter to set the opacity
- var opacity = jQuery.isNaN( value ) ?
- "" :
- "alpha(opacity=" + value * 100 + ")",
- filter = currentStyle && currentStyle.filter || style.filter || "";
+ // if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652
+ if ( value >= 1 && jQuery.trim( filter.replace( ralpha, "" ) ) === "" ) {
+
+ // Setting style.filter to null, "" & " " still leave "filter:" in the cssText
+ // if "filter:" is present at all, clearType is disabled, we want to avoid this
+ // style.removeAttribute is IE Only, but so apparently is this code path...
+ style.removeAttribute( "filter" );
+ // if there there is no filter style applied in a css rule, we are done
+ if ( currentStyle && !currentStyle.filter ) {
+ return;
+ }
+ }
+
+ // otherwise, set new filter values
style.filter = ralpha.test( filter ) ?
filter.replace( ralpha, opacity ) :
filter + " " + opacity;
@@ -6625,9 +6682,9 @@ var r20 = /%20/g,
rCRLF = /\r?\n/g,
rhash = /#.*$/,
rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL
- rinput = /^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
+ rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
// #7653, #8125, #8152: local protocol detection
- rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|widget):$/,
+ rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
rnoContent = /^(?:GET|HEAD)$/,
rprotocol = /^\/\//,
rquery = /\?/,
@@ -6662,7 +6719,10 @@ var r20 = /%20/g,
ajaxLocation,
// Document location segments
- ajaxLocParts;
+ ajaxLocParts,
+
+ // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
+ allTypes = ["*/"] + ["*"];
// #8138, IE may throw an exception when accessing
// a field from window.location if document.domain has been set
@@ -6755,6 +6815,22 @@ function inspectPrefiltersOrTransports( structure, options, originalOptions, jqX
return selection;
}
+// A special extend for ajax options
+// that takes "flat" options (not to be deep extended)
+// Fixes #9887
+function ajaxExtend( target, src ) {
+ var key, deep,
+ flatOptions = jQuery.ajaxSettings.flatOptions || {};
+ for( key in src ) {
+ if ( src[ key ] !== undefined ) {
+ ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
+ }
+ }
+ if ( deep ) {
+ jQuery.extend( true, target, deep );
+ }
+}
+
jQuery.fn.extend({
load: function( url, params, callback ) {
if ( typeof url !== "string" && _load ) {
@@ -6898,23 +6974,16 @@ jQuery.extend({
// Creates a full fledged settings object into target
// with both ajaxSettings and settings fields.
// If target is omitted, writes into ajaxSettings.
- ajaxSetup: function ( target, settings ) {
- if ( !settings ) {
- // Only one parameter, we extend ajaxSettings
- settings = target;
- target = jQuery.extend( true, jQuery.ajaxSettings, settings );
+ ajaxSetup: function( target, settings ) {
+ if ( settings ) {
+ // Building a settings object
+ ajaxExtend( target, jQuery.ajaxSettings );
} else {
- // target was provided, we extend into it
- jQuery.extend( true, target, jQuery.ajaxSettings, settings );
- }
- // Flatten fields we don't want deep extended
- for( var field in { context: 1, url: 1 } ) {
- if ( field in settings ) {
- target[ field ] = settings[ field ];
- } else if( field in jQuery.ajaxSettings ) {
- target[ field ] = jQuery.ajaxSettings[ field ];
- }
+ // Extending ajaxSettings
+ settings = target;
+ target = jQuery.ajaxSettings;
}
+ ajaxExtend( target, settings );
return target;
},
@@ -6942,7 +7011,7 @@ jQuery.extend({
html: "text/html",
text: "text/plain",
json: "application/json, text/javascript",
- "*": "*/*"
+ "*": allTypes
},
contents: {
@@ -6972,6 +7041,15 @@ jQuery.extend({
// Parse text as xml
"text xml": jQuery.parseXML
+ },
+
+ // For options that shouldn't be deep extended:
+ // you can add your own custom options here if
+ // and when you create one that shouldn't be
+ // deep extended (see ajaxExtend)
+ flatOptions: {
+ context: true,
+ url: true
}
},
@@ -7082,7 +7160,7 @@ jQuery.extend({
// Callback for when everything is done
// It is defined here because jslint complains if it is declared
// at the end of the function (which would be more logical and readable)
- function done( status, statusText, responses, headers ) {
+ function done( status, nativeStatusText, responses, headers ) {
// Called once
if ( state === 2 ) {
@@ -7105,11 +7183,12 @@ jQuery.extend({
responseHeadersString = headers || "";
// Set readyState
- jqXHR.readyState = status ? 4 : 0;
+ jqXHR.readyState = status > 0 ? 4 : 0;
var isSuccess,
success,
error,
+ statusText = nativeStatusText,
response = responses ? ajaxHandleResponses( s, jqXHR, responses ) : undefined,
lastModified,
etag;
@@ -7161,7 +7240,7 @@ jQuery.extend({
// Set data for the fake xhr object
jqXHR.status = status;
- jqXHR.statusText = statusText;
+ jqXHR.statusText = "" + ( nativeStatusText || statusText );
// Success/Error
if ( isSuccess ) {
@@ -7183,7 +7262,7 @@ jQuery.extend({
completeDeferred.resolveWith( callbackContext, [ jqXHR, statusText ] );
if ( fireGlobals ) {
- globalEventContext.trigger( "ajaxComplete", [ jqXHR, s] );
+ globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
// Handle the global AJAX counter
if ( !( --jQuery.active ) ) {
jQuery.event.trigger( "ajaxStop" );
@@ -7264,6 +7343,8 @@ jQuery.extend({
// If data is available, append data to url
if ( s.data ) {
s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data;
+ // #9682: remove data so that it's not used in an eventual retry
+ delete s.data;
}
// Get ifModifiedKey before adding the anti-cache parameter
@@ -7301,7 +7382,7 @@ jQuery.extend({
jqXHR.setRequestHeader(
"Accept",
s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
- s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", */*; q=0.01" : "" ) :
+ s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
s.accepts[ "*" ]
);
@@ -7347,7 +7428,7 @@ jQuery.extend({
transport.send( requestHeaders, done );
} catch (e) {
// Propagate exception as error if not done
- if ( status < 2 ) {
+ if ( state < 2 ) {
done( -1, e );
// Simply rethrow otherwise
} else {
@@ -7995,10 +8076,7 @@ var elemdisplay = {},
// opacity animations
[ "opacity" ]
],
- fxNow,
- requestAnimationFrame = window.webkitRequestAnimationFrame ||
- window.mozRequestAnimationFrame ||
- window.oRequestAnimationFrame;
+ fxNow;
jQuery.fn.extend({
show: function( speed, easing, callback ) {
@@ -8374,8 +8452,7 @@ jQuery.fx.prototype = {
// Start an animation from one number to another
custom: function( from, to, unit ) {
var self = this,
- fx = jQuery.fx,
- raf;
+ fx = jQuery.fx;
this.startTime = fxNow || createFxNow();
this.start = from;
@@ -8391,20 +8468,7 @@ jQuery.fx.prototype = {
t.elem = this.elem;
if ( t() && jQuery.timers.push(t) && !timerId ) {
- // Use requestAnimationFrame instead of setInterval if available
- if ( requestAnimationFrame ) {
- timerId = true;
- raf = function() {
- // When timerId gets set to null at any point, this stops
- if ( timerId ) {
- requestAnimationFrame( raf );
- fx.tick();
- }
- };
- requestAnimationFrame( raf );
- } else {
- timerId = setInterval( fx.tick, fx.interval );
- }
+ timerId = setInterval( fx.tick, fx.interval );
}
},
@@ -8947,9 +9011,10 @@ jQuery.each([ "Height", "Width" ], function( i, name ) {
if ( jQuery.isWindow( elem ) ) {
// Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
// 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat
- var docElemProp = elem.document.documentElement[ "client" + name ];
+ var docElemProp = elem.document.documentElement[ "client" + name ],
+ body = elem.document.body;
return elem.document.compatMode === "CSS1Compat" && docElemProp ||
- elem.document.body[ "client" + name ] || docElemProp;
+ body && body[ "client" + name ] || docElemProp;
// Get document width or height
} else if ( elem.nodeType === 9 ) {
diff --git a/doc/html/about.html b/doc/html/about.html
index bc7baee..1c7c969 100644
--- a/doc/html/about.html
+++ b/doc/html/about.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>About S3QL &mdash; S3QL v1.4 documentation</title>
+ <title>About S3QL &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="#" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Installation" href="installation.html" />
<link rel="prev" title="S3QL User’s Guide" href="index.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="index.html" title="S3QL User’s Guide"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -182,7 +182,7 @@ will, although being inconvenient, not endanger any stored data.</p>
<li class="right" >
<a href="index.html" title="S3QL User’s Guide"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/adm.html b/doc/html/adm.html
index 6d36d4b..9ee0750 100644
--- a/doc/html/adm.html
+++ b/doc/html/adm.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Managing Buckets &mdash; S3QL v1.4 documentation</title>
+ <title>Managing Buckets &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Mounting" href="mount.html" />
<link rel="prev" title="File System Creation" href="mkfs.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="mkfs.html" title="File System Creation"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -207,7 +207,7 @@ for help on the mailing list first (see <a class="reference internal" href="reso
<li class="right" >
<a href="mkfs.html" title="File System Creation"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/backends.html b/doc/html/backends.html
index 5a40f14..14cabfa 100644
--- a/doc/html/backends.html
+++ b/doc/html/backends.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Storage Backends &mdash; S3QL v1.4 documentation</title>
+ <title>Storage Backends &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="File System Creation" href="mkfs.html" />
<link rel="prev" title="General Information" href="general.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="general.html" title="General Information"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -270,7 +270,7 @@ with <a class="reference external" href="http://fuse.sourceforge.net/sshfs.html"
<li class="right" >
<a href="general.html" title="General Information"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/contrib.html b/doc/html/contrib.html
index 5655fc4..55cfa51 100644
--- a/doc/html/contrib.html
+++ b/doc/html/contrib.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Contributed Programs &mdash; S3QL v1.4 documentation</title>
+ <title>Contributed Programs &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Tips &amp; Tricks" href="tips.html" />
<link rel="prev" title="Checking for Errors" href="fsck.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="fsck.html" title="Checking for Errors"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -226,7 +226,7 @@ properly unmounts it when the system is shut down.</p>
<li class="right" >
<a href="fsck.html" title="Checking for Errors"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/fsck.html b/doc/html/fsck.html
index 790d19b..56fbc01 100644
--- a/doc/html/fsck.html
+++ b/doc/html/fsck.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Checking for Errors &mdash; S3QL v1.4 documentation</title>
+ <title>Checking for Errors &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Contributed Programs" href="contrib.html" />
<link rel="prev" title="Unmounting" href="umount.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="umount.html" title="Unmounting"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -154,7 +154,7 @@ specified multiple times.</td></tr>
<li class="right" >
<a href="umount.html" title="Unmounting"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/general.html b/doc/html/general.html
index 18569b4..e2a98a5 100644
--- a/doc/html/general.html
+++ b/doc/html/general.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>General Information &mdash; S3QL v1.4 documentation</title>
+ <title>General Information &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Storage Backends" href="backends.html" />
<link rel="prev" title="Installation" href="installation.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="installation.html" title="Installation"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -237,7 +237,7 @@ will ever be a concern.</p>
<li class="right" >
<a href="installation.html" title="Installation"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/index.html b/doc/html/index.html
index 0cc78f7..f13bb48 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>S3QL User’s Guide &mdash; S3QL v1.4 documentation</title>
+ <title>S3QL User’s Guide &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="#" />
+ <link rel="top" title="S3QL v1.5 documentation" href="#" />
<link rel="next" title="About S3QL" href="about.html" />
</head>
<body>
@@ -33,7 +33,7 @@
<li class="right" style="margin-right: 10px">
<a href="about.html" title="About S3QL"
accesskey="N">next</a></li>
- <li><a href="#">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="#">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -180,7 +180,7 @@
<li class="right" style="margin-right: 10px">
<a href="about.html" title="About S3QL"
>next</a></li>
- <li><a href="#">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="#">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/installation.html b/doc/html/installation.html
index f2c677d..94fe80c 100644
--- a/doc/html/installation.html
+++ b/doc/html/installation.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Installation &mdash; S3QL v1.4 documentation</title>
+ <title>Installation &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="General Information" href="general.html" />
<link rel="prev" title="About S3QL" href="about.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="about.html" title="About S3QL"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -182,7 +182,7 @@ have to run <tt class="docutils literal"><span class="pre">sudo</span> <span cla
<li class="right" >
<a href="about.html" title="About S3QL"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/issues.html b/doc/html/issues.html
index 33a66f0..c91d967 100644
--- a/doc/html/issues.html
+++ b/doc/html/issues.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Known Issues &mdash; S3QL v1.4 documentation</title>
+ <title>Known Issues &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Manpages" href="man/index.html" />
<link rel="prev" title="Tips &amp; Tricks" href="tips.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="tips.html" title="Tips &amp; Tricks"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -182,7 +182,7 @@ the backend.</p>
<li class="right" >
<a href="tips.html" title="Tips &amp; Tricks"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/man/adm.html b/doc/html/man/adm.html
index fc5d4da..7e6a07f 100644
--- a/doc/html/man/adm.html
+++ b/doc/html/man/adm.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qladm command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qladm command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The mount.s3ql command" href="mount.html" />
<link rel="prev" title="The mkfs.s3ql command" href="mkfs.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="mkfs.html" title="The mkfs.s3ql command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -201,7 +201,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="mkfs.html" title="The mkfs.s3ql command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/cp.html b/doc/html/man/cp.html
index 2f7f0d4..0634fe6 100644
--- a/doc/html/man/cp.html
+++ b/doc/html/man/cp.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qlcp command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qlcp command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qlrm command" href="rm.html" />
<link rel="prev" title="The s3qlctrl command" href="ctrl.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="ctrl.html" title="The s3qlctrl command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -207,7 +207,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="ctrl.html" title="The s3qlctrl command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/ctrl.html b/doc/html/man/ctrl.html
index 60b34c7..d9f322d 100644
--- a/doc/html/man/ctrl.html
+++ b/doc/html/man/ctrl.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qlctrl command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qlctrl command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qlcp command" href="cp.html" />
<link rel="prev" title="The s3qlstat command" href="stat.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="stat.html" title="The s3qlstat command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -198,7 +198,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="stat.html" title="The s3qlstat command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/expire_backups.html b/doc/html/man/expire_backups.html
index 46b16ae..ff76a8e 100644
--- a/doc/html/man/expire_backups.html
+++ b/doc/html/man/expire_backups.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The expire_backups command &mdash; S3QL v1.4 documentation</title>
+ <title>The expire_backups command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="Further Resources / Getting Help" href="../resources.html" />
<link rel="prev" title="The pcp command" href="pcp.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="pcp.html" title="The pcp command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -228,7 +228,7 @@ error occured.</p>
<li class="right" >
<a href="pcp.html" title="The pcp command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/fsck.html b/doc/html/man/fsck.html
index 72258c0..f0d5cc8 100644
--- a/doc/html/man/fsck.html
+++ b/doc/html/man/fsck.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The fsck.s3ql command &mdash; S3QL v1.4 documentation</title>
+ <title>The fsck.s3ql command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The pcp command" href="pcp.html" />
<link rel="prev" title="The umount.s3ql command" href="umount.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="umount.html" title="The umount.s3ql command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -193,7 +193,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="umount.html" title="The umount.s3ql command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/index.html b/doc/html/man/index.html
index 2c5f20d..a93cca0 100644
--- a/doc/html/man/index.html
+++ b/doc/html/man/index.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Manpages &mdash; S3QL v1.4 documentation</title>
+ <title>Manpages &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="next" title="The mkfs.s3ql command" href="mkfs.html" />
<link rel="prev" title="Known Issues" href="../issues.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="../issues.html" title="Known Issues"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -135,7 +135,7 @@ here in the User&#8217;s Guide.</p>
<li class="right" >
<a href="../issues.html" title="Known Issues"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/man/lock.html b/doc/html/man/lock.html
index c626d07..f8993ef 100644
--- a/doc/html/man/lock.html
+++ b/doc/html/man/lock.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qllock command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qllock command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The umount.s3ql command" href="umount.html" />
<link rel="prev" title="The s3qlrm command" href="rm.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="rm.html" title="The s3qlrm command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -198,7 +198,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="rm.html" title="The s3qlrm command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/mkfs.html b/doc/html/man/mkfs.html
index eaf53cb..3892cc9 100644
--- a/doc/html/man/mkfs.html
+++ b/doc/html/man/mkfs.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The mkfs.s3ql command &mdash; S3QL v1.4 documentation</title>
+ <title>The mkfs.s3ql command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qladm command" href="adm.html" />
<link rel="prev" title="Manpages" href="index.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="index.html" title="Manpages"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -193,7 +193,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="index.html" title="Manpages"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/mount.html b/doc/html/man/mount.html
index 73eb5af..162467d 100644
--- a/doc/html/man/mount.html
+++ b/doc/html/man/mount.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The mount.s3ql command &mdash; S3QL v1.4 documentation</title>
+ <title>The mount.s3ql command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qlstat command" href="stat.html" />
<link rel="prev" title="The s3qladm command" href="adm.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="adm.html" title="The s3qladm command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -247,7 +247,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="adm.html" title="The s3qladm command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/pcp.html b/doc/html/man/pcp.html
index 1aaaee4..95631e1 100644
--- a/doc/html/man/pcp.html
+++ b/doc/html/man/pcp.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The pcp command &mdash; S3QL v1.4 documentation</title>
+ <title>The pcp command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The expire_backups command" href="expire_backups.html" />
<link rel="prev" title="The fsck.s3ql command" href="fsck.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="fsck.html" title="The fsck.s3ql command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -171,7 +171,7 @@ error occured.</p>
<li class="right" >
<a href="fsck.html" title="The fsck.s3ql command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/rm.html b/doc/html/man/rm.html
index f70982c..39324b5 100644
--- a/doc/html/man/rm.html
+++ b/doc/html/man/rm.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qlrm command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qlrm command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qllock command" href="lock.html" />
<link rel="prev" title="The s3qlcp command" href="cp.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="cp.html" title="The s3qlcp command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -171,7 +171,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="cp.html" title="The s3qlcp command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/stat.html b/doc/html/man/stat.html
index 0d939ae..a5f9f4a 100644
--- a/doc/html/man/stat.html
+++ b/doc/html/man/stat.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The s3qlstat command &mdash; S3QL v1.4 documentation</title>
+ <title>The s3qlstat command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The s3qlctrl command" href="ctrl.html" />
<link rel="prev" title="The mount.s3ql command" href="mount.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="mount.html" title="The mount.s3ql command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -166,7 +166,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="mount.html" title="The mount.s3ql command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/man/umount.html b/doc/html/man/umount.html
index 19b1068..676ff8d 100644
--- a/doc/html/man/umount.html
+++ b/doc/html/man/umount.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The umount.s3ql command &mdash; S3QL v1.4 documentation</title>
+ <title>The umount.s3ql command &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="author" title="About these documents" href="../about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="../index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="../index.html" />
<link rel="up" title="Manpages" href="index.html" />
<link rel="next" title="The fsck.s3ql command" href="fsck.html" />
<link rel="prev" title="The s3qllock command" href="lock.html" />
@@ -38,7 +38,7 @@
<li class="right" >
<a href="lock.html" title="The s3qllock command"
accesskey="P">previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" accesskey="U">Manpages</a> &raquo;</li>
</ul>
</div>
@@ -176,7 +176,7 @@ system, conventional locations are <tt class="file docutils literal"><span class
<li class="right" >
<a href="lock.html" title="The s3qllock command"
>previous</a> |</li>
- <li><a href="../index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="../index.html">S3QL v1.5 documentation</a> &raquo;</li>
<li><a href="index.html" >Manpages</a> &raquo;</li>
</ul>
</div>
diff --git a/doc/html/mkfs.html b/doc/html/mkfs.html
index e5799ef..ecdb573 100644
--- a/doc/html/mkfs.html
+++ b/doc/html/mkfs.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>File System Creation &mdash; S3QL v1.4 documentation</title>
+ <title>File System Creation &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Managing Buckets" href="adm.html" />
<link rel="prev" title="Storage Backends" href="backends.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="backends.html" title="Storage Backends"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -154,7 +154,7 @@ option to prevent accidental creation of an encrypted bucket.</p>
<li class="right" >
<a href="backends.html" title="Storage Backends"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/mount.html b/doc/html/mount.html
index c243f32..834ed59 100644
--- a/doc/html/mount.html
+++ b/doc/html/mount.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Mounting &mdash; S3QL v1.4 documentation</title>
+ <title>Mounting &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Advanced S3QL Features" href="special.html" />
<link rel="prev" title="Managing Buckets" href="adm.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="adm.html" title="Managing Buckets"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -375,7 +375,7 @@ mounted.</li>
<li class="right" >
<a href="adm.html" title="Managing Buckets"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/objects.inv b/doc/html/objects.inv
index a1ddefe..11cec59 100644
--- a/doc/html/objects.inv
+++ b/doc/html/objects.inv
@@ -1,6 +1,6 @@
# Sphinx inventory version 2
# Project: S3QL
-# Version: 1.4
+# Version: 1.5
# The remainder of this file is compressed using zlib.
xÚ}RMÕ0 ¼çWD‚k¡½q$Ø•@À‰c•¦Þ×hó…í<xÿ·i«×z‹Æ3ã±c›ò¥Ë€ ƒ‰4ñðÆ›¼n^kv™nFþ…^sÍ»ÓÙÅ“žJúª¤\$nèö§ß›M°ñÞ°K±š¾Ô÷›lÚÛoŸÔ ¢‹üÞ+W´ªD$oÕûÜå_q¯ÔÊi„Ór©ËÛÂ#DvvŽ!Vsêé­BþÑ[Æ^ KûÏi(–Ùæ=ߦÈèúu@©ßä‹š¶á“}Ús)ƒukVYF…M/Þ߀A;>“ÌØ’¤­„¯æsËè;<=€~Ÿâ£;¬ƒ“ìF,ºÞȶâ@{‹­ ·Ù¸mô»PDc'w“ÿwIRoæzÛÞ­ªš>fo£É4&æéMdù››è¸ÎáÐáƒ!Ö` ’;ƒ¼B:?+å
ùPûjãVˆŽä~H-+è¼3½óŽ/G§XÙÍ5ûK\ a6X!P*háÙGlð6OA9fíʵ弟ե=`ô \ No newline at end of file
diff --git a/doc/html/resources.html b/doc/html/resources.html
index f35b27a..823ca46 100644
--- a/doc/html/resources.html
+++ b/doc/html/resources.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Further Resources / Getting Help &mdash; S3QL v1.4 documentation</title>
+ <title>Further Resources / Getting Help &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="prev" title="The expire_backups command" href="man/expire_backups.html" />
</head>
<body>
@@ -33,7 +33,7 @@
<li class="right" style="margin-right: 10px">
<a href="man/expire_backups.html" title="The expire_backups command"
accesskey="P">previous</a></li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -105,7 +105,7 @@ can subscribe by sending a mail to
<li class="right" style="margin-right: 10px">
<a href="man/expire_backups.html" title="The expire_backups command"
>previous</a></li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/search.html b/doc/html/search.html
index 2022e20..480959c 100644
--- a/doc/html/search.html
+++ b/doc/html/search.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Search &mdash; S3QL v1.4 documentation</title>
+ <title>Search &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -24,7 +24,7 @@
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/searchtools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<script type="text/javascript">
jQuery(function() { Search.loadIndex("searchindex.js"); });
</script>
@@ -35,7 +35,7 @@
<div class="related">
<h3>Navigation</h3>
<ul>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -100,7 +100,7 @@
<div class="related">
<h3>Navigation</h3>
<ul>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/searchindex.js b/doc/html/searchindex.js
index 1f60ce6..48f2cde 100644
--- a/doc/html/searchindex.js
+++ b/doc/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({objects:{},terms:{suffici:1,all:[0,1,2,3,5,7,8,11,12,13,14,15,17,19,20,21,22,23,24,25,26,27],code:[8,17,0,22,11,23,10,25,21,3,4,26,6,20],partial:12,global:[],mnt:[5,14,27],month:[5,25],prefix:[12,1],stumbl:7,notquitesecret:1,follow:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,19,20,22,23,24,25,26,27],disk:[14,21],whose:12,decid:[14,1],middl:7,depend:[8,9,22,23,1,25,3,5,14,20,27],million:7,ulimit:[27,20],readabl:21,send:16,rel:[12,4],init:[27,7],program:[0,2,3,4,5,6,7,8,9,10,11,13,15,17,19,20,22,23,24,25,26,27],those:12,under:[12,22],aris:12,sha256:21,neglig:[],worth:7,introduc:[17,13],sourc:[17,21,22,4,5,13],everi:[17,0,27,1,25,12,5,14,13],risk:[],mkf:[8,2,23,18,9],far:14,faq:16,account:[20,12,27],util:[14,19],pycryptopp:22,failur:1,veri:[21,12,7],affect:[17,27,7,13,1],tri:[15,7],administr:[0,13],level:[26,13],did:21,list:[21,22,25,26,12,13,5,15,16],upload:[21,11,27,24,26,12,13,5,14,20,7],previou:[5,15,12],"try":[5,25,12,22,1],larg:[17,14,7,13],stderr:27,small:[14,7],blocksiz:[2,23,20,27],mount:[17,9,0,20,18,11,27,10,24,1,26,12,7,3,5,6,14,15,13],dir:[17,27],pleas:[21,16],upper:12,smaller:[14,21,7],slower:[17,27,13],ifac:27,ten:12,whitespac:[],compens:1,sync:4,sign:12,consequ:1,hors:[0,13],design:[0,21,13,1],pass:[27,4],download:[15,22,3],further:[9,15,16],correspond:12,port:12,rath:27,even:[8,0,11,24,1,12,19,13],what:[5,25,15,26,1],bzip2:[21,20,27],sub:7,entir:[21,0,10,13],descriptor:[27,20],section:[12,1],abl:[0,11,24,1,12,13,16],weren:16,asia:[],find:[0,12,27,7,13],access:[21,20,27,1,12,15,7],delet:[9,0,10,25,12,7,3,5,15,13],version:[8,17,0,20,22,11,23,10,24,19,25,2,12,21,3,4,26,6,15,27,7],suspect:19,directori:[0,1,2,3,4,5,7,8,10,11,12,13,14,15,17,19,20,21,22,23,25,27],consecut:12,"new":[8,0,20,23,1,25,26,12,7,5,15,27,13],net:27,ever:1,"public":[],contrast:[0,13],metadata:[9,20,27,3,26,14,15,13],elimin:12,full:[8,17,0,11,23,10,26,21,3,5,6,20,27,13],themselv:1,absolut:[5,25,12],pacif:[],gener:[9,0,22,1,25,12,7,5,15,13],never:[],privat:[],here:[26,12,18],satisfi:22,explicitli:7,modif:7,address:7,path:[8,20,22,23,19,2,12,3,15,27],becom:[5,25,14,12,1],modifi:[17,21,13],sinc:[27,1,25,12,5,7],valu:[27,20,7,1],wait:[11,14,27,24,7],dry:25,convert:12,joes_bucket:[],howev:[17,0,27,21,25,12,13,5,14,7],checksum:21,larger:27,step:5,amount:[26,14,12,21],throughput:[],action:[26,15,13,3],implement:1,magnitud:[17,13],chanc:7,control:13,fstab:[27,7],decrypt:1,appli:[14,12,1],modul:[8,20,1,23,19,2,3,26,22,15,27],apw:22,filenam:14,unix:[14,21,7],visibl:12,instal:[8,9,0,20,18,22,17,11,23,10,26,3,5,6,15],total:[27,7,13],establish:1,from:[8,17,0,20,22,19,23,21,1,25,2,12,3,4,5,14,15,27,13],describ:[12,1],would:[17,1,25,12,5,13],apswvers:22,upgrad:[9,15,22,3],impos:[],few:[5,12,22],concret:1,call:[17,0,27,10,1,25,26,12,5,6,14,20,13],usr:[8,17,0,11,23,10,26,3,5,6,20],recommend:[5,27,12,7,1],taken:[17,21,20,27,13],tape:[0,13],bill:1,type:[],until:[11,27,7,13,24],more:[21,22,1,13,4,26,7],sort:[5,25],desir:26,st_nlink:7,src:[17,13],peopl:[],hundr:[],relat:12,benchmark:[5,9,27],"19283712_yourname_s3ql":[],notic:[14,12],enhanc:5,warn:[26,10,15,13,1],sqlitelibvers:22,sens:14,known:[9,21,7],rare:[],hold:[12,1],unpack:22,cach:[8,9,21,20,23,19,2,13,3,26,15,27,7],must:[17,15,12,13,3],worst:[0,13],none:[8,20,1,27,19,3,15],word:[],sometim:15,restor:[17,9,14,15,13],dest:17,setup:22,work:[21,22,24,25,5,14,7],uniqu:1,conceptu:21,remain:27,wors:12,obvious:27,can:[0,1,2,3,5,6,7,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],about:[9,21,27,13,6,14,7],root:[17,0,11,27,10,24,26,6,20,13],fetch:[17,13],overrid:12,prompt:[8,19],tar:14,give:[5,25,14,15],process:[11,27,24,12,4,5,14,20,7],lock:[0,13],sudo:22,share:[8,17,0,11,23,10,26,3,5,6,20],accept:[8,17,0,20,19,11,23,10,24,1,25,2,3,4,26,6,15,27],high:[21,20,27,4],critic:21,minimum:[14,21],want:[11,27,24,25,5,14,16],onlin:[0,12,21,13],unfortun:[14,12,7],occur:[8,17,0,11,23,10,1,25,3,4,26,6,20],ratio:27,alwai:[17,27,25,13,5,7],end:[27,15],turn:[5,25,27,7],rather:[25,12,13,5,14,7],anoth:[7,1],ordinari:[17,11,24,13],write:[8,9,21,20,22,17,27,19,12,7,3,5,14,15,13],how:[5,25,14],manpag:[9,18],env:27,webpag:12,verifi:[12,7],simpl:[5,25,13],updat:[5,21,12,7],product:[],resourc:[9,15,16],job:[5,27],max:[27,20],earlier:[22,7,1],pyliblzma:22,badli:[15,3],wrong:[15,7,3],endang:21,mai:[17,0,20,22,27,16,21,24,1,26,12,7,3,5,14,15,13],multipl:[8,15,23,19,2,3,20,27],redund:[5,25,21,12],secondari:[],data:[8,17,21,20,19,11,23,27,24,1,2,12,7,3,5,14,15,26,13],grow:[21,27],physic:[5,17,0,15,13],man:[18,7],"short":[0,12,13],attempt:[8,27,7,1],practic:[14,12],third:14,read:[8,17,21,20,19,23,1,2,12,7,3,14,15,27,13],neitheristhi:1,author:[27,7],favorit:[],apsw:22,element:27,issu:[17,9,0,22,27,16,10,21,12,7,26,6,13],inform:[9,27,1,25,26,20,13],maintain:27,combin:[14,12,27,1],allow:[17,0,20,27,10,25,26,12,4,5,6,14,15,13],enter:[2,23],exclus:14,volum:27,order:[17,13,1],talk:12,oper:[8,17,0,20,11,23,10,1,25,21,3,4,26,6,15,27],creation:[2,23,9],help:[9,22,16,26,13,3,5,15,7],over:[17,21,27,12,13,14,20,7],move:[21,15,1],soon:[],topsecret:[],increas:[14,20,27],appar:12,effici:7,still:[17,21,11,27,24,1,12,13],dynam:21,paramet:1,overwrit:[2,23],fix:[0,25,12,13,5,7],inadvert:[17,13],better:[27,22,4],window:12,html:[],restart:[27,7],persist:1,mail:[21,15,22,16],main:[10,13],might:[17,0,27,16,10,19,13,26,6,7],documents_januari:[17,13],them:[17,11,24,1,12,15,13],good:[0,25,13,5,14,7],synopsi:[8,17,0,11,23,10,25,3,4,26,6,20],thei:[17,0,18,21,25,12,5,14,13],python:[27,22,1],promin:7,safe:[17,14,13],fuse4bsd:22,dai:[5,25],initi:[],dat:[5,25],terminolog:[9,1],therebi:12,instead:[17,11,24,1,12,13,7],interrupt:15,potenti:12,now:[0,22,25,12,5,13],bigger:[],choic:22,term:[5,25,1],eventu:12,somewher:[8,17,0,11,23,10,3,26,6,20,13],name:[17,23,1,25,2,12,5,14,20,27,13],joesdomain:[],authent:[8,9,20,19,23,1,2,12,3,15,27],achiev:[5,17,21,27,13],mode:[27,20],each:[5,25,27,20,1],debug:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],found:[14,1],beneath:13,confid:[],side:1,mean:[21,12,7],compil:27,s3ql:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],mkfifo:27,chunk:7,hard:[14,21],idea:[5,25,0,7,13],procedur:[17,13],realli:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,14,15,27,7],contrib:[5,14,27],meta:[26,14,13],expect:[27,12,1],year:[5,25,21,12],s3_copi:[5,9],happen:[0,12,13,1],todo:[],special:[17,13],out:[21,12,7],lzma:[21,20,22,27],ftp:[],shown:12,network:[17,14,27,21,13],space:[17,21,7,13],open:[11,27,24,7],newli:7,log_fifo:27,content:[17,21,27,0,1,3,13],suitabl:[21,22],rational:0,internet:[21,27],print:[8,17,0,20,22,11,23,10,24,19,25,2,3,4,26,6,15,27],eth0:27,bla:27,correct:[5,25],common:[17,0,12,13],foreground:[27,20],shut:[5,11,24,7],after:[17,0,21,1,12,14,15,13],insid:17,advanc:[9,13],migrat:5,documents_janurai:[],manipul:21,situat:[14,7],given:7,free:[21,12],standard:[5,25,21,12,27],inod:[8,7,19],reason:[10,27,24,1,25,12,13,5,14,19,7],base:27,theori:[12,7],ask:[22,23,2,12,15,7],org:27,"byte":[],likelihood:12,afterward:14,bash:14,care:[17,21,7,13],wai:[0,27,21,1,12,13,14,7],thread:[5,27,20],befor:[17,21,11,27,24,1,12,13,7],could:[17,13],success:[],refus:[5,25],keep:[0,27,1,25,5,13],recov:[0,13],thing:[15,3],length:12,rais:[27,20],place:[27,12],perman:[9,0,27,12,14,13],pycrypto:22,principl:27,confus:7,neglect:1,first:[21,22,27,1,12,14,15,7],origin:[],softwar:27,rang:[5,25],becaus:[17,21,27,1,12,5,13],directli:12,malici:[0,13],carri:21,onc:[0,11,27,21,24,12,13,14,20,7],clariti:[],s3q:[],number:[21,22,27,25,13,4,5,14,20,7],capac:21,restrict:[26,27,20],date:[5,25],instruct:[27,22],alreadi:[17,22,7,13],done:[27,12],wrapper:[5,4],llfuse:22,indistinguish:21,miss:[25,1],s3c:12,size:[21,23,2,13,26,14,20,27,7],differ:[17,21,22,27,1,26,3,5,14,15,13],convent:[8,17,0,11,23,10,3,26,6,20,7],script:[5,14,27,7],profil:[27,20],unknown:21,interact:3,s3qllock:[9,0,18,10,5,14,13],system:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,23,24,25,26,27],least:[22,27,25,12,5,20],parallel:[9,27,4,5,14,20],checkpoint:1,attack:[0,7,13],necessarili:12,demonstr:5,s3qlrm:[9,0,18,10,25,5,13],termin:[11,24,7,1],lost:[12,1],john:12,"final":13,store:[8,9,21,20,19,23,1,25,2,12,3,5,14,15,27,7],low:[21,12],servi:7,luckili:7,consol:12,option:[0,2,3,4,5,6,7,8,10,11,13,14,15,17,19,20,22,23,24,25,26,27],especi:[14,21],shelf:[0,13],tool:12,copi:[17,9,21,1,13,4,5,14,15,7],specifi:[8,20,19,23,27,1,25,2,12,3,5,15,26,7],arbitrari:[14,12],part:[21,27,1,25,4,5],pars:1,mostli:[],consult:[8,23,20,3],exactli:[5,17,25,13],than:[10,27,1,25,13,5,14,7],wide:[27,22],target:[8,17,20,27,19,3,14,15,13],cachedir:[8,15,23,19,2,3,20,27],whenev:[14,22,27,1],prevent:[2,0,23,13],remov:[17,9,0,22,27,10,25,26,7,5,6,13],eleg:21,tree:[17,9,0,10,4,5,21,13],second:[27,1,25,12,5,14,20],structur:[21,15],exampl:[21,1,25,13,5,14,7],matter:[26,14,15],temporarili:27,friend:14,video:27,minut:[5,25],led:1,pre:27,unencrypt:[2,23],sai:[17,13],comput:[5,25,21,27],entail:[],plaintext:[],explicit:14,ram:27,mind:1,argument:[26,15,3],peculiar:12,"13th":21,packag:[5,22],expir:27,increment:[],disadvantag:[17,13],need:[17,20,22,27,1,25,12,5,15,13],seem:14,exclud:[0,13],paramiko:[],caus:[12,1],equival:[5,25],irrepar:15,destroi:[0,13],moreov:13,blindli:7,atim:7,accuraci:[5,25],note:[17,9,21,22,11,27,24,25,12,7,4,5,14,15,13],also:[8,17,0,18,11,23,10,24,1,25,26,12,21,3,4,5,6,14,20,27,13],builtin:22,denomin:12,take:[17,21,13,3,26,14,15,7],which:[17,10,22,21,1,25,12,13,5,7],discrep:[],transmit:[],environ:22,uplink:5,singl:[14,20,27],swordfish:1,mktemp:27,begin:1,sure:[20,22,27,12,14,15,7],unless:[2,0,23,13],distribut:[5,27,22],plenti:[],normal:[27,20,1],buffer:7,who:[11,27,20,24],compress:[9,21,27,5,20,13],most:[8,17,20,19,27,1,25,12,7,3,5,15,13],beta:21,said:[],rigor:[5,25],plan:[],stricli:[8,19],choos:[],homepag:[8,17,0,11,23,10,3,26,6,20],"class":[8,17,0,11,23,10,25,26,3,4,5,6,20],three:[27,12,22],simplic:21,renam:21,correctli:[7,19],ship:[25,27,22,4],url:[8,20,19,23,1,2,12,3,15,27],doc:[8,17,0,11,23,10,26,3,5,6,20],clear:[17,15,13],later:[17,0,22,1,12,13,7],cover:14,drive:[0,13],destruct:[0,13],doe:[21,27,24,1,12,7],declar:21,snapshot:[17,9,21,26,13],runtim:[9,13],determin:[5,27,1],sourceforg:[],occasion:12,usual:27,hmac:21,gracefulli:[5,25],myawssecretaccesskei:[],theoret:14,show:25,carefulli:1,random:[],syntax:[27,19,2,26,15,13],connect:[14,12,27,21],permiss:[5,21,20,27],bucketnam:12,newest:[14,3],anywai:[],rotat:[8,15,27,19,3,20],redirect:27,current:[5,15,12,25,7],onli:[17,25,0,20,22,11,27,10,24,21,26,12,7,4,5,6,14,15,13],slow:7,locat:[8,17,0,11,23,10,1,3,26,6,20,13],execut:[5,15,22,13],transact:21,configur:[9,27,13],activ:[8,17,0,20,19,11,23,10,24,1,25,2,12,3,4,26,6,15,27,13],state:[5,25,21,7],haven:[],authinfo:[],latenc:[14,21,4],suppos:12,rich:12,factor:[5,12],folder:[17,22,13],local:[8,9,0,22,17,11,23,10,12,21,3,26,6,14,20,27],defin:[5,25,27,1],contribut:[5,9],variou:[26,15,3],get:[8,9,0,20,22,19,23,27,1,25,2,16,3,5,15,26,13],googlegroup:16,nasti:[0,13],stop:27,autom:[5,21],regularli:[17,13],ssl:7,s3rr:[],cannot:[5,25],ssh:[9,14,12],report:[21,22,16,1],reconstruct:[5,25,1],requir:[8,21,1,27,19,25,26,5,22,20,7],myawsaccesskeyid:[],reveal:21,enabl:[],dramat:14,intrins:14,method:[27,22],provid:[21,22,27,1,12,7],bad:14,statist:[6,13,9],though:[27,12,1],contain:[22,27,25,3,5,15],userspac:[],nowher:[],where:[26,15,7,3,1],caches:[26,27,20,13],wiki:[22,16],kernel:22,set:[5,14,20,27],bucket1:1,bucket3:1,bucket2:1,startup:27,maximum:[5,2,23,20,27],see:[8,17,0,20,11,23,10,1,25,26,12,7,3,4,5,6,14,15,27,13],num:[27,20],s3qlcp:[5,9,17,18,13],fail:[12,22,7],close:[11,24],optimum:14,whatsoev:[0,21,13],best:[14,12,22,27],concern:1,infinit:21,awar:1,statu:[8,9,0,17,11,23,10,25,12,21,3,4,26,6,20,7],detect:[21,12,1],extend:21,inconveni:21,hopefulli:7,databas:21,boundari:[5,25],label:[2,23],favor:21,enough:[14,20,27,7],between:[5,25,27,20],"import":[5,22,1],neither:[0,13],across:21,attribut:21,amazon:[9,21,1,12,5,7],august:[],kei:[21,12],weak:[],inconsist:7,southeast:[],lazi:[11,24],hardlink:[17,21,13],joe:[5,1],expire_backup:[5,9,18,25],solv:14,come:[5,14,21],local0:27,addit:[17,10,27,21,1,3,26,15,13],both:[17,21,22,13,1],protect:[0,21,13],accident:[2,0,23,7,13],last:1,irregular:[5,25],extens:21,someth:[17,13],region:[5,12],alon:1,quiet:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],against:[0,21,13],configpars:1,etc:[17,27,7,13],instanc:14,freeli:27,corrupt:1,com:[8,17,0,22,11,23,10,25,3,4,26,6,14,20,16],pcp:[5,9,14,18,4],independ:[21,20,27],load:27,simpli:[0,13],figur:1,inspir:[17,13],buti:[],period:[0,13],insist:14,batch:[8,27,19],written:[21,20,27,1],littl:[27,12,22],shutdown:27,linux:[27,22],averag:12,guid:[8,9,18,23,3,20],assum:27,duplic:[17,21,1,12,5,13],quit:22,worthless:[0,13],strong:[8,17,0,11,23,10,25,3,4,26,6,20],nikolau:27,west:[],devic:27,due:[12,7],been:[0,19,11,27,21,24,1,25,12,7,5,14,15,13],mark:[8,19],compon:21,secret:12,much:4,interpret:27,interest:13,subscrib:16,monthli:[17,13],immedi:[10,11,27,24,12,13],strategi:[5,25],legaci:12,infect:[0,13],upstart:[5,27,20],great:[0,13],ani:[8,17,0,22,23,21,1,25,2,12,16,5,13],rsync_arg:14,zero:14,understand:[27,20],togeth:1,els:15,tradition:[0,13],s3qlstat:[6,18,7,13,9],present:12,"case":[17,0,22,21,1,25,5,14,15,13],replic:[5,17,21,13],trojan:[0,13],ident:[17,21,13,1],look:14,gnu:7,solid:21,plain:[2,23],servic:[21,12,1],zlib:[27,20],histor:1,trick:[9,14],documents_februari:[17,13],invok:[26,15],abov:[5,25,1],error:[8,9,0,20,17,11,23,10,1,25,21,3,4,26,6,19,7],login:[12,1],invoc:[5,25],ahax:4,loos:[12,1],jibbadup:[],earli:7,runlevel:27,argpars:22,have:[17,0,20,22,11,23,16,21,24,1,25,2,12,7,4,5,14,15,27,13],advantag:[5,25,0,13],stdout:27,almost:14,therefor:[5,27,12,7,1],remount:12,worri:7,destin:[17,14,13,4],exit:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],gsutil:[],conf:[5,9],incom:[],revis:[15,3],dedic:[27,7],sever:[21,22,27,1,12,4,5,14,20],tamper:[5,25],unmount:[9,11,27,24,1,12,5,14,19,7],develop:[9,21,12],minim:21,perform:[9,21,22,27,1,26,12,3,4,5,14,15,7],media:12,make:[17,0,20,22,27,21,1,25,12,13,5,14,15,7],flushcach:[26,13],same:[17,27,1,25,12,5,14,15,13],"while":[0,22,27,21,24,12,26,13],handl:[17,21,27,25,12,13,5,14,7],renumb:[8,19],unexpectedli:7,split:21,auto:[27,20],pai:12,document:[8,17,0,11,23,10,3,26,6,20,13],infer:[5,25],complet:[17,22,27,1,25,26,12,5,20,13],week:[5,25],geograph:12,archiv:[21,12],hostnam:12,closest:12,lie:17,optim:27,keyr:[],confidenti:[],upon:7,effect:[17,21,13,1],cycl:[5,25],solut:5,remot:[14,12,21],fuse:[27,7],temporari:12,user:[8,9,0,18,22,17,11,23,10,24,19,12,21,3,26,6,14,20,27,13],mani:[5,25,21,1],extern:[0,12,13],encrypt:[21,27,1,2,3,23],typic:[17,13],recent:[5,25,27,15,7],gss:12,appropri:27,kept:[8,15,27,19,3,20],older:15,nevertheless:[5,1],entri:[27,20,7,1],thu:1,irrelev:7,well:[0,20,27,10,1,25,5,15,13],without:[8,17,0,21,19,12,13,14,15,7],command:[0,1,2,3,4,5,6,7,8,9,10,11,13,15,17,18,19,20,22,23,24,25,26,27],thi:[0,1,2,3,4,5,6,7,8,10,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27],filesystem:[27,19,2,14,20,23],gzip:21,credenti:[8,20,1,23,19,2,3,15,27],spend:14,left:7,compromis:14,identifi:[12,1],just:[8,17,0,20,11,23,10,24,19,25,2,12,3,4,26,6,14,15,27,13],less:[7,1],conform:21,tip:[9,14],lowest:12,obtain:[],rest:14,bandwidth:[5,21],touch:[17,13],openstack:21,passphras:[9,15,3,1],roughli:27,speed:[5,27],yet:[12,7],web:12,viru:[0,13],detach:[11,24],homedir:[],easi:14,hint:[26,15,3],point:[21,11,27,1,12,20],had:[5,17,25,13],except:1,param:15,thousand:[27,12,7],add:[0,13],valid:[12,13],nor:[0,13],versa:[17,13],input:[8,19],logger:27,subsequ:[5,25,12],match:12,bin:[14,22],applic:[7,1],transpar:21,preserv:[5,21],big:[14,7],regard:[17,13],exception:[],traffic:12,know:[5,17,25,7,13],background:[11,24],amp:14,bit:21,password:[2,23,12,1],recurs:[5,9,10,13],presum:1,like:[17,0,27,21,12,13,4,20,7],loss:[12,1],daemon:[27,20],ctime:7,specif:[0,22,1,12,13,26,15,7],header:1,should:[8,17,0,20,22,19,11,23,10,24,1,7,3,26,6,14,15,27,13],anyth:[],manual:[11,22,24,16],resolv:[12,16],noth:[0,13],princip:7,necessari:15,either:[12,13,3,26,15,7],output:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],per:27,page:18,yyyi:[5,25],imagin:[5,25,0,13],right:14,old:[8,0,20,22,27,19,25,12,3,5,15,13],often:[14,1],deal:[],ll23bi:1,interv:[5,25,14,20,27],compat:[9,12,7],some:[8,17,0,20,22,11,23,10,24,1,25,26,12,21,3,4,5,6,19,7],umount:[9,18,11,27,24,7],self:22,certain:[],strongest:[],"export":[27,20,7],flush:[27,13],guarante:[5,25,12],server:[14,12,7],librari:[22,7],"24h":[27,20],rsync:[17,0,13,4,5,14,7],backend:[8,9,17,11,23,24,1,12,7,3,26,14,20,27,13],confirm:[10,13],stronger:12,freebsd:22,avoid:[5,25],exec:27,definit:[5,25],februari:[17,13],protocol:1,usernam:1,equal:27,leav:7,slash:12,cif:27,damag:[5,25,15,1],creep:21,refer:[18,1],machin:[],core:[5,27],plu:1,object:[20,12,27],run:[0,20,22,19,27,1,25,26,13,3,5,15,7],itself:[12,22,7,1],power:5,certif:[12,7],reach:[8,15,27,19,3,20],intellig:[5,25,21],view:18,usag:[5,17,27,25,13],symlink:21,speak:27,host:[],unreason:7,although:[21,10,7,13],januari:[17,13],bi23ll:1,immut:[9,0,10,5,21,14,13],"__version__":22,stage:[],sshf:[14,12],comparison:[],deflat:21,actual:[15,14,12,22,7],proce:22,memori:27,http:[8,17,0,22,11,23,10,25,12,3,4,26,6,20],storebackup:[17,13],acl:21,messag:[8,15,23,19,2,3,20,27],fals:[27,20],commit:[24,7],backup:[17,9,0,27,21,1,25,12,3,5,14,15,13],disabl:[8,15,27,19,3,20],block:[21,11,23,24,1,2,13,26,27,7],repair:8,client:7,real:12,encount:[16,7],xyz:[],within:[13,1],encod:27,automat:[5,9,27,12,15],two:[17,21,15,22,13],down:[5,11,24,7],ahv:14,authinfo2:[8,15,23,19,2,3,20,27],ensur:[5,25,14,21],chang:[17,9,0,27,21,12,7,3,26,15,13],insuffici:7,storag:[8,9,0,20,19,17,11,23,21,24,1,2,12,7,3,5,14,15,27,13],your:[8,17,0,18,22,11,23,10,25,26,12,3,5,6,14,20,27,13],durabl:1,manag:[9,12,15],east:[],fast:[9,21,27,13],fusermount:[11,24,7],prepar:26,her:[0,13],transfer:[5,14,21],support:[17,21,27,12,13,20,7],question:16,s3_backup:[5,9],"long":[5,25,14,7,1],avail:[8,0,20,23,25,12,7,3,5,15,27,13],start:[8,22,27,1,12,4,5,14,19],reli:[7,1],trigger:[12,13],includ:[22,21,12,18,7],lot:14,"var":12,succeed:[8,17,0,11,23,10,25,3,4,26,6,20],individu:[27,20,4],"function":15,properli:5,tracker:[21,22,16],form:[5,25,12,1],offer:[17,12,13],forc:[8,2,23,19],basic:[],continu:24,sigstop:[27,20],satur:27,measur:5,newer:[12,22],don:[27,20,7],line:[26,21],bug:[21,22,16,7],faster:[10,12,13],info:[8,15,27,19,3,26,20],commun:1,made:[17,21,0,14,13],furthermor:[21,1],consist:[12,1],possibl:[0,22,27,21,12,13,14,15,7],"default":[8,20,23,19,25,2,3,4,5,15,27],bucket:[9,23,1,2,12,3,5,15,27,7],displai:7,tell:[5,25,27],asynchron:21,authfil:[8,20,1,23,19,2,3,15,27],below:[12,13],limit:[17,0,27,10,1,26,12,7,5,6,20,13],unnot:12,problem:[8,17,0,16,21,1,25,12,7,5,14,13],similar:27,significantli:[5,22,1],featur:[17,9,0,21,1,12,13],creat:[17,0,20,23,10,25,2,12,7,5,21,15,27,13],classic:[],retriev:[14,12,27,20,4],dure:[15,20,12,27],day_hour:[5,25],stabl:21,s3qlctrl:[26,9,14,18,13],strongli:[5,25],workaround:14,decreas:4,file:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,19,20,21,23,24,25,26,27],mtime:7,request:12,exist:[17,0,23,10,1,25,2,12,5,13],improv:[5,9,14,4],mybucket:14,check:[8,9,22,27,19,12,15,7],probabl:[21,25,5,14,15,13],otherwis:[27,20],again:[0,12,7,13,24],readi:12,relatim:7,umask:27,googl:[8,9,0,22,17,11,23,10,25,12,21,3,4,26,6,20],sequenti:[8,19],when:[8,0,20,19,27,21,1,25,12,7,3,4,5,14,15,13],detail:[5,14,12,7],prepend:12,field:[],other:[17,0,22,27,10,21,12,16,26,6,20,13],futur:[17,0,10,13,26,6,7],rememb:[],test:[21,22],you:[17,0,20,22,19,11,23,16,10,24,1,25,2,12,7,5,14,15,27,13],shrink:21,rid:[0,13],particular:1,variabl:22,intend:[],clean:[8,19],fulli:7,mountpoint:[27,24,12,26,6,14,20,13],"return":[8,17,0,11,23,10,24,25,3,4,26,6,20,7],fsck:[8,9,18,19,27,1,12,15],briefli:[],releas:21,track:[5,25],log:[8,20,19,27,1,12,3,26,15,13],consid:[12,16,1],sql:24,noleaf:7,dd_hh:[5,25],pool:[],stai:[27,20],reduc:[5,12],infrequ:1,longer:[21,0,24,25,13,5,15,7],algorithm:[5,9,21,20,27],vice:[17,13],home:[5,14,12],reliabl:[9,12,1],descript:[8,17,0,11,23,10,25,3,4,26,6,14,20,27],save:[25,14,21,1],rule:14,sftp:[9,12],depth:[],ignor:[],back:[0,13],time:[8,0,20,19,23,21,1,25,2,12,7,3,5,14,15,27,13],backward:[],s3qladm:[9,15,18,3],daili:[]},objtypes:{},titles:["The <strong class=\"program\">s3qllock</strong> command","General Information","File System Creation","The <strong class=\"program\">s3qladm</strong> command","The <strong class=\"program\">pcp</strong> command","Contributed Programs","The <strong class=\"program\">s3qlstat</strong> command","Known Issues","The <strong class=\"program\">fsck.s3ql</strong> command","S3QL User&#8217;s Guide","The <strong class=\"program\">s3qlrm</strong> command","The <strong class=\"program\">umount.s3ql</strong> command","Storage Backends","Advanced S3QL Features","Tips &amp; Tricks","Managing Buckets","Further Resources / Getting Help","The <strong class=\"program\">s3qlcp</strong> command","Manpages","Checking for Errors","The <strong class=\"program\">mount.s3ql</strong> command","About S3QL","Installation","The <strong class=\"program\">mkfs.s3ql</strong> command","Unmounting","The <strong class=\"program\">expire_backups</strong> command","The <strong class=\"program\">s3qlctrl</strong> command","Mounting"],objnames:{},filenames:["man/lock","general","mkfs","man/adm","man/pcp","contrib","man/stat","issues","man/fsck","index","man/rm","man/umount","backends","special","tips","adm","resources","man/cp","man/index","fsck","man/mount","about","installation","man/mkfs","umount","man/expire_backups","man/ctrl","mount"]}) \ No newline at end of file
+Search.setIndex({objects:{},terms:{all:[0,1,2,3,5,7,8,11,12,13,14,15,17,19,20,21,22,23,24,25,26,27],code:[8,17,0,22,11,23,10,25,21,3,4,26,6,20],partial:12,global:[],mnt:[5,14,27],month:[5,25],prefix:[12,1],stumbl:13,notquitesecret:1,follow:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,19,20,22,23,24,25,26,27],disk:[14,21],intrins:14,locat:[8,17,0,11,23,10,1,3,26,6,20,7],whose:12,decid:[14,1],middl:13,depend:[8,9,22,23,1,25,3,5,14,20,27],system:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,23,24,25,26,27],ulimit:[27,20],readabl:21,specif:[0,22,1,12,13,26,15,7],send:16,init:[27,13],program:[0,2,3,4,5,6,7,8,9,10,11,13,15,17,19,20,22,23,24,25,26,27],present:12,under:[12,22],aris:12,sha256:21,neglig:[],worth:13,introduc:[17,7],sourc:[17,21,22,4,5,7],everi:[17,0,27,1,25,12,5,14,7],risk:[],far:14,faq:16,account:[20,12,27],util:[14,19],volum:27,failur:1,veri:[21,12,13],appar:12,documents_januari:[17,7],administr:[0,7],level:[26,7],did:21,list:[21,22,25,26,12,7,5,15,16],upload:[21,11,27,24,26,12,13,5,14,20,7],"try":[5,25,12,22,1],stderr:27,small:[14,13],refer:[18,1],servic:[21,12,1],dir:[17,27],pleas:[21,16],upper:12,smaller:[14,21,13],slower:[17,27,7],ifac:27,ten:12,compens:1,sync:4,sign:12,consequ:1,hors:[0,7],design:[0,21,7,1],pass:[27,4],download:[15,22,3],further:[9,15,16],correspond:12,port:12,rath:27,even:[8,0,11,24,1,12,19,7],what:[5,25,15,26,1],bzip2:[21,20,27],sub:13,descriptor:[27,20],preserv:[5,21],section:[12,1],abl:[0,11,24,1,12,7,16],invok:[26,15],asia:[],anywai:[],access:[21,20,27,1,12,15,13],delet:[9,0,10,25,12,7,3,5,15,13],version:[8,17,0,20,22,11,23,10,24,19,25,2,12,21,3,4,26,6,15,27,13],suspect:19,consecut:12,"new":[8,0,20,23,1,25,26,12,7,5,15,27,13],net:27,ever:1,"public":[],contrast:[0,7],metadata:[9,20,27,3,26,14,15,7],elimin:12,full:[8,17,0,11,23,10,26,21,3,5,6,20,27,7],themselv:1,pacif:[],gener:[9,0,22,1,25,12,7,5,15,13],never:[],privat:[],here:[26,12,18],satisfi:22,slow:13,modif:13,address:13,path:[8,20,22,23,19,2,12,3,15,27],becom:[5,25,14,12,1],modifi:[17,21,7],sinc:[27,1,25,12,5,13],valu:[27,20,13,1],wait:[11,14,27,24,13],dry:25,convert:12,joes_bucket:[],checksum:21,larger:27,host:[],loos:[12,1],amount:[26,14,12,21],throughput:[],shrink:21,action:[26,15,7,3],implement:1,magnitud:[17,7],chanc:13,control:7,configur:[9,27,7],retriev:[14,12,27,20,4],appli:[14,12,1],modul:[8,20,1,23,19,2,3,26,22,15,27],apw:22,expect:[27,12,1],filenam:14,unix:[14,21,13],leav:13,visibl:12,instal:[8,9,0,20,18,22,17,11,23,10,26,3,5,6,15],total:[27,7,13],establish:1,kei:[21,12],from:[8,17,0,20,22,19,23,21,1,25,2,12,3,4,5,14,15,27,7],describ:[12,1],would:[17,1,25,12,5,7],apswvers:22,upgrad:[9,15,22,3],few:[5,12,22],concret:1,call:[17,0,27,10,1,25,26,12,5,6,14,20,7],usr:[8,17,0,11,23,10,26,3,5,6,20],recommend:[5,27,12,13,1],taken:[17,21,20,27,7],suppos:12,type:[],until:[11,27,7,13,24],more:[21,22,1,13,4,26,7],sort:[5,25],desir:26,st_nlink:13,comparison:[],peopl:[],hundr:[],relat:12,benchmark:[5,9,27],deflat:21,notic:[14,12],enhanc:5,warn:[26,10,15,7,1],sqlitelibvers:22,depth:[],sens:14,known:[9,21,13],actual:[15,14,12,22,13],hold:[12,1],unpack:22,cach:[8,9,21,20,23,19,2,13,3,26,15,27,7],must:[17,15,12,7,3],worst:[0,7],none:[8,20,1,27,19,3,15],word:[],restor:[17,9,14,15,7],setup:22,work:[21,22,24,25,5,14,13],uniqu:1,conceptu:21,remain:27,wors:12,obvious:27,can:[0,1,2,3,5,6,7,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],root:[17,0,11,27,10,24,26,6,20,7],fetch:[17,7],overrid:12,prompt:[8,19],tar:14,give:[5,25,14,15],process:[11,27,24,12,4,5,14,20,13],lock:[0,7],sudo:22,share:[8,17,0,11,23,10,26,3,5,6,20],accept:[8,17,0,20,19,11,23,10,24,1,25,2,3,4,26,6,15,27],high:[21,20,27,4],critic:21,minimum:[14,21],want:[11,27,24,25,5,14,16],onlin:[0,12,21,7],acl:21,occur:[8,17,0,11,23,10,1,25,3,4,26,6,20],alwai:[17,27,25,13,5,7],algorithm:[5,9,21,20,27],end:[27,15],manipul:21,thing:[15,3],rather:[25,12,13,5,14,7],anoth:[13,1],ordinari:[17,11,24,7],write:[8,9,21,20,22,17,27,19,12,7,3,5,14,15,13],how:[5,25,14],env:27,instead:[17,11,24,1,12,13,7],simpl:[5,25,7],confid:[],product:[],resourc:[9,15,16],max:[27,20],earlier:[22,13,1],pyliblzma:22,duplic:[17,21,1,12,5,7],badli:[15,3],wrong:[15,13,3],endang:21,mai:[17,0,20,22,27,16,21,24,1,26,12,7,3,5,14,15,13],multipl:[8,15,23,19,2,3,20,27],redund:[5,25,21,12],autom:[5,21],data:[8,17,21,20,19,11,23,27,24,1,2,12,7,3,5,14,15,26,13],grow:[21,27],physic:[5,17,0,15,7],man:[18,13],handl:[17,21,27,25,12,13,5,14,7],"short":[0,12,7],attempt:[8,27,13,1],practic:[14,12],third:14,read:[8,17,21,20,19,23,1,2,12,7,3,14,15,27,13],neitheristhi:1,minim:21,favorit:[],apsw:22,element:27,issu:[17,9,0,22,27,16,10,21,12,7,26,6,13],inform:[9,27,1,25,26,20,7],maintain:27,combin:[14,12,27,1],allow:[17,0,20,27,10,25,26,12,4,5,6,14,15,7],enter:[2,23],exclus:14,pycryptopp:22,order:[17,7,1],talk:12,origin:[],help:[9,22,16,26,13,3,5,15,7],repair:8,over:[17,21,27,12,13,14,20,7],move:[21,15,1],soon:[],topsecret:[],report:[21,22,16,1],affect:[17,27,7,13,1],eventu:12,effici:13,still:[17,21,11,27,24,1,12,7],dynam:21,paramet:1,fix:[0,25,12,13,5,7],inadvert:[17,7],better:[27,22,4],window:12,renumb:[8,19],requir:[8,21,1,27,19,25,26,5,22,20,13],persist:1,mail:[21,15,22,16],main:[10,7],might:[17,0,27,16,10,19,13,26,6,7],split:21,tri:[15,13],them:[17,11,24,1,12,15,7],good:[0,25,13,5,14,7],synopsi:[8,17,0,11,23,10,25,3,4,26,6,20],thei:[17,0,18,21,25,12,5,14,7],python:[27,22,1],promin:13,safe:[17,14,7],fuse4bsd:22,dai:[5,25],initi:[],dat:[5,25],instanc:14,automat:[5,9,27,12,15],therebi:12,verifi:[12,13],interrupt:15,now:[0,22,25,12,5,7],bigger:[],choic:22,term:[5,25,1],document:[8,17,0,11,23,10,3,26,6,20,7],somewher:[8,17,0,11,23,10,3,26,6,20,7],name:[17,23,1,25,2,12,5,14,20,27,7],hardlink:[17,21,7],joesdomain:[],authent:[8,9,20,19,23,1,2,12,3,15,27],achiev:[5,17,21,27,7],mode:[27,20],each:[5,25,27,20,1],debug:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],found:[14,1],beneath:7,updat:[5,21,12,13],side:1,mean:[21,12,13],compil:27,s3ql:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],mkfifo:27,chunk:13,hard:[14,21],idea:[5,25,0,7,13],procedur:[17,7],realli:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,14,15,27,13],ensur:[5,25,14,21],meta:[26,14,7],significantli:[5,22,1],year:[5,25,21,12],s3_copi:[5,9],happen:[0,12,7,1],todo:[],special:[17,7],out:[21,12,13],lzma:[21,20,22,27],ftp:[],shown:12,network:[17,14,27,21,7],space:[17,21,7,13],miss:[25,1],newli:13,rational:0,content:[17,21,27,0,1,3,7],suitabl:[21,22],rel:[12,4],internet:[21,27],print:[8,17,0,20,22,11,23,10,24,19,25,2,3,4,26,6,15,27],current:[5,15,12,25,13],eth0:27,bla:27,correct:[5,25],statist:[6,7,9],foreground:[27,20],shut:[5,11,24,13],after:[17,0,21,1,12,14,15,7],insid:17,advanc:[9,7],migrat:5,documents_janurai:[],million:13,situat:[14,13],differ:[17,21,22,27,1,26,3,5,14,15,7],free:[21,12],standard:[5,25,21,12,27],inod:[8,13,19],reason:[10,27,24,1,25,12,13,5,14,19,7],base:27,theori:[12,13],ask:[22,23,2,12,15,13],org:27,"byte":[],likelihood:12,afterward:14,bash:14,care:[17,21,7,13],her:[0,7],thread:[5,27,20],befor:[17,21,11,27,24,1,12,13,7],guarante:[5,25,12],could:[17,7],refus:[5,25],keep:[0,27,1,25,5,7],recov:[0,7],turn:[5,25,27,13],length:12,fuse:[27,13],place:[27,12],perman:[9,0,27,12,14,7],url:[8,20,19,23,1,2,12,3,15,27],principl:27,confus:13,neglect:1,first:[21,22,27,1,12,14,15,13],oper:[8,17,0,20,11,23,10,1,25,21,3,4,26,6,15,27],softwar:27,rang:[5,25],directli:12,malici:[0,7],carri:21,onc:[0,11,27,21,24,12,13,14,20,7],clariti:[],s3q:[],number:[21,22,27,25,13,4,5,14,20,7],capac:21,restrict:[26,27,20],date:[5,25],instruct:[27,22],alreadi:[17,22,7,13],done:[27,12],least:[22,27,25,12,5,20],llfuse:22,indistinguish:21,open:[11,27,24,13],s3c:12,size:[21,23,2,13,26,14,20,27,7],given:13,"long":[5,25,14,13,1],convent:[8,17,0,11,23,10,3,26,6,20,13],script:[5,14,27,13],unknown:21,interact:3,s3qllock:[9,0,18,10,5,14,7],sometim:15,wrapper:[5,4],parallel:[9,27,4,5,14,20],checkpoint:1,attack:[0,7,13],necessarili:12,demonstr:5,s3qlrm:[9,0,18,10,25,5,7],termin:[11,24,13,1],john:12,"final":7,store:[8,9,21,20,19,23,1,25,2,12,3,5,14,15,27,13],includ:[22,21,12,18,13],servi:13,luckili:13,consol:12,option:[0,2,3,4,5,6,7,8,10,11,13,14,15,17,19,20,22,23,24,25,26,27],especi:[14,21],shelf:[0,7],tool:12,copi:[17,9,21,1,13,4,5,14,15,7],specifi:[8,20,19,23,27,1,25,2,12,3,5,15,26,13],part:[21,27,1,25,4,5],pars:1,mostli:[],consult:[8,23,20,3],exactli:[5,17,25,7],than:[10,27,1,25,13,5,14,7],wide:[27,22],target:[8,17,20,27,19,3,14,15,7],whenev:[14,22,27,1],prevent:[2,0,23,7],remov:[17,9,0,22,27,10,25,26,7,5,6,13],older:15,tree:[17,9,0,10,4,5,21,7],second:[27,1,25,12,5,14,20],structur:[21,15],matter:[26,14,15],optimum:14,num:[27,20],friend:14,histor:1,video:27,minut:[5,25],pre:27,unencrypt:[2,23],sai:[17,7],comput:[5,25,21,27],entail:[],close:[11,24],plaintext:[],explicit:14,ram:27,mind:1,argument:[26,15,3],peculiar:12,"13th":21,packag:[5,22],wai:[0,27,21,1,12,13,14,7],properli:5,expir:27,increment:[],disadvantag:[17,7],need:[17,20,22,27,1,25,12,5,15,7],seem:14,exclud:[0,7],paramiko:[],caus:[12,1],equival:[5,25],irrepar:15,destroi:[0,7],moreov:7,blindli:13,atim:13,accuraci:[5,25],note:[17,9,21,22,11,27,24,25,12,7,4,5,14,15,13],also:[8,17,0,18,11,23,10,24,1,25,26,12,21,3,4,5,6,14,20,27,7],builtin:22,denomin:12,take:[17,21,13,3,26,14,15,7],which:[17,10,22,21,1,25,12,13,5,7],discrep:[],transmit:[],environ:22,zlib:[27,20],uplink:5,singl:[14,20,27],mktemp:27,begin:1,sure:[20,22,27,12,14,15,13],unless:[2,0,23,7],distribut:[5,27,22],plenti:[],normal:[27,20,1],buffer:13,who:[11,27,20,24],compress:[9,21,27,5,20,7],most:[8,17,20,19,27,1,25,12,7,3,5,15,13],beta:21,detect:[21,12,1],rigor:[5,25],plan:[],homepag:[8,17,0,11,23,10,3,26,6,20],"class":[8,17,0,11,23,10,25,26,3,4,5,6,20],relatim:13,simplic:21,renam:21,inconveni:21,ship:[25,27,22,4],filesystem:[27,19,2,14,20,23],authfil:[8,20,1,23,19,2,3,15,27],doc:[8,17,0,11,23,10,26,3,5,6,20],clear:[17,15,7],later:[17,0,22,1,12,13,7],cover:14,drive:[0,7],destruct:[0,7],doe:[21,27,24,1,12,13],declar:21,snapshot:[17,9,21,26,7],runtim:[9,7],determin:[5,27,1],occasion:12,left:13,hmac:21,gracefulli:[5,25],myawssecretaccesskei:[],show:25,carefulli:1,random:[],syntax:[27,19,2,26,15,7],permiss:[5,21,20,27],bucketnam:12,newest:[14,3],find:[0,12,27,7,13],rotat:[8,15,27,19,3,20],redirect:27,absolut:[5,25,12],onli:[17,25,0,20,22,11,27,10,24,21,26,12,7,4,5,6,14,15,13],explicitli:13,ratio:27,just:[8,17,0,20,11,23,10,24,19,25,2,12,3,4,26,6,14,15,27,7],transact:21,fstab:[27,13],activ:[8,17,0,20,19,11,23,10,24,1,25,2,12,3,4,26,6,15,27,7],enough:[14,20,27,13],start:[8,22,27,1,12,4,5,14,19],haven:[],authinfo:[],latenc:[14,21,4],tape:[0,7],rich:12,factor:[5,12],folder:[17,22,7],local:[8,9,0,22,17,11,23,10,12,21,3,26,6,14,20,27],defin:[5,25,27,1],keyr:[],contribut:[5,9],variou:[26,15,3],get:[8,9,0,20,22,19,23,27,1,25,2,16,3,5,15,26,7],googlegroup:16,nasti:[0,7],stop:27,secondari:[],regularli:[17,7],ssl:13,s3rr:[],cannot:[5,25],ssh:[9,14,12],increas:[14,20,27],reconstruct:[5,25,1],restart:[27,13],myawsaccesskeyid:[],quiet:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],reveal:21,enabl:[],dramat:14,"19283712_yourname_s3ql":[],method:[27,22],provid:[21,22,27,1,12,13],bad:14,continu:24,common:[17,0,12,7],contain:[22,27,25,3,5,15],userspac:[],nowher:[],where:[26,15,13,3,1],caches:[26,27,20,7],wiki:[22,16],kernel:22,set:[5,14,20,27],noleaf:13,bucket1:1,bucket3:1,bucket2:1,startup:27,displai:13,see:[8,17,0,20,11,23,10,1,25,26,12,7,3,4,5,6,14,15,27,13],temporarili:27,s3qlcp:[5,9,17,18,7],fail:[12,22,13],led:1,becaus:[17,21,27,1,12,5,7],whatsoev:[0,21,7],best:[14,12,22,27],concern:1,infinit:21,awar:1,statu:[8,9,0,17,11,23,10,25,12,21,3,4,26,6,20,13],said:[],extend:21,correctli:[13,19],hopefulli:13,databas:21,boundari:[5,25],label:[2,23],favor:21,state:[5,25,21,13],between:[5,25,27,20],"import":[5,22,1],neither:[0,7],param:15,across:21,speed:[5,27],attribut:21,amazon:[9,21,1,12,5,13],august:[],manpag:[9,18],weak:[],inconsist:13,southeast:[],job:[5,27],entir:[21,0,10,7],joe:[5,1],expire_backup:[5,9,18,25],solv:14,come:[5,14,21],local0:27,addit:[17,10,27,21,1,3,26,15,7],both:[17,21,22,7,1],protect:[0,21,7],accident:[2,0,23,7,13],last:1,irregular:[5,25],extens:21,someth:[17,7],region:[5,12],anyth:[],alon:1,lazi:[11,24],against:[0,21,7],configpars:1,etc:[17,27,7,13],cachedir:[8,15,23,19,2,3,20,27],exec:27,freeli:27,corrupt:1,com:[8,17,0,22,11,23,10,25,3,4,26,6,14,20,16],pcp:[5,9,14,18,4],load:27,simpli:[0,7],figur:1,inspir:[17,7],buti:[],period:[0,7],insist:14,batch:[8,27,19],written:[21,20,27,1],littl:[27,12,22],shutdown:27,linux:[27,22],averag:12,typic:[17,7],guid:[8,9,18,23,3,20],assum:27,damag:[5,25,15,1],quit:22,worthless:[0,7],strong:[8,17,0,11,23,10,25,3,4,26,6,20],west:[],devic:27,due:[12,13],been:[0,19,11,27,21,24,1,25,12,7,5,14,15,13],mark:[8,19],compon:21,secret:12,much:4,interpret:27,interest:7,subscrib:16,monthli:[17,7],immedi:[10,11,27,24,12,7],strategi:[5,25],legaci:12,infect:[0,7],upstart:[5,27,20],great:[0,7],ani:[8,17,0,22,23,21,1,25,2,12,16,5,7],zero:14,understand:[27,20],togeth:1,input:[8,19],s3qlstat:[6,18,7,13,9],those:12,"case":[17,0,22,21,1,25,5,14,15,7],replic:[5,17,21,7],trojan:[0,7],ident:[17,21,7,1],look:14,gnu:13,solid:21,plain:[2,23],mount:[17,9,0,20,18,11,27,10,24,1,26,12,7,3,5,6,14,15,13],bill:1,sourceforg:[],trick:[9,14],documents_februari:[17,7],weren:16,abov:[5,25,1],error:[8,9,0,20,17,11,23,10,1,25,21,3,4,26,6,19,13],login:[12,1],invoc:[5,25],ahax:4,howev:[17,0,27,21,25,12,13,5,14,7],jibbadup:[],bin:[14,22],argpars:22,have:[17,0,20,22,11,23,16,21,24,1,25,2,12,7,4,5,14,15,27,13],advantag:[5,25,0,7],stdout:27,almost:14,therefor:[5,27,12,13,1],remount:12,worri:13,destin:[17,14,7,4],exit:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],gsutil:[],conf:[5,9],incom:[],revis:[15,3],dedic:[27,13],sever:[21,22,27,1,12,4,5,14,20],tamper:[5,25],unmount:[9,11,27,24,1,12,5,14,19,13],develop:[9,21,12],author:[27,13],perform:[9,21,22,27,1,26,12,3,4,5,14,15,13],media:12,make:[17,0,20,22,27,21,1,25,12,13,5,14,15,7],flushcach:[26,7],header:1,same:[17,27,1,25,12,5,14,15,7],"while":[0,22,27,21,24,12,26,7],dest:17,html:[],unexpectedli:13,nikolau:27,auto:[27,20],pai:12,"__version__":22,infer:[5,25],complet:[17,22,27,1,25,26,12,5,20,7],week:[5,25],geograph:12,archiv:[21,12],hostnam:12,closest:12,lie:17,optim:27,swordfish:1,confidenti:[],upon:13,effect:[17,21,7,1],solut:5,remot:[14,12,21],rais:[27,20],temporari:12,user:[8,9,0,18,22,17,11,23,10,24,19,12,21,3,26,6,14,20,27,7],mani:[5,25,21,1],extern:[0,12,7],encrypt:[21,27,1,2,3,23],tradition:[0,7],recent:[5,25,27,15,13],gss:12,appropri:27,kept:[8,15,27,19,3,20],eleg:21,nevertheless:[5,1],entri:[27,20,13,1],thu:1,irrelev:13,well:[0,20,27,10,1,25,5,15,7],object:[20,12,27],without:[8,17,0,21,19,12,13,14,15,7],exampl:[21,1,25,13,5,14,7],command:[0,1,2,3,4,5,6,7,8,9,10,11,13,15,17,18,19,20,22,23,24,25,26,27],thi:[0,1,2,3,4,5,6,7,8,10,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27],choos:[],gzip:21,credenti:[8,20,1,23,19,2,3,15,27],spend:14,usual:27,compromis:14,identifi:[12,1],execut:[5,15,22,7],less:[13,1],conform:21,when:[8,0,20,19,27,21,1,25,12,7,3,4,5,14,15,13],obtain:[],rest:14,detail:[5,14,12,13],bandwidth:[5,21],touch:[17,7],openstack:21,passphras:[9,15,3,1],roughli:27,runlevel:27,yet:[12,13],web:12,viru:[0,7],detach:[11,24],homedir:[],easi:14,hint:[26,15,3],point:[21,11,27,1,12,20],had:[5,17,25,7],except:1,theoret:14,add:[0,7],other:[17,0,22,27,10,21,12,16,26,6,20,7],nor:[0,7],versa:[17,7],els:15,logger:27,subsequ:[5,25,12],match:12,futur:[17,0,10,13,26,6,7],earli:13,applic:[13,1],transpar:21,webpag:12,big:[14,13],ctime:13,fast:[9,21,27,7],traffic:12,know:[5,17,25,7,13],background:[11,24],amp:14,bit:21,password:[2,23,12,1],recurs:[5,9,10,7],you:[17,0,20,22,19,11,23,16,10,24,1,25,2,12,7,5,14,15,27,13],like:[17,0,27,21,12,13,4,20,7],loss:[12,1],daemon:[27,20],lost:[12,1],success:[],whitespac:[],should:[8,17,0,20,22,19,11,23,10,24,1,7,3,26,6,14,15,27,13],arbitrari:[14,12],manual:[11,22,24,16],resolv:[12,16],noth:[0,7],princip:13,necessari:15,either:[12,13,3,26,15,7],furthermor:[21,1],output:[8,17,0,20,11,23,10,24,19,25,2,3,4,26,6,15,27],"function":15,per:27,page:18,two:[17,21,15,22,7],yyyi:[5,25],imagin:[5,25,0,7],right:14,old:[8,0,20,22,27,19,25,12,3,5,15,7],often:[14,1],deal:[],interv:[5,25,14,20,27],compat:[9,12,13],some:[8,17,0,20,22,11,23,10,24,1,25,26,12,21,3,4,5,6,19,13],umount:[9,18,11,27,24,13],self:22,strongest:[],"export":[27,20,13],flush:[27,7],home:[5,14,12],server:[14,12,13],librari:[22,13],basic:[],rsync:[17,0,13,4,5,14,7],confirm:[10,7],stronger:12,freebsd:22,avoid:[5,25],though:[27,12,1],definit:[5,25],februari:[17,7],protocol:1,backward:[],usernam:1,equal:27,larg:[17,14,7,13],slash:12,backend:[8,9,17,11,23,24,1,12,7,3,26,14,20,27,13],blocksiz:[2,23,20,27],machin:[],core:[5,27],plu:1,previou:[5,15,12],run:[0,20,22,19,27,1,25,26,13,3,5,15,7],power:5,certif:[12,13],reach:[8,15,27,19,3,20],view:18,usag:[5,17,27,25,7],symlink:21,speak:27,step:5,unreason:13,although:[21,10,7,13],januari:[17,7],bi23ll:1,immut:[9,0,10,5,21,14,7],impos:[],stage:[],sshf:[14,12],src:[17,7],about:[9,21,27,13,6,14,7],rare:[],proce:22,memori:27,http:[8,17,0,22,11,23,10,25,12,3,4,26,6,20],storebackup:[17,7],unfortun:[14,12,13],east:[],messag:[8,15,23,19,2,3,20,27],fals:[27,20],commit:[24,13],backup:[17,9,0,27,21,1,25,12,3,5,14,15,7],disabl:[8,15,27,19,3,20],block:[21,11,23,24,1,2,13,26,27,7],ll23bi:1,client:13,real:12,encount:[16,13],xyz:[],within:[7,1],encod:27,terminolog:[9,1],three:[27,12,22],down:[5,11,24,13],ahv:14,authinfo2:[8,15,23,19,2,3,20,27],contrib:[5,14,27],chang:[17,9,0,27,21,12,7,3,26,15,13],insuffici:13,storag:[8,9,0,20,19,17,11,23,21,24,1,2,12,7,3,5,14,15,27,13],your:[8,17,0,18,22,11,23,10,25,26,12,3,5,6,14,20,27,7],durabl:1,manag:[9,12,15],mkf:[8,2,23,18,9],stricli:[8,19],fusermount:[11,24,13],prepar:26,suffici:1,transfer:[5,14,21],support:[17,21,27,12,13,20,7],question:16,s3_backup:[5,9],overwrit:[2,23],avail:[8,0,20,23,25,12,7,3,5,15,27,13],intellig:[5,25,21],reli:[13,1],trigger:[12,7],low:[21,12],lot:14,"var":12,succeed:[8,17,0,11,23,10,25,3,4,26,6,20],individu:[27,20,4],lowest:12,creation:[2,23,9],tracker:[21,22,16],form:[5,25,12,1],offer:[17,12,7],forc:[8,2,23,19],regard:[17,7],"24h":[27,20],sigstop:[27,20],satur:27,measur:5,newer:[12,22],don:[27,20,13],line:[26,21],bug:[21,22,16,13],longer:[21,0,24,25,13,5,15,7],info:[8,15,27,19,3,26,20],commun:1,made:[17,21,0,14,7],cif:27,consist:[12,1],possibl:[0,22,27,21,12,13,14,15,7],"default":[8,20,23,19,25,2,3,4,5,15,27],bucket:[9,23,1,2,12,3,5,15,27,13],maximum:[5,2,23,20,27],tell:[5,25,27],asynchron:21,independ:[21,20,27],below:[12,7],limit:[17,0,27,10,1,26,12,7,5,6,20,13],unnot:12,problem:[8,17,0,16,21,1,25,12,7,5,14,13],similar:27,reliabl:[9,12,1],connect:[14,12,27,21],featur:[17,9,0,21,1,12,7],creat:[17,0,20,23,10,25,2,12,7,5,21,15,27,13],classic:[],certain:[],dure:[15,20,12,27],day_hour:[5,25],stabl:21,s3qlctrl:[26,9,14,18,7],strongli:[5,25],workaround:14,decreas:4,file:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,19,20,21,23,24,25,26,27],mtime:13,request:12,exist:[17,0,23,10,1,25,2,12,5,7],improv:[5,9,14,4],mybucket:14,check:[8,9,22,27,19,12,15,13],probabl:[21,25,5,14,15,7],otherwis:[27,20],again:[0,12,7,13,24],readi:12,rsync_arg:14,umask:27,googl:[8,9,0,22,17,11,23,10,25,12,21,3,4,26,6,20],sequenti:[8,19],tip:[9,14],exception:[],prepend:12,field:[],valid:[12,7],creep:21,rememb:[],test:[21,22],presum:1,thousand:[27,12,13],rid:[0,7],particular:1,variabl:22,intend:[],clean:[8,19],fulli:13,mountpoint:[27,24,12,26,6,14,20,7],"return":[8,17,0,11,23,10,24,25,3,4,26,6,20,13],fsck:[8,9,18,19,27,1,12,15],briefli:[],releas:21,track:[5,25],log:[8,20,19,27,1,12,3,26,15,7],consid:[12,16,1],sql:24,decrypt:1,log_fifo:27,dd_hh:[5,25],pool:[],stai:[27,20],reduc:[5,12],infrequ:1,back:[0,7],faster:[10,12,7],pycrypto:22,vice:[17,7],directori:[0,1,2,3,4,5,7,8,10,11,12,13,14,15,17,19,20,21,22,23,25,27],cycl:[5,25],descript:[8,17,0,11,23,10,25,3,4,26,6,14,20,27],save:[25,14,21,1],rule:14,sftp:[9,12],itself:[12,22,13,1],ignor:[],potenti:12,time:[8,0,20,19,23,21,1,25,2,12,7,3,5,14,15,27,13],profil:[27,20],s3qladm:[9,15,18,3],daili:[]},objtypes:{},titles:["The <strong class=\"program\">s3qllock</strong> command","General Information","File System Creation","The <strong class=\"program\">s3qladm</strong> command","The <strong class=\"program\">pcp</strong> command","Contributed Programs","The <strong class=\"program\">s3qlstat</strong> command","Advanced S3QL Features","The <strong class=\"program\">fsck.s3ql</strong> command","S3QL User&#8217;s Guide","The <strong class=\"program\">s3qlrm</strong> command","The <strong class=\"program\">umount.s3ql</strong> command","Storage Backends","Known Issues","Tips &amp; Tricks","Managing Buckets","Further Resources / Getting Help","The <strong class=\"program\">s3qlcp</strong> command","Manpages","Checking for Errors","The <strong class=\"program\">mount.s3ql</strong> command","About S3QL","Installation","The <strong class=\"program\">mkfs.s3ql</strong> command","Unmounting","The <strong class=\"program\">expire_backups</strong> command","The <strong class=\"program\">s3qlctrl</strong> command","Mounting"],objnames:{},filenames:["man/lock","general","mkfs","man/adm","man/pcp","contrib","man/stat","special","man/fsck","index","man/rm","man/umount","backends","issues","tips","adm","resources","man/cp","man/index","fsck","man/mount","about","installation","man/mkfs","umount","man/expire_backups","man/ctrl","mount"]}) \ No newline at end of file
diff --git a/doc/html/special.html b/doc/html/special.html
index afa9da0..eece38d 100644
--- a/doc/html/special.html
+++ b/doc/html/special.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Advanced S3QL Features &mdash; S3QL v1.4 documentation</title>
+ <title>Advanced S3QL Features &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Unmounting" href="umount.html" />
<link rel="prev" title="Mounting" href="mount.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="mount.html" title="Mounting"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -263,7 +263,7 @@ been flushed.</td>
<li class="right" >
<a href="mount.html" title="Mounting"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/tips.html b/doc/html/tips.html
index dfaeca4..6294e33 100644
--- a/doc/html/tips.html
+++ b/doc/html/tips.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Tips &amp; Tricks &mdash; S3QL v1.4 documentation</title>
+ <title>Tips &amp; Tricks &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Known Issues" href="issues.html" />
<link rel="prev" title="Contributed Programs" href="contrib.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="contrib.html" title="Contributed Programs"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -187,7 +187,7 @@ details.</p>
<li class="right" >
<a href="contrib.html" title="Contributed Programs"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/html/umount.html b/doc/html/umount.html
index b863e42..3312a48 100644
--- a/doc/html/umount.html
+++ b/doc/html/umount.html
@@ -7,13 +7,13 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Unmounting &mdash; S3QL v1.4 documentation</title>
+ <title>Unmounting &mdash; S3QL v1.5 documentation</title>
<link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
- VERSION: '1.4',
+ VERSION: '1.5',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
@@ -23,7 +23,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
- <link rel="top" title="S3QL v1.4 documentation" href="index.html" />
+ <link rel="top" title="S3QL v1.5 documentation" href="index.html" />
<link rel="next" title="Checking for Errors" href="fsck.html" />
<link rel="prev" title="Advanced S3QL Features" href="special.html" />
</head>
@@ -37,7 +37,7 @@
<li class="right" >
<a href="special.html" title="Advanced S3QL Features"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="sphinxsidebar">
@@ -143,7 +143,7 @@ upload data in the background for a while longer.</p>
<li class="right" >
<a href="special.html" title="Advanced S3QL Features"
>previous</a> |</li>
- <li><a href="index.html">S3QL v1.4 documentation</a> &raquo;</li>
+ <li><a href="index.html">S3QL v1.5 documentation</a> &raquo;</li>
</ul>
</div>
<div class="footer">
diff --git a/doc/latex/manual.log b/doc/latex/manual.log
index bb49d8b..9a8d62f 100644
--- a/doc/latex/manual.log
+++ b/doc/latex/manual.log
@@ -1,4 +1,4 @@
-This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=pdflatex 2011.10.1) 6 OCT 2011 11:14
+This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=pdflatex 2011.10.1) 20 OCT 2011 11:32
entering extended mode
%&-line parsing enabled.
**manual.tex
@@ -973,7 +973,7 @@ rw/helvetic/uhvb8a.pfb></usr/share/texmf-texlive/fonts/type1/urw/helvetic/uhvbo
8a.pfb></usr/share/texmf-texlive/fonts/type1/urw/times/utmb8a.pfb></usr/share/t
exmf-texlive/fonts/type1/urw/times/utmr8a.pfb></usr/share/texmf-texlive/fonts/t
ype1/urw/times/utmri8a.pfb>
-Output written on manual.pdf (55 pages, 286943 bytes).
+Output written on manual.pdf (55 pages, 286997 bytes).
PDF statistics:
805 PDF objects out of 1000 (max. 8388607)
214 named destinations out of 1000 (max. 500000)
diff --git a/doc/latex/manual.tex b/doc/latex/manual.tex
index b0569ae..854c582 100644
--- a/doc/latex/manual.tex
+++ b/doc/latex/manual.tex
@@ -12,8 +12,8 @@
\title{S3QL Documentation}
-\date{October 06, 2011}
-\release{1.4}
+\date{October 20, 2011}
+\release{1.5}
\author{Nikolaus Rath}
\newcommand{\sphinxlogo}{}
\renewcommand{\releasename}{Release}
diff --git a/doc/man/fsck.s3ql.1 b/doc/man/fsck.s3ql.1
index 062849c..524b88d 100644
--- a/doc/man/fsck.s3ql.1
+++ b/doc/man/fsck.s3ql.1
@@ -1,4 +1,4 @@
-.TH "FSCK.S3QL" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "FSCK.S3QL" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
fsck.s3ql \- Check an S3QL file system for errors
.
diff --git a/doc/man/mkfs.s3ql.1 b/doc/man/mkfs.s3ql.1
index 84c6d63..9bd5e40 100644
--- a/doc/man/mkfs.s3ql.1
+++ b/doc/man/mkfs.s3ql.1
@@ -1,4 +1,4 @@
-.TH "MKFS.S3QL" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "MKFS.S3QL" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
mkfs.s3ql \- Create an S3QL file system
.
diff --git a/doc/man/mount.s3ql.1 b/doc/man/mount.s3ql.1
index 46fa2a7..c252fc4 100644
--- a/doc/man/mount.s3ql.1
+++ b/doc/man/mount.s3ql.1
@@ -1,4 +1,4 @@
-.TH "MOUNT.S3QL" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "MOUNT.S3QL" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
mount.s3ql \- Mount an S3QL file system
.
diff --git a/doc/man/s3qladm.1 b/doc/man/s3qladm.1
index 4033d8f..eaed4fc 100644
--- a/doc/man/s3qladm.1
+++ b/doc/man/s3qladm.1
@@ -1,4 +1,4 @@
-.TH "S3QLADM" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLADM" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qladm \- Manage S3QL buckets
.
diff --git a/doc/man/s3qlcp.1 b/doc/man/s3qlcp.1
index a500c69..cf2b679 100644
--- a/doc/man/s3qlcp.1
+++ b/doc/man/s3qlcp.1
@@ -1,4 +1,4 @@
-.TH "S3QLCP" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLCP" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qlcp \- Copy-on-write replication on S3QL file systems
.
diff --git a/doc/man/s3qlctrl.1 b/doc/man/s3qlctrl.1
index 806ced3..419fe0b 100644
--- a/doc/man/s3qlctrl.1
+++ b/doc/man/s3qlctrl.1
@@ -1,4 +1,4 @@
-.TH "S3QLCTRL" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLCTRL" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qlctrl \- Control a mounted S3QL file system
.
diff --git a/doc/man/s3qllock.1 b/doc/man/s3qllock.1
index f6bebb0..e76f440 100644
--- a/doc/man/s3qllock.1
+++ b/doc/man/s3qllock.1
@@ -1,4 +1,4 @@
-.TH "S3QLLOCK" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLLOCK" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qllock \- Make trees on an S3QL file system immutable
.
diff --git a/doc/man/s3qlrm.1 b/doc/man/s3qlrm.1
index eb02558..d3ca18c 100644
--- a/doc/man/s3qlrm.1
+++ b/doc/man/s3qlrm.1
@@ -1,4 +1,4 @@
-.TH "S3QLRM" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLRM" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qlrm \- Fast tree removal on S3QL file systems
.
diff --git a/doc/man/s3qlstat.1 b/doc/man/s3qlstat.1
index 5edaf69..ec73909 100644
--- a/doc/man/s3qlstat.1
+++ b/doc/man/s3qlstat.1
@@ -1,4 +1,4 @@
-.TH "S3QLSTAT" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "S3QLSTAT" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
s3qlstat \- Gather S3QL file system statistics
.
diff --git a/doc/man/umount.s3ql.1 b/doc/man/umount.s3ql.1
index 50fab12..555d25f 100644
--- a/doc/man/umount.s3ql.1
+++ b/doc/man/umount.s3ql.1
@@ -1,4 +1,4 @@
-.TH "UMOUNT.S3QL" "1" "October 06, 2011" "1.4" "S3QL"
+.TH "UMOUNT.S3QL" "1" "October 20, 2011" "1.5" "S3QL"
.SH NAME
umount.s3ql \- Unmount an S3QL file system
.
diff --git a/doc/manual.pdf b/doc/manual.pdf
index 38686aa..b2c9e1b 100644
--- a/doc/manual.pdf
+++ b/doc/manual.pdf
Binary files differ
diff --git a/src/s3ql.egg-info/PKG-INFO b/src/s3ql.egg-info/PKG-INFO
index 82ca15c..4344ad8 100644
--- a/src/s3ql.egg-info/PKG-INFO
+++ b/src/s3ql.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: s3ql
-Version: 1.4
+Version: 1.5
Summary: a full-featured file system for online data storage
Home-page: http://code.google.com/p/s3ql/
Author: Nikolaus Rath
diff --git a/src/s3ql/__init__.py b/src/s3ql/__init__.py
index 98f3b9c..dc141cd 100644
--- a/src/s3ql/__init__.py
+++ b/src/s3ql/__init__.py
@@ -12,5 +12,5 @@ __all__ = [ 'backends', 'cli', 'parse_args', 'block_cache', "common", 'daemonize
'database', 'fs', 'fsck', 'ordered_dict',
'VERSION', 'CURRENT_FS_REV' ]
-VERSION = '1.4'
+VERSION = '1.5'
CURRENT_FS_REV = 13
diff --git a/src/s3ql/backends/common.py b/src/s3ql/backends/common.py
index 630f7f9..e7ed5fc 100644
--- a/src/s3ql/backends/common.py
+++ b/src/s3ql/backends/common.py
@@ -67,8 +67,8 @@ def retry(fn):
self.__class__.__name__, fn.__name__, exc)
raise
- log.info('%s.%s(*): trying again after %r exception:',
- self.__class__.__name__, fn.__name__, exc)
+ log.info('Encountered %r exception, retrying call to %s.%s...',
+ exc, self.__class__.__name__, fn.__name__)
time.sleep(interval)
waited += interval
diff --git a/src/s3ql/backends/s3.py b/src/s3ql/backends/s3.py
index 0d0d232..efa1803 100644
--- a/src/s3ql/backends/s3.py
+++ b/src/s3ql/backends/s3.py
@@ -100,7 +100,7 @@ class Bucket(AbstractBucket):
return True
elif (isinstance(exc, IOError) and
- exc.errno in (errno.EPIPE, errno.ECONNRESET)):
+ exc.errno in (errno.EPIPE, errno.ECONNRESET, errno.ETIMEDOUT)):
return True
return False
@@ -144,7 +144,7 @@ class Bucket(AbstractBucket):
log.error('list(): Timeout exceeded, re-raising %r exception', exc)
raise
- log.debug('list(): trying again after %r exception:', exc)
+ log.info('Encountered %r exception, retrying call to s3.Bucket.list()', exc)
time.sleep(interval)
waited += interval
if interval < 20*60:
@@ -192,7 +192,7 @@ class Bucket(AbstractBucket):
elif el.tag == '{%s}Contents' % self.namespace:
marker = el.findtext('{%s}Key' % self.namespace)
- yield marker
+ yield marker[len(self.prefix):]
root.clear()
except GeneratorExit:
diff --git a/src/s3ql/block_cache.py b/src/s3ql/block_cache.py
index 6673f96..86658f2 100644
--- a/src/s3ql/block_cache.py
+++ b/src/s3ql/block_cache.py
@@ -706,6 +706,8 @@ class BlockCache(object):
log.debug('remove(inode=%d, blockno=%d): waiting for transfer of '
'object %d to complete', inode, blockno, obj_id)
self.wait()
+ log.debug('remove(inode=%d, blockno=%d): deleting object %d',
+ inode, blockno, obj_id)
self.db.execute('DELETE FROM objects WHERE id=?', (obj_id,))
with lock_released:
if not self.removal_threads:
diff --git a/src/s3ql/cli/mount.py b/src/s3ql/cli/mount.py
index a9085b5..fac18dc 100644
--- a/src/s3ql/cli/mount.py
+++ b/src/s3ql/cli/mount.py
@@ -131,24 +131,31 @@ def main(args=None):
else:
llfuse.main(options.single)
+ # Re-raise if main loop terminated due to exception in other thread
+ # or during cleanup, but make sure we still unmount file system
+ # (so that Operations' destroy handler gets called)
+ if exc_info:
+ (tmp0, tmp1, tmp2) = exc_info
+ exc_info[:] = []
+ raise tmp0, tmp1, tmp2
+
log.info("FUSE main loop terminated.")
except:
- log.info("Caught exception in main loop, unmounting file system...")
-
- # Tell finally handler that there already is an exception
- if not exc_info:
- exc_info = sys.exc_info()
-
- # We do *not* unmount on exception. Why? E.g. if someone is mirroring the
- # mountpoint, and it suddenly becomes empty, all the mirrored data will be
- # deleted. However, it's crucial to still call llfuse.close, so that
- # Operations.destroy() can flush the inode cache.
- with llfuse.lock:
- llfuse.close(unmount=False)
-
+ # Tell finally handle not to raise any exceptions
+ exc_info[:] = sys.exc_info()
+
+ # We do *not* free the mountpoint on exception. Why? E.g. if someone is
+ # mirroring the mountpoint, and it suddenly becomes empty, all the
+ # mirrored data will be deleted. However, it's crucial to still call
+ # llfuse.close, so that Operations.destroy() can flush the inode cache.
+ try:
+ with llfuse.lock:
+ llfuse.close(unmount=False)
+ except:
+ log.exception("Exception during cleanup:")
raise
-
+
# Terminate threads
finally:
log.debug("Waiting for background threads...")
@@ -174,15 +181,9 @@ def main(args=None):
log.info("Unmounting file system.")
- # Re-raise if main loop terminated due to exception in other thread
- # or during cleanup. but make sure we still unmount file system
- # (so that Operations' destroy handler gets called)
+ # Re-raise if there's been an exception during cleanup
+ # (either in main thread or other thread)
if exc_info:
- try:
- with llfuse.lock:
- llfuse.close()
- except:
- log.exception("Exception during cleanup:")
raise exc_info[0], exc_info[1], exc_info[2]
# At this point, there should be no other threads left
diff --git a/src/s3ql/fs.py b/src/s3ql/fs.py
index 8a7cbf0..9f9139e 100644
--- a/src/s3ql/fs.py
+++ b/src/s3ql/fs.py
@@ -443,6 +443,8 @@ class Operations(llfuse.Operations):
This method releases the global lock.
'''
+
+ log.debug('_remove(%d, %s): start', id_p, name)
timestamp = time.time()
@@ -468,12 +470,15 @@ class Operations(llfuse.Operations):
inode_p.ctime = timestamp
if inode.refcount == 0 and id_ not in self.open_inodes:
+ log.debug('_remove(%d, %s): removing from cache', id_p, name)
self.cache.remove(id_, 0, int(math.ceil(inode.size / self.blocksize)))
# Since the inode is not open, it's not possible that new blocks
# get created at this point and we can safely delete the inode
self.db.execute('DELETE FROM ext_attributes WHERE inode=?', (id_,))
self.db.execute('DELETE FROM symlink_targets WHERE inode=?', (id_,))
del self.inodes[id_]
+
+ log.debug('_remove(%d, %s): start', id_p, name)
def symlink(self, id_p, name, target, ctx):
mode = (stat.S_IFLNK | stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR |
diff --git a/src/s3ql/parse_args.py b/src/s3ql/parse_args.py
index bc18d44..21bdc7a 100644
--- a/src/s3ql/parse_args.py
+++ b/src/s3ql/parse_args.py
@@ -216,14 +216,11 @@ class ArgumentParser(argparse.ArgumentParser):
def storage_url_type(s):
'''Validate and canonicalize storage url'''
-
+ if not re.match(r'^([a-zA-Z0-9]+)://(.+)$', s):
+ raise argparse.ArgumentTypeError('%s is not a valid storage url.' % s)
+
if s.startswith('local://'):
return 'local://%s' % os.path.abspath(s[len('local://'):])
- elif s.startswith('s3://') or s.startswith('s3rr://'):
- return s
- elif re.match(r'^([a-z]+)://([a-zA-Z0-9.-]+)(?::([0-9]+))?(/[a-zA-Z0-9./_-]+)$',
- s):
- return s
- else:
- msg = '%s is not a valid storage url.' % s
- raise argparse.ArgumentTypeError(msg)
+
+ return s
+